FSRS 用一个三部分的记忆模型,取代了 SM-2 那个单一的难易系数,并预测你在某一天回忆起一张卡的概率。实际效果是:在同等记忆保持水平下复习得更少——而它需要数据,才能兑现这一点。

一览

SM-2 FSRS
记忆模型 没有——只有一个难易乘数 难度、稳定性、可提取性
下一个间隔怎么选 间隔 × 系数 回忆概率降到你设定目标的那一天
会从你的历史里学习吗 只从那张卡,而且很粗糙 会——在你整套收藏上拟合
你可以设定 什么都不能 期望记忆保持率(例如 90%)
需要复习历史吗 不需要 需要,否则不值得用
在 Anki 里 默认 可用,需手动启用

核心思路:三个数字,而不是一个

SM-2 关于一张卡的全部理论,就是一个难易系数。FSRS 使用 DSR 模型——每张卡三个量:

难度(Difficulty)。 这张卡对你来说本质上有多难。大致相当于 SM-2 的难易系数,但是被正经估计出来的,而不是靠固定增量推来推去。

稳定性(Stability)。 距离你对这张卡的回忆概率降到 90%,还有多少天。这才是真正的创新之处。SM-2 的「间隔」是一份排程;FSRS 的稳定性则是你记忆的一个属性,排程是从它推导出来的。

可提取性(Retrievability)。此刻能回忆起这张卡的概率,它随着距上次复习的时间流逝而衰减。

于是排程问题变得精确了。不再是「乘以 2.5」,而是:给定这张卡的稳定性,可提取性会在哪一天降到我要求的水平? 就排在那一天。

期望记忆保持率:那个真正重要的旋钮

因为 FSRS 预测的是一个概率,你就可以设定一个目标。把期望保持率设为 90%,FSRS 就会把每张卡排到它估计「你有 10% 的概率已经忘掉它」的那一天。

这确实有用,而且是 SM-2 完全提供不了的东西:

  • 调高保持率(比如 95%),你会得到更短的间隔、更多的复习,以及更少被遗忘的卡片。考试前很合理。
  • 调低保持率(比如 85%),你会得到更长的间隔、少得多的复习,以及更多的失误。对一套你只是在维护、而不是在攻克的大型收藏来说很合理。

这笔取舍是明示的,而且由你来做。在 SM-2 里,同样的取舍也存在,但被埋在一堆你必须手工调整的常数里。

那些数字从哪里来

FSRS 是在极大量真实复习日志上训练出来的——来自数万名用户的数亿次复习。这让它在完全不了解你之前,就已经带着有用的先验:一张新卡开局所用的参数,反映的是卡片总体上的行为规律。

然后它开始个性化。Anki 的优化器会针对你的复习历史重新拟合模型参数,于是排程器会学到:你觉得——比方说——汉字比化学定义更难,并据此调整。

正是这种两段式设计——好的先验,然后个性化——让 FSRS 在实践中胜过 SM-2。常被引用的结果,是在同等记忆保持水平下复习次数减少 20–30%,对一套大型收藏而言,这意味着每月好几个小时。

在 Anki 里使用它

一些实用说明,因为大多数人会在 Anki 里遇到它:

它需要手动启用。 尽管有不少博客文章说得好像不用,Anki 自己的手册仍然把 FSRS 描述为*「Anki 传统 SuperMemo 2(SM-2)算法的一个替代方案」*。你在卡组选项里启用它。

先启用,再优化。 打开 FSRS 只是给了你「普遍人群」的参数。运行优化器,才会把它们拟合到你的历史上。请务必做第二步,否则你只拿到了一半的好处。

认真设定期望保持率。 默认值是个合理的折中。不要去追 99%——复习成本会陡增,而边际上的记忆保持提升很小。

已有的卡片没问题。 FSRS 会读取你的复习历史,所以一套成熟的收藏会被合理地转换过去,而不是被重置。

给它一点时间。 刚切换之后,有些间隔会看上去很意外。通常模型是对的,而你的直觉是按 SM-2 校准过的。

我们为什么还没切换

我们用的是 SM-2,理由是数据,不是原则。

FSRS 的优势来自把参数拟合到复习历史上。一个刚用了两个月闪卡的孩子,只有几十次复习——远远不够拟合任何东西,而一个未经拟合的 FSRS,不过是另一组默认值罢了。对一套没有历史可学的收藏,没有任何诚实的方式去声称有 25% 的效率提升。

还有一个「比例是否相称」的论证。FSRS 节省的是复习时间,而复习时间并不是限制一个 KS3 孩子的因素:我们的每一轮上限是二十张卡,大约六分钟。把六分钟砍成四分钟,解决的是一个没人有的问题。真正限制孩子的,是那些卡片究竟存不存在——这正是我们把力气放在「让导师来写」上的原因。

所以这个计划是刻意的,而不是勉强的。复习日志会记录每一次评级及其时间戳——正是 FSRS 需要的那种形状——所以将来可以拟合这个算法,而不损失任何历史。重新考虑它的触发条件,是每个孩子积累了足够多的复习,让一次拟合真正有意义。

诚实的总结

如果你在 Anki 里维护一套大型个人收藏,把 FSRS 打开并运行优化器。它是一次真实的改进,它免费,而且做出它的人在测量这件事上异常严谨。

如果你是在为一个十二岁的孩子挑选一套系统,排程器并不是那个决定性因素。这里的每一个算法——SM-2、FSRS、SM-19——排程都足够好,好到差别只以「每周几分钟」来衡量。真正决定一个孩子到了三月还有没有闪卡习惯的差别,是那些卡片究竟有没有被写出来。

常见问题

FSRS 是什么?

Free Spaced Repetition Scheduler(自由间隔重复排程器)——一个开源算法,把记忆建模为三个量(难度、稳定性、可提取性),并预测你回忆成功的概率,而不是把间隔乘以一个固定的难易系数。

FSRS 比 SM-2 更好吗?

对一套有复习历史的大型收藏来说,是的——通常在同等记忆保持水平下,复习次数明显更少。而对一套几乎没有历史的新收藏,它没有可学的东西,所以好的默认值表现相当。

aitutors.me 用 FSRS 吗?

还没有。我们的复习日志是刻意为「将来可以拟合 FSRS」而建的;一旦积累了足够的复习历史可供训练,这次切换才变得值得。