Skip to content

学习算法

介绍 Anymo 使用的学习算法。

算法原理

Anymo 采用艾宾浩斯遗忘曲线与 Anki SM2,结合多年行业经验自研间隔重复算法,实现更高效的学习效果。

算法特点

  • 自适应间隔:根据答题情况自动调整复习时间
  • 难度评估:评估每张卡片的难度系数
  • 遗忘曲线:基于艾宾浩斯遗忘曲线优化
  • 机器学习:不断学习用户的学习模式

算法参数

主要参数说明
记忆模式默认(经过大量用户数据验证得出的较优的遗忘曲线算法,适合中长期记忆)、突击复习(加强复习频率,可能需要更多的时间来复习适用于最近2~3周将要考试的场景)、固定间隔(自定义固定间隔的复习频率)
‘简单’ 按钮用户点击简单按钮,系统会根据 简单 按钮下的参数,计算下次学习时间
‘一般’ 按钮用户点击一般按钮,系统会根据 一般 按钮下的参数,计算下次学习时间
‘困难’ 按钮用户点击困难按钮,系统会根据 困难 按钮下的参数,计算下次学习时间

各个参数后面 都有说明,说明了该参数的作用。

参数说明
数量设置按当前目录:不区分子目录,根据当前设置的数量来获取卡片。

每个子目录固定:根据该目录下的所有子目录已经更深的目录来获取卡片,如设置新卡20就会每个目录取20张卡片。

按子目录:不使用当前目录的数量限制,可自行为每个子目录设置不同的学习数量
每日新学每日新学卡片上限,支持两种模式切换:

按数量:直接设置每日新学卡片数量上限

按截止日期:选择截止日期后,系统根据截止日期自动计算每日新卡数量
每日复习每日复习卡片上限,当有卡片需要复习时,最多复习多少张卡片
新卡顺序顺序学习:按目录顺序、目录中卡片排序顺序安排

随机学习:随机安排

目录顺序&卡片倒序:按目录顺序、目录中卡片排序倒序安排

目录顺序&创建时间倒序:按目录顺序、目录中卡片创建时间倒序安排

创建时间倒序:不区分目录顺序,按所有卡片创建时间倒序安排
复习卡顺序到期顺序:按到期时间排序,逾期越久优先安排

到期随机:随机安排

目录顺序:按卡片所在目录的顺序安排
学习流程先学习再复习:先学新卡再复习到期卡片

先复习再学习:复习完之后再学新卡片

随机:新卡片和复习卡片随机出现
记忆模式默认:经过大量用户数据验证得出的较优的遗忘曲线算法,适合中长期记忆

突击复习:加强复习频率,可能需要更多的时间来复习,适用于最近2~3周将要考试的场景

固定间隔:自定义固定间隔的复习频率
卡片初始分每次复习时该卡片的初始分数,此分数影响下次复习的时间

计算公式:(上次复习间隔 * 分数 / 100) + 1
【简单】首次复习日新卡选择【简单】按钮则变为复习卡,此参数设置成为复习卡后的第一次复习的日期

之后的复习间隔由算法进行计算得出

填数字,例如:填 1 表示1天后即明天复习,填 4 表示4天后复习
【简单】得分【复习】类型的卡片选择【简单】按钮时增加卡片分数
【一般】首次复习日当新卡选择【一般】且完成了【额外学习次数】的情况下变为复习卡,此参数设置变成复习卡后的第一次复习的日期(0-100)

之后的复习间隔由算法进行计算得出

填数字,例如:填 1 表示1天后即明天复习,填 4 表示4天后复习
额外学习次数当新卡点击【一般】时先按此间隔进行学习,学习完成后首次复习日才会生效

单位分钟,用空格分隔,例如:设置"10 30"表示每张新卡需再进行2次学习,间隔分别是10分钟后、30分钟后才能成为复习卡

若留空则表示不增加学习次数直接变成复习卡
额外复习次数当复习卡点击【一般】时先按此间隔进行复习,复习完成后首次复习日才会生效,单位分钟,用空格分隔,例如:设置"10 30"表示此复习卡今天需要额外再复习2次,分别是10分钟后、30分钟后才算完成今日复习任务

若留空则表示今日只复习1次由算法自动计算下一个复习日
【一般】得分【复习】类型的卡片选择【一般】按钮时增加卡片分数
【困难】下次复习时间选择【困难】按钮时的下次复习时间(单位分钟)

例如:填1,表示1分钟后
【困难】得分【复习】类型的卡片选择【困难】按钮时减少卡片分数
最小间隔(天)下次复习最小不能小于此间隔(单位天)
最大间隔(天)下次复习最大不能大于此间隔(单位天)
更新学习数量的时间每天多少点更新学习数量(0-23点),全局生效
标记为已掌握卡片连续回答【简单】达到设定次数(1-100次)之后,此卡片会归类到已掌握类型,全局生效

工作流程

  1. 用户学习卡片
  2. 系统评估记忆状态
  3. 根据算法计算下次复习时间
  4. 将卡片加入复习队列