#developer#ebbinghaus#forgetting-curve#spaced-repetition#khoa-học-học-tập

Não Bạn Có Garbage Collector — Và Nó Đang Xóa Từ Vựng Của Bạn Ngay Lúc Này

Quên từ vựng không phải vấn đề bộ nhớ — đó là vấn đề lập lịch. Đường cong quên lãng Ebbinghaus giải thích cho developer bằng code analogy, garbage collector model và SM-2 interval calculation thực tế.

Daniel📅 🔄 Cập nhật lần cuối: 13 min read
Não Bạn Có Garbage Collector — Và Nó Đang Xóa Từ Vựng Của Bạn Ngay Lúc Này

Lý Do Thực Sự Bạn Cứ Quên Từ Vựng (Không Phải Thứ Bạn Đang Nghĩ)

Thứ Hai tuần trước, bạn học 30 từ. Ôn lại thứ Ba. Cảm thấy ổn.

Thứ Sáu — còn lại 8 từ. Có thể ít hơn.

Đây là sự thật ngược đời thay đổi mọi thứ: bạn không có vấn đề về bộ nhớ. Bạn có một scheduling bug.

Từ vựng không biến mất vì não bạn yếu. Nó biến mất vì não bạn đang làm đúng thứ nó được thiết kế để làm — chạy garbage collector trên thông tin mà nó chưa có lý do để giữ lại.

Hermann Ebbinghaus đã tìm ra điều này năm 1885. Phát hiện của ông đã được tái tạo trong hàng trăm nghiên cứu kể từ đó. Và nó giải thích chính xác tại sao mọi phương pháp học từ vựng bạn đã thử đều thất bại — và cách fix thực sự trông như thế nào.

Đây là đường cong quên lãng Ebbinghaus, được giải thích theo cách developer thực sự suy nghĩ.

Đường cong quên lãng Ebbinghaus là gì? Đường cong quên lãng Ebbinghaus mô tả tốc độ não bộ xóa thông tin theo hàm mũ sau khi học. Phat hiện bởi Hermann Ebbinghaus năm 1885 và được tái tạo trong hàng trăm nghiên cứu: trong 24 giờ đầu, não xóa 67% những gì bạn vừa học. Giải pháp: lần ôn tiếp theo phải được lên lịch đúng trước ngưỡng quên — cụ thể qua thuật toán SM-2. (Cập nhật: Tháng 7, 2026)

Forgetting Curve Thực Sự Nói Gì

Năm 1885, Hermann Ebbinghaus tự tra tấn bản thân qua nhiều năm bằng cách ghi nhớ và kiểm tra hàng nghìn chuỗi âm tiết vô nghĩa. Ông vừa là nhà nghiên cứu, vừa là đối tượng thí nghiệm. Phát hiện của ông — sau này được đặt tên là Ebbinghaus Forgetting Curve — vẫn là một trong những kết quả được tái tạo nhiều nhất trong toàn bộ khoa học nhận thức:

Thời gian sau khi họcCòn nhớ được (không ôn tập)
20 phút~58%
1 giờ~44%
24 giờ~33%
1 tuần~25%
1 tháng~21%

Trong 24 giờ, hai phần ba những gì bạn học đã biến mất. Trong một tuần, ba phần tư.

Đây không phải lỗi thiết kế. Não bạn tiêu thụ khoảng 20% năng lượng cơ thể trong khi chỉ chiếm 2% trọng lượng. Garbage collection tích cực là feature, không phải bug.

Phát hiện thứ hai của Ebbinghaus mới là điều thay đổi tất cả: mỗi lần bạn recall thành công một ký ức trước khi nó mất hoàn toàn, forgetting curve reset — nhưng ở độ dốc nông hơn. Bộ nhớ dần trở nên đề kháng phân rã với mỗi lần retrieval thành công.

Tức là: không phải học nhiều hơn mới nhớ được. Mà là lên lịch ôn đúng thời điểm.


