返回首页
算法深度解析

间隔重复算法详解

深入解读 FSRS、SM-2 和 Leitner — 驱动现代闪卡应用的核心算法。了解每种算法的原理,以及哪些应用(Anki、RemNote、StudyGlen、Brainscape)实现得最好。

作者 StudyGlen Team

1885 年,赫尔曼·艾宾浩斯发现,我们会在 24 小时内忘记 70% 的新信息——除非按照科学优化的时间间隔进行复习。间隔重复已成为首屈一指的循证学习方法,但算法至关重要:在相同记忆留存下,FSRS 可比 SM-2 少安排 20-30% 的复习次数。我们将拆解每种算法的原理,以及哪些闪卡应用实现了它们。

为什么闪卡背后的算法至关重要

间隔重复的工作方式,是在你即将忘记之前向你展示一张闪卡。这个「即将之前」就是全部关键所在——而它由一个算法决定。

在间隔重复的数字化历史中,绝大多数时间使用的算法是 SM-2(SuperMemo 2),这是Piotr Wozniak 于 1987 年发表的一个公式。它驱动了最初的 SuperMemo、2023 年之前所有 Anki 用户,至今仍是 RemNote 的默认调度器。SM-2 经过了实战检验——但它也很僵化:每位学习者拿到的都是同一套调度曲线,与个人记忆的实际表现无关。

2022 年,一个名为 FSRS(Free Spaced Repetition Scheduler)的开源项目改变了这一点。FSRS 用统计模型拟合你真实的复习历史,并基于预测的回忆概率为每张卡片安排日程。在5 亿+ 条 Anki 复习记录上的基准测试显示,在相同记忆留存下,FSRS 比 SM-2 少需要 20-30% 的复习。Anki 在 23.10 版本(2023 年 11 月)将 FSRS 设为默认。

本指南讲解 FSRS、SM-2 和经典的 Leitner 盒子系统的工作原理——以及哪些闪卡应用实现了它们。如果你在 2026 年挑选学习工具,算法是最重要的差异化因素。

FSRS — Free Spaced Repetition Scheduler

FSRS 是一种现代化的开源调度算法,自 2022 年起由 Jarrett Ye 和 open-spaced-repetition 社区共同开发。它将记忆视为一个针对每位学习者自适应的统计模型,旨在准确度和效率上超越 SM-2。如今 Anki、RemNote 和 StudyGlen 都已实现该算法。

FSRS 的工作原理 — DSR 记忆模型

FSRS 用三个值来建模一张闪卡的记忆,并在每次复习后更新:

  • Difficulty (D): 这张特定卡片对你而言有多难。范围 1-10。根据你按下 Again、Hard、Good 还是 Easy 进行校准。
  • Stability (S): 你回忆这张卡片的概率下降到目标记忆留存率(默认 90%)所需的天数。在正确复习后增长,遗忘后重置。
  • Retrievability (R): 你此刻能够回忆起这张卡片的预测概率——是 D、S 以及距上次复习天数的函数。

通过这三个值,FSRS 为每张卡片回答一个问题:在你设定的记忆留存目标下,最晚可以把这次复习排到什么时候,仍然能预期你记得它?

FSRS 与 SM-2 的不同之处

SM-2 使用固定乘数——所有人开箱即用得到的都是同一套间隔增长曲线。FSRS 使用 gradient descent,通常在 ~1,000 次复习之后,将你的个人参数拟合到你真实的复习历史。训练完成后,它会考虑你觉得哪些卡片类型更难、你遗忘的速度,以及失败如何影响长期稳定性。

你还可以设置一个「Desired Retention」目标——通常在 0.80 到 0.97 之间,多数用户落在 0.85-0.90 附近。留存越高,复习越多;越低则越少。SM-2 没有对应的控制项。

哪些闪卡应用使用 FSRS

  • Anki: 自 v23.10(2023 年 11 月)起在桌面端、AnkiDroid 和 AnkiMobile 上都是默认调度器。SM-2 仍可作为后备使用。
  • RemNote: 作为 SM-2 旁边的可选调度器提供。
  • StudyGlen: 所有 AI 生成闪卡组的默认算法——无需手动配置。

