反復間隔ベースの暗記システム(2024)
(notes.andymatuschak.org)- 反復間隔ベースの暗記システムは Testing effect と Spacing effect を組み合わせ、数千の事実を効率よく記憶できるようにし、単なる暗記を超えて概念理解にも活用できる
- Piotr Wozniak の Supermemo が最初のコンシューマー向けシステムであり、“spaced repetition” という用語を採用し普及させた
- 実装例は Supermemo、Mnemosyne、Anki のような伝統的ツールから、Mnemonic medium、Execute Program、RemNote、Mochi、Readwise、Chessable MoveTrainer、Revuu のような派生形まで広がっている
- 実際の導入を難しくする要因は、良いプロンプト作成、定期レビューの習慣、レビューと関心ある活動の分離、新しいプロンプト不足による退屈さである
- 効果的な暗記システムは間隔アルゴリズムだけでは完成せず、プロンプト設計と採点方式、感情的な結びつき、適用・統合・創作を促す使い方まで含めて扱う必要がある
記憶を選択可能なものにするシステム
- 反復間隔ベースの暗記システムは Testing effect と Spacing effect を組み合わせ、多くの事実を効率よく暗記できるようにする
- 数千の事実を扱うのに特に効率的であり、一部の利用者はより広い作業にも活用している
- このシステムは記憶を選択可能なものにするが、単なる事実暗記にとどまらない
- 概念理解を発展させるためにも使え、単なる宣言的知識を超えて、つながり、含意、原因、結果といった関係を扱うことができる
Supermemo と用語の普及
- 最初のコンシューマー向け反復間隔ベース暗記システムは、Piotr Wozniak が作った Supermemo である
- Supermemo は “spaced repetition” という用語を採用し、普及させた
- それ以前の文献では、同じ基盤現象の具体的側面を指すさまざまな用語が使われていた
実装ツールと派生例
- 伝統的な実装
- 非伝統的な派生
スケジュールと採点で生じる設計上の論点
- 反復間隔ベースの暗記システムの属性には、最大入力速度、スケジュール最適化、自己採点と機械採点、意図的練習との関係、再試行メカニズムが含まれる
- アルゴリズム上の論点の1つは、単純な反復間隔アルゴリズムが予想された失敗を不適切に処理しうる点である
- 再試行メカニズムとスケジュール最適化は、暗記効率を左右する別個の設計課題として残っている
- システムが参照する中核入力の1つは、ユーザーがプロンプトを正しく思い出せたかどうかである
導入を妨げる現実的な障壁
- 多くの人は 記憶 が深い創造的作業に重要ではないと見なしている
- 良い反復間隔ベース暗記プロンプトを書くのは難しい
- 良いプロンプトには別個の重要な属性がある
- 他人が作ったプロンプトを学ぶ方式は、たいてい効果的ではない
- システム容量の制約要因は、十分に良いプロンプトを書くことにある
- 説明文から良いプロンプトを生成するために機械学習を使う可能性も論じられている
- 最適化すべき重要な要素の1つは、レビューセッションとその内容に対する 感情的な結びつき である
- 暗記システムの練習セッションは、実際に関心のある活動から過度に切り離されてしまうことがある
- 定期的な反復間隔ベース暗記の練習は、導入の負担が大きい習慣である
- システムの利点はすぐには現れない
- ユーザーは自分の記憶力が実際よりも悪いと感じることがある
- 新しいプロンプトが継続的に入ってこないと、レビューセッションは退屈で、現在の関心事から切り離されたものに感じられやすい
- 反復間隔ベース暗記システムを取り巻く支配的な文化は、意味のない目標に執着しがちである
よくある反論と応答の軸
- 反復間隔ベースの暗記システムは単なる事実暗記、つまり学校的な学習にしか関係しないという反論がある
- 人々は学校的な暗記経験のために、記憶の重要性を過小評価している可能性がある
- 既存システムのほとんどは単純な宣言的知識に使われているが、反復間隔ベースの暗記システムは概念理解を発展させるためにも使える
- 暗記システムは機械的な暗記を自動化し、より深い関与に集中する助けになりうる
- 記憶増強は、ある主題を学ぶ初期の不快な段階を素早く通り過ぎるのに役立ちうる
- 概念理解のためのプロンプト作成は難しいという留保が付く
- 他の反論としては、「十分に重要なら自然に覚える」「learn by doing のほうがよい」「外部記憶補助だけで十分だ」「記憶術が SRS を代替する」「SRS で学んだ知識は転移しない」「自分でプロンプトを作ることにこそ本当の価値がある」といった立場が含まれる
暗記を超えた活用
- 反復間隔ベースの暗記システムは、まれな活用例にも適用できる
- ユーザーの注意を特定の方向へプログラムする方法としても使える
- 教理問答(catechism)のような形式として見ることもできる
- 適用、統合、創作を促すプロンプトにも使える
- “spaced repetition system” より “memory system” という表現を好む議論や、さらに “practice systems” という表現の可能性もある
参考資料と事例
- 参考資料
- Branwen, G. (2009). Spaced Repetition for Efficient Learning
- Who invented the name: spaced repetition? - supermemo.guru
- 導入事例としては、幼い子どもと一緒に spaced repetition を使う例が含まれる
1件のコメント
Hacker Newsのコメント
数日分の読み物になっていて重いと感じるなら、間隔反復の基本アイデアを説明しているこの漫画を先に見るとよい: https://ncase.me/remember/
製品を1つ薦めるなら、私が一番気に入っている間隔反復 + ノート作成 + 学習アプリは https://www.remnote.com/
関係者ではなく、強く薦めている立場。Ankiを知っている人なら同じ慣習に従っていると思えばよく、カード管理システムが素晴らしい。カードの追加も、箇条書きに
[カード表面] == [カード裏面]のように書けばよいほど簡単。キーボードアクセシビリティ、ショートカット、ナビゲーションなどの使い勝手がよくできていて、穴埋め(cloze deletion)、画像の一部隠し(image occlusion)、PDFや画像などのアセット管理、現時点では最高のSRSスケジューリングアルゴリズムであるFSRSにも対応している一般的なコード生成ツールを除けば、製品内に組み込まれた任意のAI統合としては最もよかった。スペイン語を学びながら
el vaquero ==< [tab]のように書くと、翻訳が自動生成されて正方向/逆方向のカードが作られる。数学を学ぶときはLaTeX数式の一部を穴埋めにでき、AIがかなり頻繁に正確なLaTeX数式を作ってくれるので、少し修正するだけでよい。こうしたおまけのおかげで、スペイン語のチュータリングや数学の授業中でも、フラッシュカードベースのリアルタイムなノート作成が可能になるAnkiより低レベル設定の自由度は低く、拡張システムも小さいが、その代わり「すぐ動く」側に近い。Ankiをいじり続けるのに疲れたなら、全体として素晴らしい。開発速度も速く、リリースノート動画もよく、細かなアップデートがほぼ毎週出る。海外旅行中にインターネットが弱いとき、いくつかバグに遭遇したが、全体としては非常に満足している
MochiはmacOSとiOSのネイティブアプリが素晴らしく、カードがMarkdown形式なので、カスタムのシステムプロンプトでLLMを使って生成できる。今日APIもあることを知ったので、MCPサーバー経由でLLMに新しいカードを直接押し込ませてみようと思っている
RemNoteはブロック/行とやり取りするUIがモバイルとWebのどちらでも無骨で複雑だった。カードを表示する表UIもかなり制限されている可能性がある。
<==>を付けてブロックをカードに変えるアイデアは巧妙だったが、「AI」の活用はかなり過大評価されていると思う間隔反復システムを何度も試してきたが、いつも気づく問題は、覚える価値のあるものがあまりないという点だった。本当に重要なことは努力しなくても覚えているし、それ以外は毎日カードを復習していると、時間がたつにつれて意味のない雑用のように感じられる
Ankiは長い復習間隔(1日、1週間、1か月、その後は自動)に設定しておき、復習はたいてい週に1回ほど行う。その過程でノートがランダムな順番で現れたり、最近やっていたことと復習ノートの間のつながりを見つけたりして、新しいアイデアがよく生まれる
実際にはこうしたもののかなりの部分は記録せずに流しており、平均すると1日に新しいノート1つ程度だが、まとまって発生することが多い
これは学習のごく小さな部分だが、残りの部分を大きく加速する。テキストを読むときに調べたり深く考えたりしなくても理解でき、複雑な問題解決をするときには知識がすぐ使える状態になる
最初の浅い学習段階で行うか、その前に済ませておき、一度覚えた後は論文を読む、教える、複雑な問題を解くといった、より高度な文脈で使えばよい。知識は互いにつながっていき、間隔反復はその知識ネットワークの単純な部分を速く安価に構築する方法だ
これを見て、職場でISO/IEC標準の重要な部分をもっとよく覚えられるだろうかと考えたが、それをフラッシュカードにどう対応づければよいのかはよく見えない
この記事 https://andymatuschak.org/books/ に触発されて、ePubにQ&AとSRSを入れる https://readboost.io/ を作った。まだバグがあるかもしれないが、個人的にはかなり役に立っている
同じ著者の How to write good prompts を強く推薦する。この記事を見て、間隔反復をきちんと理解し始めた
導入の壁の1つがサイト著者のリストから抜けているが、少なくとも私にとっては重要だ。学んでいるテーマのカードを書くには、私は世界で最も資格のない人間の1人だ。誤った情報を効果的かつ効率的に覚えさせるカードを作ってしまう可能性が高く、そんなリスクは取りたくない
読んだ内容についてのノートを保存するのにSRSの変種を使い、一般的なSRS用途にも別途使っている。
Psycho-Cybernetics、7 Habits、Iron Johnのような本から作ったノートを塊に分け、1日に3〜4個ずつ復習する読んでいて特に目立つ部分は「日次復習」に移し、残りのノートは数日・数週間・数か月後に回す。ここ15年ほどこれを続けていて、かなりうまくいっている
Androidで使える別の製品推薦として https://normata.com/flip/ がある
実際の語学学校でドイツ語を学びながら補助ツールとして使っている。新しいStudy Setを最初から作り、毎回の授業ごとに覚えるべき新しい単語を追加している。今のところ気に入っている
Androidでおすすめできる良い間隔反復アプリはあるだろうか? 間隔反復だけをするアプリだとうれしい
ピアノコードのボイシングを覚えるための既成カード、またはできれば一緒に追って練習できるトラックがある良いサイトを見つけた人はいるだろうか?