Code Analogy: Bộ Nhớ Như Distributed Cache Với Garbage Collector

Hãy nghĩ về long-term memory của bạn như một distributed cache với aggressive garbage collector chạy theo lịch bạn không thể quan sát trực tiếp.

interface MemoryEntry {
  item: string;
  ttl: number;        // Time To Live — ngày trước khi GC prune
  strength: number;   // Kháng cự với garbage collection
  lastReviewed: Date;
}

function onSuccessfulRecall(entry: MemoryEntry): void {
  // Mỗi recall reset TTL và tăng resistance to pruning
  entry.ttl = entry.ttl * entry.strength;
  entry.strength = entry.strength * 1.3;  // Tương đương ease factor SM-2
  entry.lastReviewed = new Date();
}

function onFailedRecall(entry: MemoryEntry): void {
  // Recall thất bại: về TTL 1 ngày, strength floor tại 1.3
  entry.ttl = 1;
  entry.strength = Math.max(entry.strength * 0.75, 1.3);
}

Không có reinforcement, GC chạy và xóa entry. Mỗi lần bạn recall thành công trước khi GC fires, bạn extend TTL và tăng strength — interval review tiếp theo dài hơn.

Đây là core mechanic của spaced repetition: lên lịch review vào moment cuối cùng có thể trước khi GC fires.

Không phải ngay sau khi học (quá sớm — recall dễ dàng và hầu như không tăng cường bộ nhớ). Không phải sau khi đã quên (quá muộn — GC đã chạy). Chính xác ở điểm inflection.


Tại Sao Hầu Hết Phương Pháp Học Là Scheduling Bug

Đây là bug trong hầu hết cách học từ vựng, được viết như code:

// ❌ Điều hầu hết app và thói quen học làm
function scheduleNextReview(word, daysSinceStudied) {
  return "tomorrow"; // Fixed interval, bỏ qua memory state hoàn toàn
}

// ❌ Điều cramming (nhồi nhét) làm
function crammingSchedule(wordList) {
  // Ôn tất cả trong một session bất kể recall cá nhân
  return wordList.map(word => reviewNow(word));
  // Kết quả: retention tốt ngắn hạn, gần như 0 sau 1 tuần
}

Bug: fixed-interval review đối xử với tất cả từ vựng như nhau, bất kể bạn biết mỗi từ tốt đến đâu. Bạn ôn những từ đã master quá thường xuyên (lãng phí thời gian) và những từ cứ quên lại không đủ thường xuyên (chúng biến mất).

// ✅ Điều spaced repetition làm
function scheduleNextReview(word, recallPerformance, currentEaseFactor) {
  if (recallPerformance < 0.6) {
    return 1; // Recall thất bại: ôn ngay ngày mai
  }

  // Recall thành công: interval tăng trưởng exponential theo ease factor
  const nextInterval = Math.round(word.lastInterval * currentEaseFactor);
  return nextInterval;
}

// Từ nhất quán được đánh giá "Good" với ease factor mặc định 2.5:
// Ngày 1 → Ngày 2 → Ngày 7 → Ngày 18 → Ngày 45 → Ngày 112 → Ngày 280...

// Từ nhất quán bị fail (ease factor giảm xuống floor 1.3):
// Ngày 1 → Ngày 1 → Ngày 1 → Ngày 1... (hàng ngày cho đến khi recall được đúng)

Spaced repetition là patch cho scheduling bug. Lịch ôn cá nhân hóa, theo từng từ, dựa trên recall performance thực tế — không phải lịch cố định.


Thuật Toán SM-2: Scheduler Triển Khai Giải Pháp

Spaced repetition hiện đại sử dụng SM-2 (SuperMemo 2), được phát triển bởi Piotr Woźniak năm 1987. Thuật toán này là nền tảng của Anki, SuperMemo, và Wordrop.

Mỗi từ trong vocabulary list của bạn có hai giá trị:

Thuộc tínhÝ nghĩaGiá trị khởi đầu
Interval (I)Ngày đến lần review tiếp theo1 ngày
Ease Factor (EF)Interval tăng nhanh như thế nào2.5

