復習の間隔はどう決まるか

Ultra Practicebook は、同じ問題を毎日全部やり直すのではなく、覚えていそうな問題ほど次の間隔を空けます。このページは、アプリが端末の中で行っている計算を、画面の外側から読めるように書いたものです。宣伝用の「科学的に最適化」ではなく、実装している規則の説明です。

何を覚えているか

問題ごとに、次の値をその端末へ保存します。

ログインしていないお試しでは、このデータはブラウザの保存領域にあります。サーバーの学習記録とは別です。保存データを消すと、間隔は最初からになります。

手応えの点数

正解か不正解かだけではありません。正解したときの時間も見ます。

迷って正解した問題と、すぐに言えた問題を、同じ「知っている」とは扱いません。時間は、その問題を開いてから答えるまでの秒です。

次の間隔

点数が 3 未満、つまり不正解のときは、連続回数を 0 に戻し、間隔を 1 日にします。翌日にはもう一度出ます。

点数が 3 以上のときは、連続回数に応じて間隔を伸ばします。

係数の更新は、SM-2 でよく使われる形です。初期 2.5 から、点数が 5 なら少し上がり、3 や 4 なら下がり、1.3 より小さくはしません。式は次のとおりです。

新しい係数 = 今の係数 + 0.1 - (5 - 点数) * (0.08 + (5 - 点数) * 0.02)

ただし下限は 1.3 です。次の日付は、今日に間隔の日数を足した日です。安定度は「間隔 × 係数」で、1 未満にはしません。

一覧の「期限」

問題集のカードに出る期限の件数は、次の復習日時を過ぎた問題の数です。間隔が空いていない問題は件数に入りません。だから、全問を毎日開かなくても、今日触るべきものだけが数字になります。

忘却の曲線そのものを測っているわけではありません。経過日数と安定度から、おおよその保持を exp(-経過日数 / 安定度) で見積もる処理は別にあって、安定度が大きいほど、同じ日数が経っても下がり方が緩くなります。これは表示用の見積もりであり、間隔を決める本線は上の SM-2 風の更新です。

使い方の含意

すぐ正解できる問題を毎日開く必要はありません。間隔が伸びた問題を、期限が来てから開く方が、この実装の意図に合います。不正解は翌日に戻るので、間違えたカードだけをその日のうちに十回めくる、ということはしていません。一度間違えたら、少なくとも一日は間を置きます。

解説を読まずに番号だけ覚えると、時間は短くなり点数は 5 になり、間隔が伸びます。次に文脈が変わったときに落ちます。語彙セットは、選択肢の位置ではなく、問題文の中の語と解説の対比を見てから次へ進んでください。サンプルは 公開問題 に、文脈つきのまま置いてあります。

期限の数字が大きいとき

カードに「40問 要復習」と出ても、その日に40問の新品を足さないでください。期限は、以前に間違えたか、間隔が満ちた語です。新品を足すと、翌日の期限がさらに増えます。先に期限だけを消化し、空きが出てから点数帯のセットを10問まで足します。TOEIC なら 点数帯のガイド の順です。

同じ日に英語の熟語と AWS のインスタンス名を混ぜると、誤答の切り分けが雑になります。間隔の計算はセットごとなので、分野を曜日で分けると、期限の波がぶつかりにくいです。

解説を読まずに速答して点数 5 を取り続けると、間隔だけが伸びます。定着の手順は 解説の読み方 です。

この規則はアプリのバージョンとともに変わり得ます。変わったときは、このページの説明を先に直します。