声明
本文不是在反对 Anki,我热爱 Anki,并为 Anki 写了很多教程,我觉得 Anki 是一个不错的间隔重复软件,也适合新手接触间隔重复[1]与知识表述[2]。我写此文是为了给一些有相同处境的同学提供我的见解。
致敬
本文是受 Why I Switched to SuperMemo After Using Anki for 5 Years, With Over 50k Cards and 420k Total Reviews 一文启发,本来打算翻译,但是我的经历与作者相似,所以直接写我自己的版本或许更好,本文的部分段落翻译自该文。
澄清
本文中所提的 SuperMemo 是指 SuperMemo 18,而非 supermemo.com,还请不要搞混了。
引子
我的故事可能会对你有所帮助,因为:
- 我从 2017 年 4 月开始使用 Anki(超过 3 年)[3]
- 在 2020 年 7 月尝试 SuperMemo[4](4 个月前)
- 从停止往 Anki 里添加新卡片,到完全转用 SuperMemo
我与 Anki 的故事
2017 年年初,痴迷于研究学习方法的我,在知乎上寻找学习方法,找到了
@余时行
老师的 Anki 专栏教程[5],从而与 Anki 结下了不解之缘。在 2017年 4 月 22 日,我创建了自己的 Anki 账户,开始了我的 Anki 使用之旅,后来成为了 Anki 高考的推广者[6],那已经是两年前的事情了。
我的 Anki 统计数据
我使用 Anki 大概能分为两个阶段:
- 高二下——高考前
- 大一开始——大二结束
复习次数:339,500 次
复习时间:820.8 小时
卡片总数:18,058 + 10,876 = 28,934
在写此文的时候,我才意识到,我在 Anki 上花了多少时间与精力(甚至还没把我在知乎写 Anki 相关内容的时间记进来)
我对 Anki 的热情
- 写了近 200 篇关于 Anki 的文章,一本教程书[7],还有很多很多回答
- 在 AppStore 上花了 163¥ 买了 iOS 版的 AnkiMobile(哪怕我不用苹果设备)
- 给 Anki 贡献翻译、issue
提这些数据与证据,我只想说:我永远不会忘记 Anki 在高中和大学对我的帮助,哪怕我不再继续使用它,我也不会去反对它。
我入门 SuperMemo 的失败
其实 18 年年底,我就试着开始使用 SuperMemo,那时我通过 Anki 的算法了解到了 SuperMemo,并开始了我的翻译计划[8]。
那个时候,关于 SuperMemo,我几乎找不到任何中文教程,只有官方英文文档,无尽的文档。
找到一个绿色版的压缩包,开始使用,emmm……
我原以为 Anki 的 UI 够古老了。没想到 SuperMemo 还是 Win XP 风格的。
我开始试着在 SuperMemo 里做我在 Anki 上做的事情。但是很快,我就陷入了一个怪圈:
- 试着添加 Latex 公式(我用 Anki 学过高数、线代)
- 找不到功能的位置
- 搜索,只有 SuperMemo 又臭又长的文档
- 读完,发现就是不支持
- 我丢!
- 试着添加别的……
- ……
- …
当我想往 SuperMemo 里添加材料,发现困难重重时,除了 SuperMemo 的文档,网络上就只有“赶紧用 Anki 吧!”的回复。
在往 SuperMemo 里添加材料的搏斗中,我只坚持了几天,就删除了它,回到了 Anki。
从现在来回顾这段经历,我觉得抱怨 SuperMemo 对多媒体那糟糕的支持,相当无关紧要。我没有去真正尝试渐进阅读,而只是在为自己捍卫 Anki 来找借口。想要改正这种情况并不容易:
认知失调和确认偏见
1.认知失调
转换意味着承认我一直以来都是错的。毕竟,我已经使用 Anki 1 年半了,换个工具意味着我本该用一个更好的工具,过去的工具浪费了我的时间。这样的认知失调很难克服。我一直在抵抗,拼命地坚持着我认为是真实和正确的东西(Anki 是最好的)。
比如,当时我在阅读 Anki 的手册时,我发现 Anki 使用的是 SM-2 算法,而 SuperMemo 已经更新到了 SM-17 算法。但是我认同了 Anki 作者当时的说法:
We’re inclined to believe SuperMemo when they say their newer algorithms are more efficient, but feel that to a certain extent, it is a case of diminishing returns. The gains achieved by moving from a traditional study routine to SM-2 are already great.[9]
当 SuperMemo 说他们的新算法更高效时,我们倾向于相信他们的说法,但觉得在一定程度上,这是一个收益递减的案例。从传统的学习套路转向 SM-2,取得的收益已经很大了。
很好!SM-2 已经足够好了,Anki 也是!
本质上,SuperMemo 和 Anki 是相互排斥的:同意一方意味着不同意另一方。因为我是 Anki 的支持者,所以我很快压制住了对更好选择的怀疑。
2.确认偏见
每当我搜索的时候,每个人都在说 Anki 如何比 SuperMemo 好,问如何从 SuperMemo 切换到 Anki。
上网搜 Anki 与 SuperMemo,你会看到两个对立面:Anki 用户的世界 vs SuperMemo 作者(下文简称博士)的世界。
Anki 的受欢迎程度超过了 SuperMemo:
- 不少公众号专门讲 Anki 在考研中的应用
- 我的专栏在讲 Anki 在高考中的应用
- 还有好多好多用 Anki 学习外语的贴子
在另一边,有博士,也只有博士。他一直在更新他的 Wiki 和帮助网站。
毫无疑问,他关于间隔重复和 SuperMemo 的言论是有偏见的。他毕竟是间隔重复算法和 SuperMemo 的创造者,也是出售 SuperMemo 的受益者。鉴于他的立场,我只是觉得他的话不可信。
网上有一些关于 Anki 与 SuperMemo 的博文,但对我的帮助不大,也不够深入;有一个 Google 论坛,但大多已经死了:没有活跃的讨论,没有活跃的成员,什么都没有。
我的观点是,在我看来。
- 全世界都在使用 Anki,间隔重复软件=Anki
- 大家都在反对 SuperMemo,SuperMemo 的用户都在改用 Anki。
- 只有博士在维护他的软件
就这样,我删除了 SuperMemo,继续使用 Anki。直到 1 年后,我才试着再试一次。
为什么我转用 SuperMemo
有两个耿耿于怀的原因:
- Anki 的大量复习让我倦怠
- 相信 SM-17 算法的优越性
然而,我焦头烂额的经历和算法还不足以让我转换。这两个原因是最后的推手:
- 对 Anki 解决碎片化的失望
- 认识到渐进阅读的好处
我在 Anki 的倦怠是由于:
- Anki 的复习量太高
- 看到了 Anki 参数的自由与算法的局限
复习量太高,让我不得不去调整 Anki 的参数。调整后的确降低了复习量,但是对搞乱算法的担忧挥之不去,害怕降低了效率和效果。为了确定我的参数合适,我又会去做研究,导致了更多的困惑。
Anki 的复习量太高
在我立下 flag,要背完雅思的单词时,Anki 中的大量复习向我涌来。如果我有一天没有完成复习安排,复习量会积累,甚至超过 1000 张到期卡片。
连续好几周,我需要每天复习 600 多张卡片,又由于强背单词的记忆效果太差,我一分钟过不了太多的卡片。
大量的复习让我不敢添加新的卡片,连续几周的复习终于使复习量降了下去,但是如果我有一天太忙,没有时间处理 Anki,复习量就会爆炸。
每一天,我在吃饭的时候、排电梯的时候、在教室间来回的路上,我只要有时间,就会打开我的 AnkiDroid,开始消灭今天的任务。
这样坚持了两个月后,我真的累了。我想停止学习,但是我不想放弃学习。我脑子里总是这样想:
“我该继续重复吗?还有好多好多卡片要复习……但是如果我不复习,复习会累积起来,隔一天我会更加难受”
可能这不是学习英语的正确方法。但不管怎样,这次经历让我尝试去调整 Anki 的参数。
Anki 参数的自由与算法的局限
Anki 的参数很自由
“Anki 的一切都能交给用户自己来掌握!“可惜这句话现在看来就是把难题抛给了用户来解决。
为了调整参数,我去阅读 Anki 的算法[10],去查看记忆相关的论文,去使用 Anki 参数模拟器[11],去研究别的用户提供的参数调整……似乎这些内容很有帮助,但是
理论难以直接用于调整参数,而现成的参数又难以证明其正确。
参数太多太多,而记忆的周期又太长太长。况且,大部分 Anki 用户不关心算法对长期记忆和每日复习量的重要性。
我对算法和参数的调查只带来了更多的困惑和焦虑。Anki 中的参数很多:步伐,毕业间隔,简单间隔,开始简化,简单奖励,间隔修饰符等等。
理解每个参数的含义并不太困难。真正的问题是每个参数如何相互影响。不同的参数彼此关联,改变其中之一可能会对复习安排产生巨大影响。
以前我觉得这个可以靠统计数据来验证参数修改后的效率。但是我后来发现:我并没有任何标准能够确定修改后的参数对我学习的影响。连主观感觉也不可靠:
1.多 ≠ 更好且更高的保留率
我越是复习同一张卡片,就越可能伤害到我的长期记忆力:
如果一个项目还没有过渡到学习状态,但是由于近期的原因可以在短期记忆中获得,那么学习该项目对其学习没有影响
“重要的是要认识到,不仅努力的检索可以提高学习,而且反之亦然:轻松的检索似乎基本上没有学习效果。”[12]
"在太容易的条件下进行几次测试,破坏了测试的积极效果。在0-0-0条件下,要求被试者在基本上总是正确的条件下回忆三次项目。然而,这三次(容易的)检索导致后来的保留甚至比在更困难的条件下给予的单次测试(两种延迟的5种条件)更差。"
"保持条件的恒定和可预测,以及在某一任务上进行大量试验等操作,往往在教学或训练期间似乎提高了学习速度,但随后通常无法支持长期的保持和转移。"
如果文献在任何一点上是清楚的,那就是在容易检索的条件下重复测试会导致较差的长期记忆[13]
并不是所有的检索都是相等的。如果我降低间隔修饰符,我会更频繁地复习。更多的回顾会带来更好的表现(更成功的回忆) ,但这并不意味着更好的长期记忆。
换句话说,如果我降低间隔修饰符,不仅会浪费我的时间,而且会伤害我的长期记忆力。因此,更多的工作和更糟糕的长期保留?还有什么比这更糟糕的呢!
2.检索强度和存储强度之间的关系是反直觉的
"要理解'回答一个问题所花的时间越长,以后就越有可能回忆起这个答案'这一观点,就必须理解检索是一种学习活动,(成功的)检索越困难,学习就越有效果。
在新的废弃理论中,当需要学习(或重新学习)的信息具有较低的检索强度和较高的存储强度时,存储强度和检索强度的增量都最大[12]
这就是理想难度的概念:在你成功的前提下,你越是努力回忆答案,你的长期保持就越好,越强。所以,降低间隔修饰符会伤害我的长期保持力,因为他们是在让复习变得更容易,破坏了理想难度的效果。
“不需要大量的学习,就可以在整个实践中实质性地提高表现。”[14]
小结
我的观点是,我认为任何用户(包括我自己)都没有足够的知识或数据来确定如何更改任何参数,更不用说确定最佳时间间隔。你的“感觉”是没有根据的。知觉流畅性、把熟悉感和表现误认为学习、错误的学习判断都是对学习有害的认知偏差和元记忆错觉。
Anki 的算法很局限
以前,每当我提到 Anki 的算法,我就会说:“Anki 的算法很智能,会根据用户的反馈来降低简单材料的复习频率,提高困难材料的复习频率,比死板的艾宾浩斯遗忘曲线高效多了”。
确实,Anki 的算法要比固定间隔的所谓“艾宾浩斯”复习表格要高效,但是收敛的速度却是一个难以衡量的量。Anki 根据一张卡片的反馈来调整一张卡片的复习,难以做出更好的优化。更多关于 Anki 算法的局限,可以看我这篇文章:
叶峻峣:1989: SuperMemo 适应用户记忆(下)zhuanlan.zhihu.com
SuperMemo 的优化算法
SuperMemo 的算法是否优于 Anki?很可能,但相比这一点,这个算法的灵活性才是重点:
对提前复习和推迟[15]复习的完美支持,让我不再对每日爆表的复习量有太大的压力。
更多关于 SuperMemo 的算法研究,可以看我翻译的文集:
间隔重复的历史www.kancloud.cn
碎片化的弊病
先说说理想的学习情况吧:
- 不断将知识转化为长期记忆
- 练习提取这些知识
- 将相关的知识提取到工作记忆
- 想办法把它们联系起来
- 叮!一个新的想法出现了或成功地应用了知识
而碎片化,就是指我们卡在了第 3,4 步。Anki 的不断复习的确增长了我的长期记忆中的知识,也能让我能够把知识提取出来,但是我却难以把这些知识联系到一起。
该如何用 Anki 来解决碎片化?
做总结归纳是否比画思维导图更有助于理解?
自我测试是否比自我解释更有利于解决碎片化?
为了克服碎片化,我开始了在 Anki 中解决碎片化的探索:
在 Anki 中解决碎片化的挫折
之前的知乎圆桌里,就有同学提问,如何解决 Anki 碎片化的问题,如何对知识保持宏观的掌握[16]?
例如,我学习了光环效应的概念,阅读了《批判性思维》中的一些例子。然后在 Anki 中,我会记住一些关于光环效应的关键词,总结出一些例子。通过这样做,我希望能够在现实生活中识别出光环效应的新事件和新情况,因此,重新校准我的判断,以便更好地进行批判性思维。
我明白,我希望达到的目标是没有客观衡量的,因为“大局思考”、知识转移、创造性见解都是没有明确标准的模糊术语。尽管如此,我很快意识到,我可以回忆起那些挖空的关键词并不等于我就可以在需要的时候回忆起那个概念或想法。
德里克•西弗斯(Derek Sivers)在接受《成为超人》(Becoming a Superhuman)采访时提到了类似的担忧:
所以我的第一个想法就是这220本书的笔记,你们将看到的每一本都是一页又一页的笔记。我的第一个想法就是我该怎么把这个放进间隔重复里。比如我怎样用间隔重复记住我从这些书中学到的东西?说实话,我还没想出答案。实际上我玩过一些东西。我做了-我想你们称之为挖空技巧,你们省略了某些词。但即使那样,我还是觉得,“好吧,我想记住的不是这个句子。我不是在背诗歌。我想记住这个概念,这个想法,这样它就会像我之前说的那些“不管什么让你害怕,去做吧”或者你的10条原则清单一样内化。[17]
我认为他也是在克服碎片化,将知识连成整体。我记忆一个概念的关键词的时间越长,我就越觉得,emmm......我只是为了记忆而记忆。这些概念似乎是孤立存在的。了解“外部视图”或“可用性启发”的存在当然是有帮助的,但我希望得到的不仅仅是知道名称。
说来也巧,在翻译 SuperMemo 算法文档的时候,我注意到博士对知识连贯性[18]的定义。SuperMemo 的渐进阅读[19]似乎能够建立知识之间的连接,克服碎片化的问题。
这对我非常有吸引力,而且那时我正对 Anki 的参数与算法感到沮丧,并想要深入研究 SuperMemo 的算法,于是我再一次入门 SuperMemo。(顺便也入了 RemNote[20] 2333)
我非常清楚,我想要达到的目标可能超出了 Anki 的范围。没有人能保证一个更好的算法或渐进阅读可以帮助我联系知识。但至少我相信这会有很大的帮助。知识的联系依赖于更多的背景知识。由于间隔重复在长期记忆中起着重要的作用,一个更好的长期记忆算法也应该有助于克服知识碎片化。
理解 SuperMemo 的渐进阅读
渐进阅读是阅读和复习之间的交织,这对理解大有帮助,因此,提供了一个更好的知识联系的机会。渐进阅读的巨大优势在于,它有助于避免快速达到工作记忆的瓶颈。工作记忆的容量非常有限:试着在 5 条新信息之间慢跑,你很可能会失去你的思路。
另一方面,渐进阅读可以帮助你在进一步处理之前将一些信息组块化,这样你就有更多的思考空间。例如,在操作系统的进程调度算法中,假如你是这个领域的新手,不知道什么是 SJF,FCFS,RR,MLFQ,继续阅读可能是非常具有挑战性和令人沮丧的,因为当你继续阅读时,你经常会遇到这些缩写并忘记它们的意思。在渐进阅读期间,我会停止阅读,并作出以下项目:
Q:SJF 的全称
A:Shortest Job First
Q:MLFQ 的全称
A:Multilevel Feedback Queue
Q:哪一种调度算法照顾短任务?
A:SJF
Q:哪一种调度算法而能使短任务、长任务和交互型任务都满意?
A:MLFQ
可能需要几天甚至几周的时间 SuperMemo 才会再次向我展示这篇文章。在此期间,我将回答问答和完成我从上面的段落。同样值得一提的是,这样间隔你的阅读和学习时间,可以让睡眠发挥它的作用:巩固记忆[21]。
当我最终再次遇到这篇文章的时候,我已经理解了基本的事实,记住了基本的术语。这样,当我继续阅读的时候,我就不会在基础上挣扎了。理解了基础知识就意味着增加了先前的知识,从而减少了工作记忆的负荷,因此可以分配更多的工作记忆用于更深层次的理解。
这与第三条基于 20 条知识表述法则的建立是一致的:从基础开始[22]。
这就是量子物理学家迈克尔 · 尼尔森在 Anki 所做的[23]。他可能没有意识到他正在做渐进阅读。然而,在 Anki 中文章和相关卡片之间的间隔和交叉方面有一个严重的缺点。
闭幕词
这篇文章总结了我使用间隔重复软件的经历。写这篇文章是对我从用 Anki 复习到用 SuperMemo 学习过程的一个很好的总结。从那时起,我从未后悔转用 SuperMemo 的决定。我完全相信 SuperMemo 比 Anki 更适合我。我非常感激我和 Anki 在一起的美好的 3 年以及其间的每一次经历。
鸣谢
这里是 SuperMemo 群群友
@临水斜箫
的视频教程:「记忆软件」手把手教你用Supermemo系列
还有 SuperMemo 帮助文档的翻译:SuperMemo 18帮助文档 · 语雀
@SuperDaniel 是组织者,非常感谢你们!
2020 年 11 月 8 日
叶峻峣
更新
此文介绍了 SuperMemo 的学习方法——渐进阅读(也称增量阅读[19])
叶峻峣:(4K 字)同时阅读上百篇文章?渐进阅读之程序员视角(IRAPP)
参考
- ^间隔重复 https://zhuanlan.zhihu.com/p/57020308
- ^20 条知识表述规则(20 周年版) https://zhuanlan.zhihu.com/p/269997143
- ^我的 Anki 二周年——曾经的痛苦,不愿再有人遭受 https://zhuanlan.zhihu.com/p/62915980
- ^什么是SuperMemo https://www.yuque.com/supermemo/wiki/supermemo
- ^Anki——近乎完美的神器 https://zhuanlan.zhihu.com/-anki
- ^创造意义之路—— 一名 Ankier 的自述 https://zhuanlan.zhihu.com/p/46158369
- ^高中生也能看懂的 Anki 教程 https://www.kancloud.cn/ankigaokao/ankigaokao
- ^supermemo.guru 翻译计划开始了! https://zhuanlan.zhihu.com/p/52816339
- ^What spaced repetition algorithm does Anki use? https://faqs.ankiweb.net/what-spaced-repetition-algorithm.html
- ^Anki 算法与术语浅谈 https://zhuanlan.zhihu.com/p/42921090
- ^【硬核】参数模拟——每天 40 张新卡片,365 天后我要复习多少? https://zhuanlan.zhihu.com/p/78398403
- ^abOn the Symbiosis of Remembering, Forgetting, and Learning https://www.taylorfrancis.com/books/e/9781136906640/chapters/10.4324%2F9780203842539-6
- ^Intricacies of Spaced Retrieval: a Resolution http://memory.psych.purdue.edu/downloads/inpress_Roediger_Karpicke_Bjorkfest_Chapter.pdf
- ^Making Things Hard on Yourself, But in a Good Way: Creating Desirable Difficulties to Enhance Learning https://bjorklab.psych.ucla.edu/wp-content/uploads/sites/13/2016/04/EBjork_RBjork_2011.pdf
- ^Postpone 延迟 https://www.yuque.com/supermemo/wiki/postpone
- ^Anki 如何复习有网状联系的知识? https://www.zhihu.com/question/410172084/answer/1369611197
- ^interview with “Becoming a Superhuman” https://sivers.org/2015-12-superhuman
- ^一致性与连贯性 https://zhuanlan.zhihu.com/p/264327134
- ^ab增量阅读 https://www.yuque.com/supermemo/wiki/incremental_reading
- ^RemNote https://www.zhihu.com/column/c_1285992721149685760
- ^睡眠中的记忆优化 https://zhuanlan.zhihu.com/p/266856783
- ^Anki高考的20条原则(1-5) https://zhuanlan.zhihu.com/p/52369009
- ^【三万字长文】量子物理学家是如何使用 Anki 的? https://zhuanlan.zhihu.com/p/65131722?utm_source=cn.wiz.note