Sau mỗi review, bạn đánh giá recall:

Đánh giáÝ nghĩaInterval mớiEF thay đổi
Again (0)Quên hoàn toànReset về 1 ngày−0.20 (floor: 1.3)
Hard (1)Recall khó khăn×1.2−0.15
Good (3)Recall đúng×EFKhông đổi
Easy (5)Recall ngay lập tức×EF+0.10

Từ nhất quán đánh giá "Good" với EF = 2.5:

Review 1: Ngày 1
Review 2: Ngày 3   (interval × 1)
Review 3: Ngày 8   (3 × 2.5 ≈ 7.5)
Review 4: Ngày 21  (8 × 2.5)
Review 5: Ngày 53  (21 × 2.5)
Review 6: Ngày 132 (53 × 2.5)
Review 7: Ngày 330 (132 × 2.5) ← bộ nhớ gần như vĩnh cửu

Từ nhất quán bị fail (EF giảm xuống floor 1.3):

Review 1: Ngày 1 → Again → Ngày 1
Review 2: Ngày 1 → Again → Ngày 1
...  ← ở lại hàng ngày cho đến khi recall được chính xác

Design insight quan trọng: SM-2 không để bạn "tốt nghiệp" một từ bạn chưa thực sự học. Nó trung thực về per-word recall theo cách không có fixed-interval system nào có thể.


Phần Ngược Đời: Vật Lộn Để Nhớ Chính Là Cơ Chế

Đây là điều làm nhiều developer ngạc nhiên khi lần đầu tiếp cận spaced repetition:

Recall càng khó, bộ nhớ tạo ra càng mạnh.

Các nhà khoa học nhận thức gọi đây là desirable difficulty effect — hiệu ứng "độ khó mong muốn" (Bjork, 1994). Khi recall dễ dàng — bạn vừa ôn từ này hôm qua — não hầu như không tăng cường memory trace vì không có gì khó khăn trong quá trình đó.

Khi recall tốn công — bạn không thấy từ này trong ba tuần và phải thực sự tìm kiếm — sự vật lộn đó tốn kém, và bộ nhớ tăng cường đáng kể.

# Model đơn giản hóa về memory strengthening từ retrieval effort
def memory_strengthening(recall_effort: float) -> float:
    """
    recall_effort: 0.0 (effortless) đến 1.0 (maximum struggle)
    returns: memory_strength_gained (phi tuyến — struggle hiệu quả không cân xứng)
    """
    return 0.3 + (0.7 * recall_effort ** 0.5)

# Recall dễ — ôn từ hôm qua
easy = memory_strengthening(0.1)   # → 0.52  (tăng cường tối thiểu)

# Recall tốn công — không thấy từ 3 tuần
hard = memory_strengthening(0.8)   # → 0.93  (tăng cường gần tối đa)

Hàm ý thực tế: khi một từ cảm thấy khó để nhớ lại, đó không phải thất bại — đó là cơ chế đang hoạt động. Sự vật lộn chính là thứ xây dựng bộ nhớ bền vững. Bỏ qua từ khó hoặc đánh giá chúng "Easy" để cảm thấy productive sẽ phá vỡ toàn bộ hệ thống.


Tại Sao Điều Này Đặc Biệt Quan Trọng Với Từ Vựng Kỹ Thuật

Developer học tiếng Anh hoặc tiếng Nhật cho công việc đối mặt với một phiên bản đặc biệt của vấn đề này.

Từ vựng kỹ thuật — idempotent, throughput, deprecate, regression, graceful degradation — có xu hướng xuất hiện theo cụm: trong tuần review code, trong API docs bạn đang đọc, trong sprint meeting. Bạn gặp một từ liên tục trong một tuần, rồi nó biến mất khỏi context trong một tháng.

Không có review được lập lịch đúng theo forgetting curve, từ vựng kỹ thuật đó decay theo pattern y hệt mọi thứ khác:

