Amal的自适应课程基于半衰期回归(HLR)记忆模型,每个学习项目都有一个“半衰期”——回忆概率降至50%的时间。复习调度由公式p(回忆) = 2^(-Δ/h)驱动:待复习项目在孩子遗忘前自动提醒,已掌握项目则延长复习间隔。结合角色难度匹配,为每个孩子打造真正个性化的学习路径。
记忆数学原理
指数衰减模型
记忆不是线性减弱,而是呈指数曲线下降。复习后:
- 刚复习后:回忆概率100%
- 经过h小时:回忆概率50%(半衰期定义)
- 经过2h小时:回忆概率25%
- 经过4h小时:回忆概率6.25%
Amal安排下一次复习时机大约在回忆概率80%时,以达到效率最佳点。
示例:学习单词 “كتب”(写)
| 事件 | 时间 | 半衰期 | 回忆概率 | 下次复习 |
|---|---|---|---|---|
| 初学 | 第一天14:00 | 4小时 | 100% | 约18:00 |
| 正确复习 | 第一天18:00 | 8小时 | 98% | 第二天10:00 |
| 正确复习 | 第二天10:00 | 16小时 | 92% | 第三天14:00 |
| 正确复习 | 第三天14:00 | 32小时 | 87% | 第五天22:00 |
| 正确复习 | 第五天22:00 | 64小时 | 81% | 第八天20:00 |
| 稳定记忆 | 第八天20:00 | 128小时 | 79% | 第二周 |
经过5次正确复习,“كتب”大约每5天复习一次。孩子累计投入约30分钟,现能稳定回忆此词。
基于角色的难度匹配
系统根据学习行为自动识别三种角色:
初学者角色
- 比例:60%新内容,30%复习,10%挑战
- 示例:3个新字母,2个字母复习,1个简单单词
- 掌握度超过0.65自动升级
中级者角色
- 比例:40%新内容,40%复习,20%挑战
- 示例:2个新单词,2个单词复习,1个中等难度挑战
- 掌握度超过0.78自动升级
高级者角色
- 比例:20%新内容,40%复习,40%挑战
- 示例:1个新句子,2个复习,3个高难度理解任务
- 适合学习大师持续学习
无需手动选择,系统根据孩子表现自动调整。
基于内容槽的混合(内容三重奏)
每节自适应课程包含三个内容“槽”:
[新内容槽] (孩子未见项目)
↓
[复习槽] (需要间隔复习项目)
↓
[挑战槽] (稍高于当前水平项目)
比例随课堂动态调整:
- 孩子遇难时:增加复习内容比例
- 孩子表现佳时:增加挑战内容比例
- 实时角色调整确保最佳学习参与度
实现架构
数据库模型(UserItemMemoryModel):
user_id: "user_123"
item_id: "letter_ba"
concept_strength: 0.87 # 0-1刻度
half_life_hours: 32
exposures: 7
correct_count: 6
last_reviewed_at: 2026-03-28 18:45
next_review_due_at: 2026-03-30 20:45
核心函数:
calculate_half_life():根据答题结果调整半衰期h;正确时h乘以2,错误时h乘以0.5;曝光次数越多,记忆越稳定。calculate_next_review_time():基于目标回忆概率80%,计算下次复习时间间隔Δ = -h × log₂(0.8)recall_probability():计算当前回忆率,用以优先安排低记忆概率内容复习。
算法意义
没有HLR的应用:
- Duolingo:所有用户相同课程,无单项跟踪;
- 闪卡应用:用户手动决定复习时间;
- 结果:浪费时间复习已掌握项目,忽略遗忘项目。
Amal有HLR:
- 单独跟踪每个概念;
- 复习时间科学优化;
- 孩子仅投入有效学习时间;
- 学习速度比固定计划应用快40%。
常见问题
问:孩子多次答错怎么办?
答:半衰期减少(h乘以0.5),项目更频繁出现。系统耐心等待多次复习,正确次数增多后,半衰期再次延长。
问:能否手动调整孩子的角色水平?
答:系统自动侦测角色,家长可在设置中手动覆盖,但如果活动数据不符,应用会自动校正。
问:项目多久算“完全学会”?
答:一般5-8次正确率达标复习,历时2-3周,半衰期和练习频率影响周期。简单项目几天即可稳定,难项目可能需数月。

