FSRS
FSRSを解説:忘れるタイミングを予測するアルゴリズムの仕組み
FSRSが忘却をどう予測し、難易度・安定性・想起可能性を使って復習間隔と記憶の定着率を調整するのかを解説します。
AI生成画像このページ
- 復習のタイミングに記憶モデルが必要な理由
- 固定スケジュールでは記憶ごとの違いを区別できない
- 適応型スケジューリングは回答を証拠として使う
- FSRSは記憶をどのようにモデル化するか
- 難易度:そのカードが自分にとってどれだけ難しいか
- 安定性:忘却までの時間の尺度
- 想起可能性:今思い出せる推定確率
- 忘却曲線から復習日まで
- 例:一つの記憶、三つの目標
- 定着率のしきい値を動かしてみる
- 復習後に変化するもの
- 定着率の目標を選ぶ
- 90%がよく使われる出発点である理由
- 目標を高くすると学習負荷とのトレードオフが生まれる
- FSRSとSM-2の違い
- 次の間隔を決める考え方が異なる
- 実際に使うときの長所と限界
- 現実の生活に復習を組み込む
- 忙しい日や期限を過ぎたカードへの対応
- 試験の締切で計画の条件が変わる
- 正直な評価と明確なカードがよい証拠を作る
- FAQ
昨日はすぐ答えられた暗記カードに、今日は少し迷う。来週には思い出せなくなっているかもしれないし、まだ一瞬で答えられるかもしれません。役に立つスケジューラーは、正解するたびに同じ間隔を置くのではなく、この不確実さを前提に動く必要があります。
要点: FSRSは記憶がどう変化するかを推定し、一定の時間が経過した後にカードを思い出せる確率を予測し、目標とする想起確率に合わせて次の復習間隔を決めます。目標を高くすると、一般に復習は早くなります。ただし、これはモデルによる予測であり、次の回答を保証するものではありません。
この記事では、記憶の状態から復習日を決めるまでの流れを追います。まず短い入門を読みたい場合は、FSRSとは何かを説明する入門ガイドで基本用語を確認できます。
復習のタイミングに記憶モデルが必要な理由
固定スケジュールでは記憶ごとの違いを区別できない
「1日後、3日後、その次は1週間後に復習する」というスケジュールは実行しやすい一方で、よく知っている単語と、定義が混同しやすい単語を同じように扱います。今日どちらも正解できても、1週間後まで残っている可能性は大きく違うかもしれません。
固定スケジュールが役に立たないという意味ではありません。復習の構造を作り、時間を空けて想起の機会を置く役割はあります。しかし、カードが増えたデッキにはさまざまな段階の記憶が含まれます。確実に覚えているカードを繰り返すと、本当に思い出しにくいカードと時間を奪い合うことになります。
適応型スケジューリングは回答を証拠として使う
FSRSはFree Spaced Repetition Scheduler(自由間隔反復スケジューラー)の略です。カードの復習履歴、経過時間、評価などを使って、推定された記憶状態を更新します。そして、その推定値を次の復習間隔に変換します。
ここで大切なのは、カードの状態を更新することと、モデルのパラメーターを最適化することを区別することです。復習を終えると、現在のパラメーターに基づいてカードの状態はすぐ更新されます。一方、学習者の蓄積した履歴に合わせてパラメーターを調整するのは別の処理で、一部のアプリが提供する機能です。FSRSを使っているからといって、アプリが自動的に個人向け最適化まで行うとは限りません。
また、古いスケジューラーがすべて固定式というわけでもありません。SM-2も回答の質を使って間隔を調整します。FSRSは別のモデル化を選び、記憶の安定性と想起確率を明示的に推定します。「古いアルゴリズムは適応しない」と単純化するより、この違いを比較するほうが有用です。
FSRSは記憶をどのようにモデル化するか
難易度:そのカードが自分にとってどれだけ難しいか
難易度は、特定の学習者にとって、そのカードがどれだけ難しいかの推定値です。短い定義でも、似た定義が3つあれば難しくなります。逆に、背景にある考え方を理解していれば、長い答えでも簡単に思い出せることがあります。
FSRSでは、難易度が復習後の安定性の変化を決める材料になります。単に「難しいカードなら明日」というタイマーではありません。どちらも難しいカードでも、一方の記憶のほうがずっと安定していれば、復習間隔は異なり得ます。
安定性:忘却までの時間の尺度
モデルにおける安定性には明確な意味があります。復習後、予測される想起率が90%まで下がるのに要する日数です。安定性が10日のカードなら、想定した忘却曲線のもとで、10日後に思い出せる確率がモデル上90%になります。
これは11日目に記憶が消えるという意味ではなく、選ばれた復習間隔と同じものでもありません。同じ安定性でも、目標とする定着率を高くすれば、スケジューラーは早めの間隔を選べます。正しく想起できれば推定された安定性が上がることが多く、失敗は別の更新が必要だという証拠になります。
想起可能性:今思い出せる推定確率
想起可能性は、ある時点で答えを思い出せる確率です。最後の復習からどのくらい経ったか、推定された安定性はいくつかによって決まります。難易度と安定性が記憶の性質を表すのに対し、想起可能性は直近のスケジューリングに答える値です。
2枚の単語カードを考えてみましょう。一方の安定性は2日、もう一方は20日です。10日後には、両方を最後に正解していたとしても、想起確率は同程度とは限りません。同じ経過時間でも、最初の記憶にとってははるかに大きな負荷になります。
これらの定義は、FSRSアルゴリズムのドキュメントに基づいています。これは復習結果を予測するモデルの説明であり、脳の中にあるものを直接測定しているわけではありません。
忘却曲線から復習日まで
例:一つの記憶、三つの目標
安定性を10日に固定し、途中で復習しないとします。モデルは高い想起確率から始まり、徐々に下がると予測します。復習の基準点は、曲線が目標とする定着率に達したところです。
下の図の例では、目標を80%にすると間隔は約24日、90%では10日、95%では約4.6日になります。記憶の推定値は変わらず、復習時に許容する予測上のリスクだけが変わっています。
これなら、復習間隔が意外に長くなる理由もわかります。推定された記憶が強い、目標が低い、あるいはその両方を反映している可能性があります。日付だけを見ても、アプリがそのカードを難しいと考えているかはわかりません。解釈には記憶の推定値とスケジューリング設定が必要です。
定着率のしきい値を動かしてみる
目標を変えて、同じ曲線上のしきい値がどう動くかを見てみましょう。水平線は要求した想起確率を示し、曲線との交点が概算の復習間隔になります。
安定性は10日で固定。FSRS-4.5の曲線を使用。繰り返しの復習や個人の予測は含みません。
このデモでは、FSRS-4.5で文書化されている忘却曲線を使い、安定性を10日に固定して、一つの考え方だけを切り出しています。復習を繰り返す過程、個人パラメーターの最適化、特定のアプリのスケジュールを再現するものではありません。新しいFSRSのバージョンでは曲線の形が異なることがあり、実際のアプリでは間隔の丸め、わずかなスケジュールの変動、学習ステップ、間隔の上限などが加わる場合があります。
目標を高くしても曲線自体が強くなるわけではありません。復習を早めるだけです。記憶そのものを強くするには学習と想起が必要で、目標は再確認する時点を変えるだけです。
復習後に変化するもの
次の復習では、スケジューラーが新しい観測値、つまり経過時間と評価を受け取ります。難易度と安定性を更新し、その状態から次の間隔を選びます。そのため、次の曲線は前に見たものと異なることがあります。
かなり長い間隔の後に正解できた場合と、直後に同じ答えを繰り返せた場合では、モデルに与える情報が違います。失敗も重要です。その条件では想起に成功しなかったと伝えるからです。したがって、固定した安定性の曲線だけを延長して、繰り返し復習のスケジュール全体を正確に表すことはできません。
この流れは、次のサイクルとして考えられます。
- 答えを表示する前に思い出す。
- 結果を正直に評価する。
- 推定された記憶状態を更新する。
- 目標とする定着率に向けて次の間隔を選ぶ。
- 新しい証拠を加えながら繰り返す。
定着率の目標を選ぶ
90%がよく使われる出発点である理由
望ましい定着率とは、カードが復習対象になった時点で、モデルに目標とさせる想起確率です。Ankiはデフォルトを90%とし、定着率と学習負荷のバランスとして説明しています。これは出発点であって、すべての学習者や課題に共通する科学的な最適値ではありません。Ankiのデッキオプションも確認してください。
90%という目標は、知識の10%を恒久的に失うという意味ではありません。カードはそれぞれ異なる時点で復習され、失敗したカードは学び直せます。また、次の10問のうちちょうど9問を正解できる保証でもありません。実際の結果は揺れますし、モデルの当てはまりが悪ければ、教材に対する予測の精度も低くなります。
設定を評価するときは、十分な数の復習を重ねた傾向を見ましょう。難しい午後を一度過ごした、新しく覚えたカードが数枚ある、デッキを変更した、といった事情だけでモデルの正確さを判断するのは早すぎます。
目標を高くすると学習負荷とのトレードオフが生まれる
同じ記憶状態なら、目標を高くするほど間隔は短くなります。図の例では、90%から95%に上げると間隔が半分以下になります。ただし、これは一つの理論上の間隔の比較であり、総復習量が正確に2倍になるという主張ではありません。
長期的な負荷は、新しいカード、失敗、安定性の変化、学習ステップ、使える学習時間にも左右されます。Ankiのマニュアルも、特に非常に高い目標では、90%を超えると負荷が急速に増えると注意しています。「ほぼ完璧」に見えるから99%を選ぶと、続けられないスケジュールになることがあります。
忘れることの影響を基準に決めましょう。長期的な語彙学習と、近い試験では優先順位が異なるかもしれません。負荷が大きすぎるなら、定着率の設定と合わせて、新しいカードを減らすことやカード設計を改善することも考えます。目標を高くしても、1日の時間が増えるわけではありません。
FSRSとSM-2の違い
次の間隔を決める考え方が異なる
元のSM-2アルゴリズムは、回答の質からイージーファクターを調整し、正解を重ねるにつれて間隔を伸ばします。失敗すると反復の流れをやり直します。適応型ではありますが、要求された想起確率を解いて間隔を選ぶ仕組みではありません。
FSRSは難易度と安定性をモデル化し、経過時間から想起可能性を導き、定着率の目標に沿った間隔を選びます。アプリがその流れをサポートしていれば、復習履歴に合わせてパラメーターを最適化することもできます。どちらのシステムも、復習から得られるフィードバックに依存します。
アプリを比較するときは注意が必要です。「SM-2ベース」と説明されるアプリが大幅な変更を加えていることもあります。同じFSRSを使うアプリでも、バージョン、パラメーター、学習ステップ、間隔の上限、復習時の挙動が違う場合があります。アルゴリズム名だけでは、利用体験の全体は決まりません。
実際に使うときの長所と限界
FSRSは、予測された想起と、定着率とタイミングのトレードオフを明示的に考える方法を提供します。そのため、なぜ今復習するのか、目標を変えると間隔がどう変わるのかを説明しやすくなります。パラメーターの最適化によって、記録された復習パターンにモデルを合わせることもできます。
一方で、実用上の限界もあります。履歴が少ない、評価が不正確、カードが曖昧、アプリ外で学んだ内容が多い、といった場合は予測が難しくなります。モデルが見ているのは記録された証拠であって、記憶を強めたすべての会話、講義、演習ではありません。
復習が何パーセント減ると約束しなくても、価値は説明できます。よりよい予測によって復習を有効に配分できる可能性はありますが、負荷や想起が改善するかは、データ、設定、習慣によって変わります。
現実の生活に復習を組み込む
忙しい日や期限を過ぎたカードへの対応
期限日はモデルに基づく提案であり、生物学的な消滅期限ではありません。期限を過ぎると一般には想起確率がさらに下がりますが、その瞬間にカードを完全に忘れるわけではありません。戻ってきたら正直に復習し、長い間隔の後に何が起きたかをスケジューラーへ伝えましょう。
現実的な復習時間を予定表に確保し、未処理のカードが増えたら新しいカードの追加を減らします。予定表は自分の時間を整理し、スケジューラーは個々のカードを整理します。FSRSによって予定表との連携が自動的に行われるわけではありません。
SpaceRepはFSRSで暗記カードの復習を予定し、試験用デッキには締切を意識したスケジューリングを適用します。日付は学習習慣を支える目安として使い、理解や応用のための時間も確保しましょう。
試験の締切で計画の条件が変わる
試験には、長期的なスケジューラーならもっと先に置く復習でも、特定の日までに使える想起を確保したいという別の制約があります。アプリは高い定着率や間隔の上限で対応できますが、挙動は実装によって異なります。
使える時間をすべて、完璧な暗記カードの数値を追うことに費やさないでください。記述式の説明、複合問題、時間を測った演習は、短い想起プロンプトだけでは測れない技能を試します。試験直前の詰め込みと間隔学習を比較するガイドでは、試験の実際の要求に合わせて復習と演習を配分する方法を紹介しています。
正直な評価と明確なカードがよい証拠を作る
答えを思い出せなかったなら、失敗として記録しましょう。FSRSでは「Hard」は、難しかったものの想起には成功した場合を表します。「Again」の代わりに遠慮して使う評価ではありません。そうしないと、実際には失敗した履歴が成功として記録されます。
カードそのものも確認しましょう。質問は一つに絞られていますか。正解したかどうかを判断できますか。理解を試しているのか、それとも見覚えのある文を再認しているだけではありませんか。効果的な暗記カードの作り方では、評価を不正確にする問いを改善する考え方を説明しています。
よいスケジューリングは、意味のある観測から始まります。よく設計されたカード、実際の想起、正直な評価があれば、予測が完全でなくてもモデルは役立つ材料を得られ、復習自体も有意義になります。
FAQ
定着率90%とは、すべての知識の10%を忘れるという意味ですか?
いいえ。予定された復習時点での目標想起確率であり、恒久的に失われる知識の割合ではありません。最近復習したカードは予測された想起率が高いことがあり、失敗したカードは学び直せます。
FSRSは復習するたびに自分専用のパラメーターを学習しますか?
必ずしもそうではありません。各復習では、現在のパラメーターを使ってカードの記憶状態を更新します。履歴からパラメーターを最適化する機能は別で、対応しているかどうかはアプリによります。
FSRSを使えば、試験当日に覚えていることを保証できますか?
いいえ。復習の証拠から確率を推定するだけです。締切を意識したスケジューリングは計画に役立ちますが、想起は学習の質、試験の課題、当日の状況にも左右されます。
FAQ
定着率90%とは、すべての知識の10%を忘れるという意味ですか?
いいえ。予定された復習時点での目標想起確率であり、恒久的に失われる知識の割合ではありません。最近復習したカードは予測された想起率が高いことがあり、失敗したカードは学び直せます。
FSRSは復習するたびに自分専用のパラメーターを学習しますか?
必ずしもそうではありません。各復習では、現在のパラメーターを使ってカードの記憶状態を更新します。履歴からパラメーターを最適化する機能は別で、対応しているかどうかはアプリによります。
FSRSを使えば、試験当日に覚えていることを保証できますか?
いいえ。復習の証拠から確率を推定するだけです。締切を意識したスケジューリングは計画に役立ちますが、想起は学習の質、試験の課題、当日の状況にも左右されます。