Đọc "idempotent" trong docs → hiểu → 
không thấy 3 tuần → 
gặp lại trong PR review → blank → 
tra lại → cảm thấy chán nản

Vòng lặp này không liên quan đến thông minh. Nó liên quan đến việc thiếu một review được lập lịch trước khi GC fired.

Fix: đối xử với từ vựng kỹ thuật giống như bạn đối xử với code dependencies. Bạn không chờ đến khi library bị break mới check — bạn maintain nó chủ động. Logic tương tự áp dụng cho vocabulary.


Lịch Ôn Tối Ưu (Dựa Trên Forgetting Curve)

Nếu bạn thiết kế lịch ôn thủ công — không dùng algorithm — đây là điều nghiên cứu nói nó nên trông như thế nào cho từ học từ đầu:

Lần ônThời điểmRetention dự kiến tại thời điểm ônGhi chú
Ôn 1Ngày 1~58%Cửa sổ quan trọng — không bỏ qua
Ôn 2Ngày 3–4~40%Recall tốn công → tăng cường mạnh
Ôn 3Ngày 10–14~35%Bắt đầu cảm thấy tự nhiên hơn
Ôn 4Ngày 30–35~30%Tiến gần long-term stability
Ôn 5Ngày 90+~25%Gần như vĩnh cửu tại điểm này

Chú ý: mỗi interval dài hơn khi ease factor tích lũy. Sau 5–7 lần review thành công trong 3–6 tháng, từ đó persist một cách đáng tin cậy với chỉ cần củng cố thỉnh thoảng.

Đây là hiệu ứng compound. Giống như lãi suất kép — hành động nhỏ, nhất quán vào đúng thời điểm tạo ra kết quả tốt hơn theo cấp số nhân so với nỗ lực lớn, không đều đặn.


Nguyên Tắc Kỹ Thuật: Chạy Review Trước Khi GC Fires

Một câu tóm tắt tất cả những điều trên:

Ôn ngay trước ngưỡng quên lãng — không phải ngay sau khi học, không phải lâu sau khi đã quên, mà chính xác tại điểm của desirable difficulty tối đa.

Hệ thống spaced repetition được tune tốt duy trì 85–95% vocabulary retention chỉ với 10–20 phút review hàng ngày. Phương pháp học truyền thống với 10× thời gian đó tạo ra 20–40% retention.

Sự khác biệt không phải nỗ lực. Là lập lịch.

Não bạn có garbage collector. Forgetting curve mô tả lịch của nó. Spaced repetition là caching strategy chạy review trước khi GC fires — để từ vựng ở trong bộ nhớ thay vì bị pruned.

Để hiểu cách tích hợp spaced repetition vào workflow hàng ngày mà không cần thêm thời gian học riêng, xem: Cách developer học 1.000 từ mà không cần một buổi học nào →

Xem spaced repetition trong thực tế với Wordrop →


Câu Hỏi Thường Gặp

Forgetting Curve Ebbinghaus vẫn được coi là hợp lệ trong khoa học nhận thức hiện đại không?

Có. Pattern phân rã exponential đã được tái tạo trong hàng trăm nghiên cứu trên các loại tài liệu, ngôn ngữ, quần thể và thang thời gian khác nhau kể từ năm 1885. Tỷ lệ retention cụ thể thay đổi theo độ khó tài liệu và sự khác biệt cá nhân, nhưng hình dạng phân rã exponential và memory-strengthening effect của timed retrieval là một trong những phát hiện mạnh nhất trong tâm lý học nhận thức.

Tại sao não không giữ lại mọi thứ nó tiếp xúc?

Tiết kiệm năng lượng. Não tiêu thụ khoảng 20% năng lượng cơ thể trong khi chỉ chiếm 2% trọng lượng. Duy trì tất cả thông tin được encode sẽ không bền vững về mặt trao đổi chất. Garbage collection — quên lãng — là tối ưu hóa chủ động, không phải lỗi thiết kế.

