神经认知诊断 代码仓库:https://github.com/shinkungoo/SymbolicCDM
摘要
- 认知诊断的泛化和可解释性同等重要,但是大多方法因为学生和练习的复杂关系很难两全其美,所以提出符号认知诊断,提高概括性和可解释性
- SCD 框架使用符号树解释交互函数,利用梯度下降学习学生和练习参数
- 因此使用遗传算法来优化离散的符号树
- 使用 adam 梯度下降优化学生与练习的关系参数
相关工作
认知诊断 CDM、IRT 都能反应学生潜在特征与练习的相互作用 但是这并不能描述复杂的关系,因此神经认知诊断应运而生 虽然在泛化能力上很强,但依旧是一个黑箱,我们仍需要在教育场景中重视可解释性 因此可以考虑符号回归,这是通过筛选数学运算符来探索合适的数学表达式 在认知诊断的相关工作上很少,本文中提出平衡了交互函数和诊断结果的泛化性和可解释性的 scd 框架
预备工作
单调性假设
在学生对相关知识属性的熟练程度的任何维度上,正确回答练习的概率单调递增
问题定义
给出学生、做的题目、作对与否三元组,和 Q 矩阵,估计交互函数和知识熟练程度,交互函数指的是学生与题目的之间的交互关系。
遗传算法
旅行商问题、初代,子代微调、繁衍、一直下去停止时会有一个不错的子代 (对树的深度优先搜索)
Symbolic Congnitive Diagnosis (SCD)
诊断因素
熟练水平
直接评估学生的熟练程度,不适用潜在向量入 IRT,在连续参数优化模块中学习
练习特征
分成两类
- 第一类是练习与属性的相关性,即 Q 矩阵
- 第二类是可添加的练习参数,如难度、区分度
交互函数
模拟学生完成练习,得到结果的过程,使用符号回归得到交互函数的原因有
符号认知诊断框架
参数优化
- 先进行参数优化,然后再离散的优化
- 连续参数的初始化显著影响模型
- 连续参数比符号回归简单
- 人工设计的简单交互函数 sigmoid 可用
- 已经被证明可以有效地近似教育领域中未观察到的交互函数
模型实现
连续参数优化由 adam 实现 符号回归由遗传算法实现 混合优化由替换优化实现
- T 为迭代次数
- 先对初始化的函数、参数进行梯度下降更新参数
- 随机初始化种群:一组交互函数 (V 个交互函数)
- TGP 为遗传算法的迭代次数
- 对种群进行重组和变异
- 评估种群中的所有交互函数,进行选择
- 遗传结束后,找到 F 中最合适的函数
实验设置
baseline 有 IRT、MRIT、DINA、NCDM 数据集有 math1、math 2、FracSub、NeurIPS 20 泛化指标 AUC、F 1、ACC 可解释性指标:一致程度 DOA: 遗传细节设置:遗传算法种群 200、遗传 10 代,重组概率 0.5-0.1,函数集 adam learning rate:0.002 测试集比例:0.2
DOA
直观解释:学生 a 回答知识点 i 相关题目准确率高于学生 b,那么学生 a 对知识点 i 的熟练程度应该高于b
表示如果学生 a 的知识点 掌握程度
,表示如果 a 学生知识点熟练程度大于 b 学生为 1,否则为 0
,表示第 j 题含有第 i 个知识点为 1,否则为 0
学生 a,b 都完成了题目 j 则为 1,否则为 0
所以这理解为 ab 学生都完成了题目 j,且 a 学生的回答不比 b 学生差就为 1,否则为 0
所有考了 i 知识点的题目、且 ab 学生都做了、且 a 学生回答不比 b 学生差为的数量
第 i 知识点,所有 a 学生的掌握情况不比 b 学生差的数量,是一个固定的数值
综合来看就是,在 a 学生对知识点 i 掌握情况不比 b 学生差的人中,实际上 a 对于 i 相关的题目的回答也不比 b 差的人还剩多少
我觉得他是错的,应该还要乘以 Iji 的求和
所以可解释指标是
实验结果
问题 1 泛化性能
不是特别领先,用图说明了
问题 2 可解释性能
优于现有 cdm 模型
问题 3消融实验
只用初始化的值 SCDM w.o. GP 不用遗传优化,指进行梯度下降结束 SCDM w.o. Adam 不用梯度下降优化,只用遗传找函数
问题 4 超参数分析
遗传、交叉、变异、种群规模