FSRS 明显胜出的场景

大型卡组(2,000+ 张)、长期记忆留存目标,以及难度参差不齐的情况(部分卡片简单、部分困难)。复习数据积累得越多,FSRS 相比 SM-2 的优势越明显。

FSRS 影响不大的场景

在 ~1,000 次复习以下,FSRS 还无法拟合出有意义的个人模型——它会回退到默认参数,表现与 SM-2 接近。对于随手学习或短期突击,算法选择基本只是装饰。

SM-2 — Anki 的经典算法

SM-2 由 Piotr Wozniak 于 1987 年作为 SuperMemo 的一部分发表——这是首个商业间隔重复应用。从 2006 年发布到 2023 年末,它一直是 Anki 的默认调度器,至今仍是 RemNote 的默认。四十年的实际使用让它成为其他所有 SRS 算法的对照基线。

SM-2 的工作原理

SM-2 为每张卡片追踪两个数字:

  • Ease factor (EF): 一个初始化为 2.5 的乘数,控制间隔增长的速度。
  • Interval: 两次复习之间的天数。

每次复习后:

  1. 如果你答错了卡片,将间隔重置为 1 天,EF 保持不变。
  2. 如果你答对了,将当前间隔乘以 EF(Easy 时 EF 略微提高,Hard 时略微降低)。

一张典型的 SM-2 卡片序列可能是:1 天 → 通过 → 6 天 → 通过 → 15 天 → 通过 → 37 天 → 通过 → 92 天……

优点

SM-2 简单、透明,不需要训练数据。从第一次复习起就能工作。它的行为可以手算预测——查看一张卡片的 EF 和 interval,你就能精确解释为什么它被排到那里。35 年以上的实际使用让它成为任何 SRS 最安全的默认选择。

局限

SM-2 的乘数是通用的——算法不会针对个体学习者调整。如果你对地理事实的记忆比对方程式衰退得更快,SM-2 会一视同仁地处理它们。它也没有显式的记忆留存目标:你无法要求 95% 留存率,只能接受乘数隐含产生的约 85%。

哪些应用使用 SM-2

  • Anki: 作为后备调度器提供。在 v23.10 切换到 FSRS 之前一直是默认。
  • RemNote: 默认调度器。
  • SuperMemo: Piotr Wozniak 的原版应用。仍在积极开发——现代 SuperMemo 使用 SM-2 的后继版本 SM-18。

Leitner 系统 — 纸上的间隔重复

Leitner 系统由德国科学记者Sebastian Leitner于 1972 年提出,比所有数字化 SRS 算法都要早。这是一种实体卡片方法,启发了整个品类——而且仍值得了解,因为一些应用(包括 Quizlet 的 Learn 模式)至今仍使用它的简化版本。

Leitner 的工作原理

你准备一组带编号的盒子(经典做法是 5 个)。所有新卡片从盒子 1 开始。

  • 答对——把卡片移到下一个更高的盒子。
  • 答错——把卡片送回盒子 1。

每个盒子都有自己的复习频率:盒子 1 每天,盒子 2 每两天,盒子 3 每四天,依此类推。你能稳定记住的卡片会逐渐流向更高的盒子;遗忘的卡片会被拉回到频繁复习。

优点和局限

Leitner 是最简单的 SRS——完全不需要数学,用纸卡和一个鞋盒就能运行。它的调度比 SM-2 或 FSRS 粗糙得多,间隔不会针对个人记忆或卡片难度做适配。对于短期学习或排斥数字工具的学习场景,它依然够用。但在大多数现代用例中,任何运行 SM-2 的数字 SRS——尤其是运行 FSRS 的——都会更有效率地安排复习。

FSRS vs SM-2:哪种算法表现更好?

Anki 团队在超过 5 亿条复习日志上对 FSRS 与 SM-2 做了基准测试。核心结论:在相同记忆留存率下,FSRS 大约只需要少 20-30% 的复习。对于一个每天复习的 2,000 张卡组,这意味着每周节省数小时。

