提出问题
知识追踪通过估计下一个问题是否正确解决来了解学生的知识获取过程的任务。大多数基于深度学习的方法通过从学习历史中识别知识状态的隐藏表示来解决这个问题。
由于学生与问题之间的互动很少,隐藏的表示很容易过拟合,往往不能准确地捕捉学生的知识状态。
本文提出应用于知识追踪的对比学习框架,该框架揭示了学习历史中语义相似或不相似的例子,并刺激学习者学习它们之间的关系。为了解决学习过程中获取知识的复杂性,我们仔细设计了对比学习的组成部分,如体系结构、数据增强方法和硬否定,并考虑到教学原理。
利用四种数据增强方法和hard negatives来揭示语义相似和不相似的学习历史,对比损失刺激学习它们之间的关系。
CL4KT
主要思想是通过将相似的学习历史放在一起,并将不同的学习历史在表示空间中分开来学习有效的表示。
为了对学生的学习历史进行编码,我们使用了多个Transformer编码器:
用于学习历史的问题编码器和交互编码器,以及预测对以下问题的回答的知识检索器。
在预测未来的响应时,我们使用单向编码器来防止未来的信息泄漏。
另一方面,在学习对比表示时,我们利用双向自关注编码器从两个方向总结学习历史的整个背景。
设计了特定于领域的数据增强方法,以反映每个学习历史的语义。
问题陈述
给定相互作用序列(s1, s2,…), st)和下一题qt+1, KT的目的是确定正确回答下一题的概率:
为了实现这一目标,大多数KT方法都假设了两个隐藏的表示形式,hQ t和hSt,它们分别在t时刻condense了大量的问题和交互。利用这些表示形式,KT任务被重新表述如下:
Response Prediction Framework
预测学习者对下一个问题的反应。因此,问题编码器和交互编码器的表述如下:
其中,mc表示因果掩码,具有消零后续位置的注意权重的作用。
fKR :知识检索器,将问题和交互表示结合起来进行下一次响应预测。
在知识检索器的注意模块中,hQ t+1成为一个查询,hQ 1:t为键,hS1:t为对应的值。也就是说,知识检索器捕获历史记录中的相关问题,并引用它们的响应结果以确定下一个响应。
损失函数:二元交叉熵损失。
Contrastive Learning Framework
学习语义相似(阳性)的样本之间相互接近的隐藏表示,
而远离语义完全不同(阴性)的样本之间的隐藏表示。
为了将CL应用到KT中:
1、Data Augmentation
2、Representation for Learning Histor
3、Contrastive Loss
(1)Data Augmentation
数据增强应用于每个学生的学习历史 s。得到了同一学习历史的两个相关视图,记为s+1和s+2,我们认为它们是正对。我们利用了几个增强模块的组合。这种组合反映了数据的不同方面,并使我们的CL框架对扰动更加健壮,从而显著提高了性能。
(2)Representation for Learning History
在对历史s进行编码时,我们通过将掩码m设置为mb,使用双向自注意,允许所有引用不归零。问题和互动的隐藏表现通过参考整个历史而自我进步。
整个问题和互动历史的表征定义如下: pool是平均池化层
在CL框架中用作比较的表示。
(3)Contrastive Loss
将语义上接近的正对拉到一起,并将负样本推开来学习有效的表示。对于每个学习历史,通过数据增强得到一个正对(s+1和s+2)。通过编码器,正对被转换成两对表示:(zQ,+1, zQ,+2)用于问题历史和(zS,+1, zS,+2)表示交互历史。
采用带有批内负数的交叉熵:
将来自同一小批内其他历史记录的增广样本的表示作为负表示: zQ,−和zS,−。最后计算对比损失LQ cl和LS cl:
Sim表示温度缩放余弦相似函数。
Learning History Augmentation
数据增强使每个学生在数据增强后的学习历史显示的熟练程度与之前相似。CL4KT使用多种数据增强方法生成学生学习历史的相关视图。
Hard Negative Samples of Learning History
在我们早期的实验中,我们观察到响应的变化,如掩蔽和替换,在数据增强形成正对方面是不利的。这是因为二进制响应变量的这些变化导致了实质性的语义差异。基于这一观察,我们反向响应产生硬负样本。对于每个示例,我们随机选择具有γ负概率的相互作用,并反转它们的响应: ̄rt = 1−rt。将硬否定的表示形式添加到式(7)中的ZS−中,以促进更好的学习。
Dataset
CL4KT LOSS:
Result
最后,文章也做了消融实验以及各种数据增强对KT模型的影响。