AMAS 自适应算法
Adaptive Mastery Acquisition System 是系统的核心学习引擎。
工作流程
┌─────────────┐
│ 用户作答 │
└──────┬──────┘
▼
┌──────────────┐ ┌────────────────┐
│ ELO 评分 │────▶│ 记忆模型更新 │
│ (难度匹配) │ │ (遗忘概率预测) │
└──────┬───────┘ └───────┬────────┘
▼ ▼
┌──────────────────────────────────┐
│ 智能选词决策引擎 │
│ 综合:遗忘概率 × 难度匹配 × │
│ 学习阶段 × 疲劳状态 │
└──────────────┬───────────────────┘
▼
┌──────────────────────┐
│ 下一批学习词汇 │
│ (动态调整批量大小) │
└──────────────────────┘核心组件
- ELO 系统:借鉴国际象棋评分,为用户和单词分别维护评分,实现精准难度匹配
- 多模型记忆曲线:支持多种遗忘模型的集成预测
- 实时策略调整:根据用户疲劳度和近期表现,动态调节新词比例、难度区间和每批词量
冷启动阶段
AMAS 引擎包含三个冷启动阶段:
| 阶段 | 说明 |
|---|---|
| Classify | 初始分类,快速评估用户水平 |
| Explore | 探索阶段,测试不同难度范围 |
| Normal | 常规阶段,稳定的个性化推荐 |
算法决策结果
每次答题后,AMAS 返回包含以下信息的决策结果:
- 策略参数:难度范围、批量大小、新词比例、复习模式
- 决策解释:主要原因及影响因子
- 用户状态:注意力、疲劳度、动机、信心
- 单词掌握度:记忆强度、回忆概率、下次复习间隔、掌握等级
代码结构
src/amas/
├── engine.rs # 引擎核心
├── elo.rs # ELO 评分系统
├── memory/ # 记忆模型(遗忘曲线)
├── decision/ # 决策层
├── word_selector.rs # 智能选词
├── config.rs # 算法参数配置
├── metrics.rs # 性能指标
└── monitoring.rs # 引擎监控