FSRS 明显胜出的地方

  • 长期记忆留存(30+ 天的间隔):FSRS 自适应的稳定性追踪比 SM-2 的固定乘数更准确地安排长间隔。
  • 难度混合的卡组:FSRS 学习每张卡片的难度;SM-2 通用的乘数会过度安排简单卡片,对困难卡片则安排不足。
  • 拥有 1,000+ 复习数据的用户:FSRS 需要训练数据来个性化。一旦有了数据,每多一次复习,与 SM-2 的差距就会进一步拉大。

SM-2 仍然站得住脚的地方

  • 小卡组(500 张以下):FSRS 还无法拟合个人模型;SM-2 的默认参数有竞争力。
  • 纯新手学习者:SM-2 第一天就能零配置工作。FSRS 用默认参数也没问题,但有意义的优势要等到你积累了数据之后才会显现。
  • 可解释性:SM-2 的调度可以从 (EF, 间隔) 推断出来。FSRS 的拟合模型实际上是一个小型神经网络——更难手算推理。
实用结论

如果你的闪卡应用提供 FSRS,请启用它。对大多数用户而言,20-30% 的复习削减是单一最大的体验提升——这正是 Anki 团队在 v23.10 把它设为默认的原因。继续坚持 SM-2 的唯一理由是:卡组非常小、复习历史很薄,或者你不愿意重新优化的中途迁移。

你应该使用哪种算法?

一个快速决策框架:

  • 1.

    大卡组(1,000+ 张)且追求长期记忆留存 → FSRS。Anki、RemNote 或 StudyGlen 都已实现。

  • 2.

    小卡组且短期学习(一次考试、一本旅行短语手册)→ 任何算法都行,包括最普通的 Leitner。不必想得太多。

  • 3.

    你想零配置 + AI 生成的卡片 → StudyGlen(默认 FSRS,AI 从 PDF、笔记或图片生成卡片)。

  • 4.

    你想要最大限度的控制 + 访问社区卡组 → Anki(v23.10 起 FSRS 为默认,SM-2 可作为后备)。

  • 5.

    你写长篇笔记并希望内置闪卡 → RemNote(默认 SM-2,FSRS 可选)。

  • 6.

    你想要专家精选的闪卡组 + 简单的基于信心的复习 → Brainscape(使用专有的非 FSRS 调度器 CBR)。

  • 7.

    你需要规模最大的现成闪卡库,并且不需要真正的 SRS → Quizlet(Leitner 风格,并非真正的 SRS)。

对 2026 年的大多数学生来说,搭载 FSRS 的应用是正确的默认选择。这种算法之所以取代 SM-2 成为业界最佳,是有原因的——而训练它所需的基础设施,如今已内置在每一款主流闪卡工具里。

实现这些算法的应用

下面是间隔重复中最常用的五款闪卡应用,按它们底层运行的算法分组。下面的结论与优缺点能帮你做对比——但如果你还在算法之间犹豫,请回到你应该使用哪种算法这一节。

StudyGlen

综合最佳 — 配备AI卡片生成的FSRS间隔重复,可处理任何内容

Pros

  • FSRS算法适应您的个人记忆模式,实现最佳复习时间
  • AI从PDF、文本和图像输入生成闪卡(无需手动创建卡片)
  • 设置您的目标记忆保持率,FSRS会通过数学方法安排复习
  • 还可生成测验、教育漫画和实时测验课堂
  • 支持37种语言及自动检测
  • 提供免费套餐,采用基于积分的定价(无订阅)
  • 在闪卡上显示AI生成的教育图像,作为视觉记忆辅助

Cons

  • 较新的平台,社区正在发展
  • 尚无移动应用(响应式网页版)
  • 没有预制共享卡组库
Pricing: 提供免费套餐。积分包起价$9.99(一次性购买,无订阅)
Best for: 希望将最有效的间隔重复算法(FSRS)与AI卡片生成结合的学生——无需手动工作
Anki

