Super Memo记忆算法 让你更有效去学习

时间:2017-02-27    作者:小鑫

  大家是对Supermemo的算法比较感兴趣的,那么他是怎样的一套算法来更好的让人去背单词呢?现在小编就为大家分享一篇Super Memo记忆算法的文章,带你去了解Super Memo记忆算法。

Super Memo记忆算法

  Super Memo记忆算法

  理解你的记忆力,SuperMemo可以计算出对你的学习资料的最优化的复习时间差。在学习资料中每一个条文都建立有自己的复习和重复模型。SugarMemo算法学习记录

  SugarMemo算法学习记录

  看了著名的Palm上的背单词软件SugarMemo已经把源代码放出了

  知道其中采用了国外的那个著名的SuperMemo的早先的一个算法(SM2)来记忆单词.

  因为操作非常之简单,而且记忆效果也不错,

  所以有想法把这个软件移植到PSP上,也是通过简单的几个键的操作方便对单词的记忆

  现记录简要的过程如下:

  SugarMemo(我下面简称Sugar)的改进在于,通过一组测试,来判定一个单词记忆的程度到底是多少.

  依据SuperMemo(下面简称Super)的分级(SM2),单词从最熟悉到最不熟悉分为6个级别.0级到5级

  这6个级别的描述分别为:

  5 - perfect response 单词记得非常好

  4 - correct response after a hesitation 回想一下,可以正确回忆出单词

  3 - correct response recalled with serious difficulty 稍微吃力的回想一下,可以正确回忆出单词

  2 - incorrect response; where the correct one seemed easy to recall 在提示的情况下,能想起正确的单词

  1 - incorrect response; the correct one remembered 看到答案,对正确单词有印象

  0 - complete blackout. 完全一摸黑*_*

Super Memo记忆算法

  然后对于不同级别的采用不同的策略.

  对于不熟悉的,将反复的出现,而熟悉的,则降低出现的频率.

  SM2算法中,引用了一组公式:

  I(1):=1

  I(2):=6

  for n>2 I(n):=I(n-1)*EF

  其含义为:

  I(n) 是每次单词复习出现的间隔时间,单位是天

  EF是作者自己命名的一个参数,叫做Easiness Factor 难易度因子,这个因子的范围,按照作者的设定介于1.3~2.5之间,任何新单词的默认EF是2.5,根据复习的进度,不断进行相应的调整.如果EF小于1.3的时候,则让EF=1.3否则会出现一些很讨厌的重复的问题,

  这样,就可以算出,一个单词,需要复习的时间长度.

  EF的调整是通过一个公式计算的:

  EF':=f(EF,q)

  其中EF'是EF的新值

  q是测试者响应情况的状态值.

  f()是定义的计算函数

  具体的计算函数为(我怀疑这个公式是依据某种心理学原理制订的):

  EF':=EF+(0.1-(5-q)*(0.08+(5-q)*0.02))

  可以简化做:

  EF':=EF-0.8+0.28*q-0.02*q*q

  另外,当q=4的时候,EF'=EF (不变化)

  q,就是前文提到的对单词记忆的程度级别.这样就可以算出每一个EF值,从而进一步得到复习的间隔时间

  另外几点说明就是:

  当q小于3的时候,从头再开始以上的循环.且EF不变.

  反复循环以上过程,一直到q大于等于4的时.

  作者还在他的算法之后,做了一些统计工作,可以看到,通过这种记忆的方法,效率还是比较高的

  同时作者给出了算法的Delphi的源代码供下载

  在之后的SuperMemo版本中,作者对算法还有了更深层次的优化

  效果更好一些

  但是新的算法没有被用在SugarMemo中.

  如果在移植PSP的过程中,可以适当的考虑才用新的算法的因素.

  看完以上文章的朋友是不是对Super Memo记忆算法已经有所了解了,那么如果你想要更好更深刻的记住单词,或许用Super Memo记忆算法来帮助你记单词是个不错的选择哟。

    内容导航

    猜你喜欢

    相关推荐