Nếu tôi đã biết về forgetting curve, tại sao tôi vẫn quên từ?

Vì biết về forgetting curve không tự động tạo ra lịch review. Curve cho bạn biết điều gì xảy ra. Thuật toán spaced repetition cho bạn biết khi nào cần ôn. Không có automated scheduling, bạn vẫn phụ thuộc vào willpower để ôn đúng khoảng thời gian — điều này luôn thất bại dưới áp lực công việc thực tế.

SM-2 có phù hợp với việc học từ vựng tiếng Nhật không, hay chỉ tiếng Anh?

SM-2 là language-agnostic — nó schedule review dựa trên recall performance, bất kể ngôn ngữ nào. Tiếng Nhật thực ra là một trong những use case phổ biến nhất cho SRS vì memory load cao (kanji, vocabulary, reading) và forgetting curve đặc biệt dốc với những người không sống trong môi trường tiếng Nhật. Wordrop hỗ trợ cả tiếng Anh lẫn tiếng Nhật.

Tôi nên ôn bao nhiêu từ mỗi ngày để không quá tải?

5–10 từ mới mỗi ngày là sustainable cho hầu hết người học. Mức này tạo ra daily review queue khoảng 15–25 items tổng cộng (mới + scheduled reviews), mất 10–20 phút rải trong ngày. Thêm nhiều từ hơn bạn có thể ôn thực sự tạo ra backlog — và backlog đang tích lũy giết động lực. Nếu queue cảm thấy quá lớn, tạm dừng thêm từ mới và clear backlog trước.

Written by

Daniel

Product Manager

tannguyen.info

As a product manager, I build tools that make language learning more fun and effective.

RELATED TRANSMISSIONS

Lặp Lại Ngắt Quãng (Spaced Repetition) Là Gì?

Lặp lại ngắt quãng là một kỹ thuật học tập lên lịch ôn tập theo các khoảng thời gian tăng dần nhằm tối đa hóa khả năng ghi nhớ dài hạn. Hướng dẫn toàn tập này giải thích về cơ chế hoạt động, cơ sở khoa học đằng sau và cách áp dụng nó để học từ vựng nhanh hơn.

Khoa Học Lưu Giữ Từ Vựng: Não Bạn Thực Sự Học Từ Như Thế Nào?

Tại sao bạn quên từ vựng dù đã học kỹ? Câu trả lời nằm ở cơ chế củng cố trí nhớ thực sự. Bài viết này giải thích đường cong quên lãng Ebbinghaus, lặp lại ngắt quãng, hiệu ứng kiểm tra và thuật toán SM-2 — khoa học đằng sau việc giữ từ vựng lâu dài.

Tại Sao Lặp Lại Ngắt Quãng Là Bí Quyết Học Ngôn Ngữ Tuyệt Vời Nhất

Khám phá cách thuật toán lặp lại ngắt quãng SM-2 trong Wordrop giúp não bộ của bạn khắc sâu từ vựng vĩnh viễn — được chứng minh bởi khoa học nhận thức.

Tại Sao Developer Luôn Bỏ App Học Tiếng Anh Sau 3 Tuần (Không Phải Lỗi Của Bạn)

Hầu hết developer bỏ Duolingo sau 17 ngày. Không phải vì lười — vì app được thiết kế cho người khác. Đây là 3 điểm không khớp thực sự giữa tâm lý developer và cách app ngôn ngữ hoạt động, cùng phương pháp thực sự phù hợp.

Tôi Đã Học Từ Vựng Tiếng Anh 3 Tháng Mà Không Cần Mở Một App Nào

Câu chuyện thực tế của một developer: học hơn 500 từ tiếng Anh kỹ thuật trong 3 tháng — trong khi chờ CI build, giờ nghỉ trưa và lúc idle — mà không cần cố tình học.

[ APPLY WHAT YOU JUST LEARNED ]

START BUILDING VOCABULARY TODAY

DOWNLOAD WORDROP FREE →