高级用户最佳选择 — 具有最大自定义能力的开源FSRS/SM-2

Pros

  • 免费开源(桌面版和Android版)
  • 支持FSRS和SM-2算法(新用户默认使用FSRS)
  • 高度可自定义的卡片模板、笔记类型和调度参数
  • 庞大的社区,拥有数千个共享卡组(如医学AnKing等)
  • 在所有平台上完全离线工作
  • 强大的插件生态系统扩展了功能

Cons

  • 学习曲线陡峭 — 对初学者来说令人生畏
  • 没有内置AI卡片生成功能(需要手动创建或插件)
  • iOS应用售价$24.99(一次性)
  • 界面设计过时
Pricing: 免费(桌面版、Android版)。iOS应用一次性$24.99
Best for: 希望完全控制FSRS参数和庞大共享卡组生态系统的高级用户和医学生
Brainscape

精选内容最佳 — 配备专家制作卡组的基于信心的重复

Pros

  • 基于信心的重复(CBR)根据您的自评信心(1-5级)调整复习频率
  • 经认证的专家制作闪卡课程的大型市场
  • 精致的原生移动应用(iOS和Android)
  • 详细的进度跟踪和分析仪表板
  • 内置教师和课堂工具

Cons

  • 不支持从上传内容生成AI卡片
  • CBR是专有的 — 不如FSRS透明且缺乏研究支持
  • 需要Pro订阅才能访问完整库($9.99/月)
  • 与Anki相比,卡片自定义选项有限
Pricing: 提供免费套餐。Pro版起价$9.99/月
Best for: 喜欢通过简单的基于信心的复习系统使用专家精选闪卡组准备考试和认证的学生
RemNote

笔记爱好者最佳 — 内置于知识库的SM-2间隔重复

Pros

  • SM-2间隔重复直接集成到笔记工作流中
  • AI自动从您的笔记生成闪卡
  • 双向链接创建相互连接概念的知识图谱
  • 学习资料的PDF注释和导入
  • 在一个工作区中结合了笔记、闪卡和复习

Cons

  • SM-2算法的效率低于FSRS(相同记忆保持需要约20-30%更多的复习)
  • 学习曲线比简单的闪卡应用更陡峭
  • 免费套餐限制了AI功能和存储
  • 社区比Anki更小,预制卡组更少
Pricing: 提供免费套餐。Pro版起价$8/月
Best for: 希望将间隔重复嵌入到笔记和知识管理工作流中的研究生和研究人员
Quizlet

最大的库 — 熟悉的界面但没有真正的间隔重复算法

Pros

  • 拥有8亿多个用户创建的闪卡集的庞大库
  • Magic Notes AI将笔记转换为闪卡
  • 精致的移动应用,支持离线访问
  • 多种学习模式(Learn、Test、Match游戏)
  • 熟悉的界面,上手容易

Cons

  • 没有真正的间隔重复算法 — 使用基本的莱特纳式盒子系统
  • AI功能需要Quizlet Plus订阅($7.99/月)
  • 免费套餐广告多
  • 针对短期突击优化,而非长期记忆保持
  • 没有图像OCR输入
Pricing: 免费带广告。Quizlet Plus起价$7.99/月
Best for: 希望访问数百万现有闪卡集且不需要真正间隔重复调度的休闲学生

功能对比表

功能StudyGlenAnkiBrainscapeRemNoteQuizlet
SR算法FSRSFSRS/SM-2CBRSM-2基础
AI卡片生成插件
PDF上传插件
卡片类型基础、填空、图片基础、填空、自定义仅基础基础、填空基础、图表
复习分析有限有限
免费套餐免费免费有限有限带广告
移动应用

实际效果演示

看看StudyGlen如何在几秒内从任意学习材料生成闪卡。

常见问题

FSRS 是什么的缩写?

FSRS 是 Free Spaced Repetition Scheduler 的缩写。这是一种自 2022 年起由 Jarrett Ye 和 open-spaced-repetition 社区开发的开源间隔重复算法。Anki 在 23.10 版本(2023 年 11 月)将其设为默认调度器,取代了 SM-2。

