Advertisement

Context-Aware Attentive Knowledge Tracing文献笔记

阅读量:

模型思路

一个人的学习成果或解题思路往往与其之前的练习经历密切相关,并且这种影响会随着时间逐渐减弱。例如,在完成相同数量的五个习题(a,b,c,d,e)后,学生A和B分别记录了解答情况为(1,0,1,1,1)与(0,1,0,1,0)。当两人同时解答题目e时,则会对该题目的理解存在差异:从模型角度来看,在解答同一道题时不同人的理解(即同一个题目对不同解题经验的人来说意义不同),表现为该向量 x 并不固定;而针对同一道题目d,在两人均正确解答后,则会有不同的知识更新结果(在模型中表现为相应知识更新向量 y 将发生变化)。本文通过引入context-aware attention机制来刻画这种相互作用的影响机制。

模型设置

模型示意图

模型示意图

Rasch模型基于嵌入向量
将原始问题向量_x_与其对应的题项-反应向量_y_(原始为 raw question-response embeddings)整合到 Rasch Model 模型中:
\mathbf{x}_{t} = \mathbf{c}_{c_{t}} + \mu_{q_{t}} \cdot \mathbf{d}_{c_{t}},\\ \mathbf{y}_{t} = \mathbf{e}_{(c_{t},r_{t})} + \mu_{q_{t}} \cdot \mathbf{f}_{(c_{t},r_{t})}
其中\mathbf{c}_{c_t}表示该题项对应的概念或知识嵌入向量(embedding vector),\mu_{q_t}是一个缩放因子(scaling factor),用于表示题项难度(可理解为 Rasch model 中的 \beta 参数)。\mathbf{d}_{c_t}则代表该概念下所有题项的变异(variation)。而\mathbf{e}_{(c_{t},r_{t})}\mathbf{f}_{(c_{t},r_{t})}分别表示 concept-response 的嵌入向量和变异向量(embedding vectors and variation vectors)。
该模型通过在每个 concept 上应用均值加缩放因子乘以标准差的方式进行表示:即 mean+\mu_q\cdot sd。当 concept 相同时,在不同题项上仅会因为 \mu_q 的变化而产生差异。这表明同一概念下不同题项之间的难度差异性。
对于 y_t 向量同样采用 mean+\mu_q\cdot sd 的方式进行表示

在这里插入图片描述

其中符号e_{(c,t,r)}代表概念-回应嵌入的概念与回应之间的关系表达方式。符号f_{(c,t,r)}则表示对应题项所有概念-回应嵌入的变化程度。研究者为此提出了一个简洁的方法:将题项向量与反应类别对应的向量相加。具体而言,在这种设定下,

\mathbf{e}_{(c,t,r)} = \mathbf{v}_t + \mathbf{\gamma}_{r}

其中,

\mathbf{\gamma}_r

仅取两种可能值,

\gamma_0 \quad \text{和} \quad \gamma_1

分别对应于回答错误与正确的情况。

Question Encoder & Knowledge Encoder(基于上下文aware的表现形式)

在这里插入图片描述

其中,

在这里插入图片描述

进一步其中,

在这里插入图片描述

首先对整个学生的做题记录进行注意处理并经过Softmax进行归一化处理得到a_{t,\tau}值,在s_{t,\tau}\frac{q_t^Tk_{\tau}}{\sqrt{D_k}}这一项属于DKVMN模型中的常规查询操作部分,在前面定义的d(t,\tau)函数被用于查询context信息。其中|t-\tau|表示两个题目之间在时间上的先后顺序差异,在后面的求和项中则是衡量两个题目之间共同包含的概念数量多少的问题,并非简单的计数而是经过DKVMN查询并归一化后的概念层次关系量度。如果从\tau时刻到t时刻之间没有任何相同概念的题目存在,则不会对\tau时刻题目的影响施加衰减效果相当于将相同概念的两个题目视为连续执行(实际上中间可能穿插了其他概念类型的题目)。引入了带上下文感知的距离度量d(t,\tau)后采用该距离值来进行带有上下文信息的关注度计算。在s_{t,\tau}计算式中还引入了一个学习参数\theta用于控制时间间隔对注意力权重的影响程度。

Knowledge Retrieval System
在本部分中同样采用了DKVMN模型,在t时刻通过题目向量\hat{q_t}与历史知识状态k_{i}进行点积计算,在经过单调注意力机制进行衰减处理后的结果再与当前时刻用户的知识状态向量进行点积运算(我的理解:系统中存在一个固定的DKVMN结构,利用用户在每个时间点的item-response向量作为查询词,在历史记录中检索对应的value值,这些value值代表了该时间点用户的知识状态)。将所有这些检索到的知识信息进行汇总后得到当前时刻的知识状态表示h_t。这个h_t反映了用户基于以往经历的所有题目的综合理解和掌握情况。

模型效果

在这里插入图片描述

该模型在三个不同公开数据集上均表现出最佳预测效果。值得注意的是,在其中两个数据集ASSISTment2009和ASSISTment2017由于具备知识点标注这一关键特征,因此能够采用Rasch model来进行嵌入(其中符号R代表应用了该方法)。通过分析可以看出,在当前系统中实现context-aware attention与使用Rasch model embedding这两种技术均能显著提升模型性能。此外,进一步研究表明,在当前系统中采用Rasch model embedding不仅可以将不同问题能够在同一个嵌入空间中被表示出来(从而使得同一概念的不同问题能够在同一个空间中被关联),而且还能根据题目的难度进行区分。

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~