
フラッシュカードアプリを使っているほとんどの人は、あるカードを「明日見せる」か「来月見せる」かをアルゴリズムが決めるとき、その裏側で何が起きているのかを知りません。長年にわたり、その主流の答えは SM-2 でした。1980 年代に開発されたヒューリスティックなアルゴリズムで、数百万人の学習者をそれなりにうまく支えてきました。FSRS — the Free Spaced Repetition Scheduler — はより新しいアプローチであり、根本的に異なる道を進みます。固定的なルールを使う代わりに、あなたの記憶が実際にどう機能するかを数学的にモデル化するのです。このモデルを理解すれば、なぜ FSRS のスケジューリングがより正確に感じられ、同じ定着レベルに対してより少ない復習で済む傾向があるのかが分かります。FSRS はオープンソースで活発に開発されています。GitHub 上の FSRS アルゴリズムを見てみてください。間隔反復に関するあらゆるトピックについては、間隔反復の記事コレクションをご覧ください。
FSRS は、あなたが学習している知識の一つひとつを、3つの量を使って記述します。これらが合わさって、研究者が DSR モデルと呼ぶものを形成します。
想起可能性とは、まさに今この瞬間に、ある項目を正しく思い出せる確率のことです。復習直後には 1.0(確実)から始まり、忘却曲線に従って時間とともに減衰していきます。アルゴリズムがあるカードを見せるべきときだと判断するのは、あなたの想起可能性が目標レベル — 通常は 0.90 前後、つまり想起の確率がおよそ 90 % — まで下がったときです。目標は、忘れる直前に復習することであり、十分に早すぎても遅すぎてもいけません。
安定度は、あなたの想起可能性がどれだけゆっくり減衰するかを表します。安定度の高い記憶はゆっくり薄れ、安定度の低い記憶はすばやく薄れます。復習に成功するたびに、その項目の安定度は増加し、これが復習間隔が時間とともに伸びていく理由です。適切なタイミングで5回復習した項目は、1日のうちに5回復習した項目よりもはるかに高い安定度を持ちます — アルゴリズムはこの違いを正確に捉えます。
安定度は、「何かをよく分かっている」という日常的な感覚に最も直接的に対応する量です。安定度が高いということは、たとえ復習を飛ばしても、数週間後でも記憶がほぼ無傷で残ることを意味します。安定度が低いと、1回の復習を逃しただけで想起の確率が大幅に下がることがあります。
難易度とは、特定の項目があなたにとって本質的にどれだけ覚えにくいかの推定値です。一部の事実は他のものよりも単に覚えにくく、それは人によって異なります。項目の難易度は、復習成功後に安定度がどれだけ増加するかに影響します。やさしい項目は1回の復習あたりより多くの安定度を得て、難しい項目はより少なくしか得ません。難易度は固定ではありません — 時間をかけてカードを評価するにつれて更新されるため、最初は難しく見えた項目も、慣れが進むにつれて徐々に再分類されていきます。
ある項目の D、S、R の現在の値が分かれば、FSRS は将来の任意の時間間隔にわたって想起可能性がどう変化するかを予測できます。これを使って、次の正確な問いに答えます。今から何日後に想起可能性が目標のしきい値まで下がるか?
その日が次の予定復習となります。それ以上でもそれ以下でもなく — 固定の倍率もなく、集団の平均もなく、ただこの特定の項目とこの特定の学習者についてモデルから導かれた予測があるだけです。
復習を終えて評価 — Again、Hard、Good、Easy — を与えると、FSRS はあなたの反応が明らかにしたものに基づいて、その項目の D と S の値を更新します。想起の失敗(Again)は安定度をリセットし、難易度をわずかに上げます。やさしく自信を持った想起(Easy)は、遅くて努力を要する想起(Hard や Good)よりも大きな安定度の増加をもたらします。次の間隔は、更新されたパラメータから新たに計算されます。
FSRS の最も重要な特徴の一つは、その基盤となるパラメータをあなたの復習履歴に合わせて較正できることです。モデルには、さまざまな状況で安定度がどう進化するかを制御する一連の重みが含まれています。これらの重みには大規模な研究データから導かれたデフォルト値がありますが、あなたの過去の復習の実際のパターンに合わせてフィッティングすることもできます。
つまり FSRS は、あなたが集団平均よりも早く忘れる傾向があることや、Hard と評価された想起が実はあなたにとってかなり安定していることを学習できるのです。その結果生まれるスケジュールは、どんな固定ルールのシステムにも達成できないほど深いレベルでパーソナライズされます。
これは、単に易しさ係数を下げることとは概念的に異なります。古いアルゴリズムにおける易しさ係数は、間隔に乗算的に適用されるカードごとの調整です。FSRS はあなたの忘却曲線の形をデータから学習し、その形を使ってすべての間隔を第一原理から再導出します。
あなたの評価は、FSRS が記憶の推定値を更新するために使う主要なシグナルです。それを正しく行うことが重要です。
重要な洞察は、思い出せたかどうかだけでなく、どのように思い出したかが重要だということです。努力して引き出された記憶は、即座に引き出された記憶よりも安定度が低く、FSRS はその違いをモデル化します。したがって正直に評価することは、良い習慣であるだけでなく — モデルを正確に保つデータパイプラインそのものなのです。
FSRS は、復習のしかただけでなく、教材をどう消化し関わるかと緊密に統合されたときに最も輝きます。復習スケジューリングの質は、スケジュールされるフラッシュカードの質に等しくしかなり得ません。最初の読解段階でのアクティブリコール — 確認する前に立ち止まって答えを生成すること — は、よりよく符号化された初期記憶を生み出し、FSRS により強固な出発点を与えます。
教材横断的な学習においては、アルゴリズムは各カードを、それがどの出典から来たかに関わらず独立して扱います。これにより、語学学習 PDF の語彙、録画講義の重要概念、教科書の公式を、すべて1つのセッションで復習することが可能になり、各項目は所属するカテゴリではなく、それ自身の安定度と難易度に従ってスケジュールされます。
FSRS は「このトピックはどれだけ難しいか?」とは問いません — 「この特定の記憶はこの特定の学習者の中で、今、どれだけ安定しているか?」と問います。カテゴリから個々の記憶痕跡へのこの転換こそが、モデルベースのスケジューリングをヒューリスティックなスケジューリングから分かつものです。
このモデルの限界をはっきりさせておく価値があります。FSRS は記憶固定化の神経学的な詳細をシミュレートしません。ある日のパフォーマンスに、あなたの疲労度や学習環境が影響するかどうかは分かりません。定着を保証もしません — 確率のしきい値を目標とするので、ある程度の忘却は予期され、許容されます。
モデルはまた、あなたの評価と同じだけの精度しか持ちません。実際には努力を要したカードを一貫して Easy と評価すれば — おそらく今後の復習回数を減らすために — アルゴリズムは長すぎる間隔を生み出し、あなたの実際の定着率は目標を下回ります。忘却曲線はあなたの好みを気にしません。正直な入力にしか応答しないのです。
モデルベースのアプローチの実用的な見返りは、同じ定着目標に対して総復習回数が少なくなることです。間隔が、保守的なヒューリスティックではなく、あなたがいつ忘れるかの正確な予測から導かれるため、アルゴリズムはスケジュールを不必要に水増ししません。あなたにとって本当に安定している項目は長い間隔を得ます。本当に脆い項目は短い間隔を得ます。何か月もの学習にわたる大規模なデッキ全体での正味の効果は相当なものになり得ます。同じ定着レベルが、はるかに少ない復習時間で達成されるのです。
大量の教材 — 言語、専門分野、学術科目 — を学ぶ人にとって、その効率は、取り戻された時間と、いざというときに本当に身についている知識へと複利的に積み上がっていきます。
あなたの習熟度の推移と教材横断の復習キューは、LearnBook のダッシュボードで確認できます — あなたが学んでいるすべての出典にわたって記憶がどれだけ保たれているかをリアルタイムで描き出し、そのすべてが上述の同じ FSRS モデルによってスケジュールされています。
SM-2は長年フラッシュカードを支えてきましたが、FSRSはあなたの実際の記憶に適応します。両者の違いと、それが学習効率に与える影響を解説します。
間隔反復は、忘れそうになる直前に、間隔を広げながら復習をスケジュールします。そのしくみと、なぜこれほど効果的なのかを解説します。