FSRS 是怎么工作的?

FSRS 用三个值为每张闪卡的记忆建模:Difficulty(这张卡片对你有多难)、Stability(你的回忆概率下降到目标记忆留存率所需的天数)和 Retrievability(你此刻能记起这张卡片的预测概率)。每次复习后,FSRS 会更新这些值,并在最优时刻安排下一次复习,以达到你的目标记忆留存率。在大约 1,000 次复习之后,它可以使用 gradient descent 拟合出与你个人记忆模式匹配的个性化参数。

FSRS 和 SM-2 有什么区别?

Piotr Wozniak 于 1987 年发表的 SM-2 使用固定乘数,根据你对每次复习的评分来增长间隔。2022 年发布的 FSRS 用统计模型拟合你的复习历史,并基于预测的回忆概率为每张卡片排程。在 5 亿+ 条 Anki 复习上的基准测试显示:在相同记忆留存率下,FSRS 大约比 SM-2 少需要 20-30% 的复习,因为它会针对个体学习者和单卡难度自适应。SM-2 更简单,不需要训练数据;FSRS 在拥有足够复习历史以个性化之后会更准确。

FSRS 比 Leitner 系统更好吗?

对几乎所有现代数字化用例而言,是的。Leitner 盒子系统(1972)使用固定的盒子间间隔(例如 1 天、2 天、4 天),不会针对个人记忆或单卡难度做调整。FSRS 会根据你的复习历史动态计算间隔长度,并显式瞄准你选择的记忆留存率。对于纸质闪卡或最简单的应用,Leitner 仍然够用,但任何运行 FSRS——甚至 SM-2——的 SRS 都会更有效率地安排复习。

在 Anki 中我应该多久重新优化一次 FSRS 参数?

据 Anki 维护者所言,当卡组累积 1,000+ 次复习后,每年重新优化 3-4 次就够了。更频繁地重新优化(例如每周)只能带来微乎其微的改进,并不值得花时间。一个不错的触发条件是:每当总复习卡片数大致翻倍时优化一次。

哪些闪卡应用支持 FSRS?

Anki(v23.10 起为默认)、RemNote(作为 SM-2 的替代选项)和 StudyGlen(AI 生成闪卡的默认选项)都原生支持 FSRS。算法本身是开源的——MIT-licensed 的 Python 和 Rust 实现位于 GitHub 上的 open-spaced-repetition 组织——预计未来会有更多应用陆续采用。

如果我的 Anki 卡组卡片不到 1,000 张,应该启用 FSRS 吗?

FSRS 需要复习数据来拟合个性化模型。在大约 1,000 次复习以下,它会回退到默认参数,行为与 SM-2 类似,所以你还看不到 20-30% 的复习削减。不过,提早启用 FSRS 没有任何坏处:Anki 现在会自动启用,而个性化带来的准确度提升会在你积累足够复习历史之后开始显现。

我可以将 Anki 卡组迁移到新的间隔重复应用,并保留复习进度吗?

这取决于目标应用。StudyGlen 支持直接上传 .apkg 和 .colpkg 文件,并可选择将您的 Anki SM-2 复习状态 — 间隔、熟练度、失误次数 — 转换为 FSRS,已学会的卡片不会归零。大多数其他工具要么根本不支持 .apkg 格式,要么将导入的卡片视为全新卡片并丢失您的复习历史。如果保留多年积累的 Anki 复习进度对您来说至关重要,请在迁移前确认目标应用是否明确支持 SM-2 → FSRS 转换。StudyGlen 的免费套餐每天支持 5 次导入;积分包可解锁无限次导入。

免费试用第一名间隔重复应用

上传PDF、粘贴笔记或扫描图片 — 在几秒钟内获得带有FSRS间隔重复调度的AI闪卡

免费开始间隔重复
    间隔重复算法详解:FSRS vs SM-2 vs Leitner(2026)