# Skill: 知识点掌握度计算器
## 基本信息
- **技能名称:** 知识点掌握度精准计算器
- **适用场景:** 瓦拉英语课程知识点掌握度计算、用户学习效果评估、退费原因分析、内容优化数据支撑
- **核心价值:** 解决传统判定方法「跟读通过=掌握」的核心痛点,真实反映用户语言学习实际掌握情况
---
## 触发条件
当遇到以下场景时自动触发本技能:
1. 需要计算用户单个/整体知识点掌握程度
2. 分析退费用户学习效果
3. 评估课程内容设计合理性
4. 生成用户学情报告
---
## 核心计算公式
### 1. 变量定义
| 变量 | 定义 | 取值规则 |
|------|------|----------|
| $K$ | 目标知识点 | - |
| $N$ | 知识点$K$在所有互动组件中出现的总次数 | ≥1 |
| $S_i$ | 知识点$K$第$i$次出现所在组件的通过状态 | 1=通过,0=未通过 |
| $W_i$ | 知识点$K$第$i$次出现所在组件的类型权重 | 跟读/发音类=0.2
输入类(选择/匹配/拖拽/听力)=0.3
输出类(挖空/组句/口语/写作/看图说话)=0.5 |
| $M_i$ | 知识点$K$第$i$次出现的重复巩固权重 | 第1次出现=1.0(首次学习)
第2次出现=1.5(巩固练习)
第≥3次出现=2.0(强化掌握) |
### 2. 计算步骤
1. 单组件贡献得分:$Score_i = S_i \times W_i \times M_i$
2. 知识点总得分:$TotalScore = \sum_{i=1}^{N} Score_i$
3. 知识点满分值:$FullScore = \sum_{i=1}^{N} (W_i \times M_i)$
4. 最终掌握度:$MasteryRate = \frac{TotalScore}{FullScore} \times 100\%$
---
## 掌握度等级判定
| 掌握度区间 | 等级 | 判定说明 |
|------------|------|----------|
| ≥80% | ✅ 熟练掌握 | 知识点完全理解并能灵活运用,无需巩固 |
| 60%~79% | 🟢 基本掌握 | 知识点基本理解,简单场景能运用,建议少量巩固 |
| 40%~59% | ⚠️ 部分掌握 | 知识点理解不透彻,运用困难,需针对性巩固 |
| <40% | ❌ 未掌握 | 知识点未理解,需重新学习 |
---
## 使用示例
### 示例1:单知识点计算
知识点「dress n. 连衣裙」共出现6次:
| 出现顺序 | 组件类型 | 通过状态 | 权重 | 得分 |
|----------|----------|----------|------|------|
| 1 | 跟读类 | 是 | 0.2×1.0=0.2 | 0.2 |
| 2 | 输入类 | 是 | 0.3×1.5=0.45 | 0.45 |
| 3 | 输出类 | 是 | 0.5×2.0=1.0 | 1.0 |
| 4 | 输入类 | 是 | 0.3×2.0=0.6 | 0.6 |
| 5 | 输出类 | 是 | 0.5×2.0=1.0 | 1.0 |
| 6 | 输出类 | 是 | 0.5×2.0=1.0 | 1.0 |
> 总得分=4.25,满分=4.25,掌握度=100% → ✅ 熟练掌握
### 示例2:整体掌握度计算
用户共学习100个知识点,掌握度加权平均(核心知识点权重1.2,普通1.0,了解类0.8),得到整体掌握率68% → 🟢 基本掌握
---
## 数据要求
需要提供以下数据源:
1. 互动组件学习记录:包含组件ID、组件类型、对应知识点、通过状态、学习时间
2. 知识点元数据:包含知识点ID、名称、重要度等级、所属阶段
3. (可选)组件难度系数:用于同类型组件难度差异适配
---
## 可选优化点(扩展功能)
1. **难度系数适配**:同类型组件按难度设置系数,简单0.8,复杂1.2
2. **异常数据过滤**:过滤停留<2s的误操作组件、bug异常组件
3. **遗忘衰减系数**:超过30天的知识点掌握度×0.9/每30天,适配遗忘曲线
4. **高频梯度权重**:第≥6次出现的知识点重复权重提升至2.5,体现核心知识点价值