Towards an Appropriate Query, Key, and Value Computation for Knowledge Tracing
面向知识跟踪的适当Q、K和V计算
ABSTRACT
知识追踪是通过学习活动对学生的知识进行建模的行为,是计算机辅助教育领域广泛研究的问题。 借助专注于目标预测相关信息的注意力机制,循环神经网络和基于 Transformer 的知识追踪模型的性能优于贝叶斯知识追踪和协同过滤等传统方法。 然而,当前最先进的知识追踪模型的注意力机制有两个限制。 首先,这些模型未能利用深度自注意力计算来进行知识追踪。 结果,随着时间的推移,他们无法捕捉练习和反应之间的复杂关系。 其次,为知识追踪的自注意力层构建Q、K和V的适当特征尚未得到广泛探索。 将练习和交互(练习-响应对)分别用作Q和K/V的通常做法缺乏经验支持。
在本文中,我们提出了一种新颖的基于 Transformer 的知识追踪模型,SAINT:分离的自注意力神经知识追踪。 SAINT 具有编码器-解码器结构,其中练习和响应嵌入序列分别进入编码器和解码器。编码器将自注意力层应用于练习嵌入序列,解码器将自注意力层和编码器-解码器注意力层交替应用于响应嵌入序列。这种输入分离允许我们多次堆叠注意力层,从而改善接收器操作特征曲线 (AUC) 下的面积。据我们所知,这是第一项提出用于知识跟踪的编码器-解码器模型的工作,该模型将深度自注意力层分别应用于练习和响应。
我们在一个活动的移动教育应用程序 Santa 收集的大规模知识追踪数据集 EdNet 上对 SAINT 进行了实证评估,该数据集有 627,347 个用户、72,907,005 个响应数据点以及自 2016 年以来收集的一组 16,175 个练习。结果表明,与当前最先进的模型相比,SAINT 在知识跟踪方面实现了最先进的性能,AUC 提高了 1.8%。
INTRODUCTION
创建一个个性化的教育代理,提供适合每个学生能力和需求的学习路径是人工智能在教育中的长期挑战。知识追踪是开发这种智能体的一个基本问题,其任务是根据学生随时间的学习活动预测学生对目标学科的理解。例如,可以预测学生正确回答给定练习的概率。跟踪学生的理解状态可以根据他们的能力和需求有效分配资源。
传统的知识追踪方法包括贝叶斯知识追踪 [3] 和协同过滤 [20, 11]。 随着深度学习在机器翻译、医疗保健和其他模式中的应用的进步,循环神经网络(RNN)和 Transformer [22] 等神经网络架构已成为知识追踪模型中的常见构建块。 这些模型有效地捕捉了学生学习活动随时间推移的复杂性质,通常表示为高维和顺序数据。 特别是,[12, 8] 使用带有注意力的 RNN 来预测学生对练习的反应的概率分布。 [14] 中的模型具有相同的目的,但它基于利用自注意力机制的 Transformer 模型。当学生进行不同的练习时,他们的技能与他们对之前练习的反应相关。 因此,注意力机制是知识追踪的自然选择,因为它们学会捕捉练习和响应之间的相互依赖关系,并赋予与预测相关的条目更多的权重 [13, 22]。
尽管它们有优势,但目前应用于知识追踪的注意力机制有两个限制,如图 1 所示。首先,以前的模型的注意力层太浅,无法捕捉不同练习和响应之间可能存在的复杂关系。 特别是,[12,8,14] 中的模型只有一个注意层,而 [14] 显示当自我注意层堆叠多次时性能会下降。 其次,构建适合知识追踪的Q、K和V的适当特征尚未得到彻底探索。 给定学生的一系列交互(练习响应对),以前的工作依赖于相同的配方:练习作为Q,交互作为k和v [12,8,14]。 其他选择可能会显著提高性能,因此需要进行测试。
在本文中,我们解决了寻找合适的方法来构建知识追踪的Q、K和V的问题。在一系列广泛的实证探索的支持下,我们提出了一种新颖的基于 Transformer 的知识追踪模型,SAINT:分离的自注意力神经知识追踪。 SAINT 由一个编码器和一个解码器组成,它们是由多头自注意力和逐点前馈网络组成的几个相同层的堆栈,如图 2 所示。编码器将练习嵌入序列作为Q、K和V,并通过重复的自我注意机制产生输出。解码器将响应嵌入的顺序输入作为Q、K和V,然后将自注意力和注意力层交替应用于编码器输出。与当前最先进的模型相比,分离练习序列和响应序列,并将它们分别馈送到编码器和解码器,是使 SAINT 通过深度自我捕捉练习和响应之间复杂关系的独特功能。
图2我们提出的模型 SAINT 的架构。与以前的模型不同,分离练习序列和响应序列并分别应用编码器和解码器是允许 SAINT 通过深度自注意力计算捕获练习和响应之间的复杂关系的显著特征。
我们对一个大型知识追踪数据集EdNet[2]进行了广泛的实验研究,该数据集由一个活跃的移动教育应用程序Santa收集,自2016年以来收集了16175个练习,该应用程序拥有627347个用户和72907005个响应数据点。我们将SAINT与当前最先进的模型和基于转换器的深度知识跟踪模型进行比较。我们的实验结果表明,SAINT优于所有其他竞争对手,并在知识追踪方面达到了最先进的水平,与当前的先进模型SAKT相比,该模型以接收器工作特性曲线(AUC)下的面积衡量,提高了1.8%。
总之,我们做出了以下贡献:我们提出了SAINT,一种新的基于变压器的编码器模型,用于知识跟踪,其中练习嵌入序列和响应嵌入序列分别进入编码器和解码器。SAINT通过深度自我关注的计算有效地捕捉到练习和反应之间的复杂关系。我们的经验表明,与目前最先进的知识追踪模型相比,SAINT在AUC方面实现了1.8%的增长。
RELATED WORKS
知识追踪是对学生在经历不同学习活动时随时间变化的知识状态的建模。这是计算机辅助教育领域中广泛研究的问题。例如,可以预测学生正确回答给定练习的概率。这种理解可以有效地分配适合每个学生能力和需求的资源。
传统的知识追踪方法包括贝叶斯知识追踪 (BKT) [3]、协同过滤 (CF) [20, 11] 等。 BKT 是一种经典的、突出的知识追踪方法,随着时间的推移已经被广泛研究 [3, 4, 23, 17, 15, 16, 21, 18, 9, 19]。 BKT 将学生的知识状态表示为二进制V的元组。 每个V代表学生是否理解单个概念。 这些V由隐藏的马尔可夫模型使用实际学生的回答进行更新。
随着深度学习 (DL) 的兴起,基于 DL 的知识跟踪模型,如运动感知知识跟踪 (EKT) [8]、神经教学代理 (NPA) [12] 和自注意力知识跟踪 (SAKT) [14]已被证明优于传统模型。 EKT 和 NPA 是双向长短期记忆 (Bi-LSTM) 模型,其注意力机制建立在顶层。 SAKT 是一个基于 Transformer 的模型,其中练习作为注意力Q,过去的交互(练习-响应对)作为注意力K/V。为了进行有效的知识追踪,需要分析学习活动数据不同部分之间的关系。注意力机制通过权衡数据中更相关的部分来进行预测,从而达到这个目的。
然而,基于深度学习的知识追踪模型目前有两个限制。 首先,注意力层很浅,因此它无法捕捉学生随着时间的推移而学习活动的复杂性,这些活动通常表示为高维和序列数据。 [14] 中的网络不将自注意力应用于交互和练习,而是直接使用嵌入层的潜在特征作为注意力层的输入。 此外,他们在交互和练习之间只使用一个注意力层。 [12, 8] 中的网络具有深层 LSTM 层,可以分析交互的顺序性质,但练习是直接嵌入的,而且它们仅在交互和练习之间使用单层注意力。
其次,尚未彻底探索适合知识追踪的注意力Q、K和V的不同特征组合。 所有 [12, 8, 14] 都使用相同的方法:给定学生的一系列交互,他们使用练习来构建Q,交互来构建K/V。 其他可能性,例如,在练习或反应上使用自注意力,仅举一种可能性,可能会提供实质性的改进,因此应该进行测试。
PROPOSED MODEL
问题定义
考虑到学生如何对一系列练习做出反应的历史,SAINT预测了学生正确回答特定新练习的可能性。形式上,学生练习记录为交互Ii = (Ei,Ri) 的序列I1......In。这里Ei表示练习信息,是给学生的第i个带有相关元数据 (例如练习类型) 的练习。类似地,响应信息Ri表示具有相关元数据 (例如学生响应的持续时间) 的学生对Ei的响应ri。如果学生的第i个响应正确,则学生响应ri ∈ {0,1} 等于1,如果不正确,则等于0。因此,SAINT被设计为预测学生正确回答第 i 个练习概率:
输入表示
SAINT采用练习信息E1、......、Ek和响应信息R1、......、Rk−1的序列作为输入,并预测第k个用户响应rk。SAINT中的嵌入层将每个Ei和Ri映射到潜在空间中的一个向量,生成练习嵌入序列Ee 1,···,Ee k和反应嵌入序列Re 1,··,Re k−1.该层嵌入了Ei和Ri的以下属性
• 练习 ID:一个潜在向量被分配给每个练习唯一的 ID。
• 练习类别:每个练习都属于领域主题的一个类别。 为每个类别分配一个潜在向量。
• 位置:输入序列中练习或响应的位置(第 1、第 2、...)表示为位置嵌入向量。 位置嵌入在练习序列和响应序列中共享。
• 响应:为学生响应ri 的每个可能V(0 或1)分配一个潜在向量。
• 已用时间:学生以秒为单位的反应时间被四舍五入为整数V。 一个潜在向量被分配给 0 到 300 之间的每个整数,包括 0 到 300。 任何超过 300 秒的时间都被限制为 300 秒。
• 时间戳:记录学生接受每个练习的绝对时间的月、日和小时。 为月、日和小时的每个可能组合分配一个唯一的潜在向量。
最终的嵌入 Ee i 或 Re i 是其构成属性的所有嵌入向量的总和(见图 3)。 例如,练习信息 Ei 由练习 ID、练习类别和位置组成,因此我们通过对相应的练习 ID 嵌入、类别嵌入和位置嵌入求和来构造练习嵌入 Ee i。 虽然我们没有直接在 SAINT 中嵌入交互 Ii,但我们将在基于 Transformer 的深度知识跟踪模型变体中使用交互嵌入进行比较。
深度自注意编码器-解码器.
我们提出的模型 SAINT,基于 [22] 中提出的 Transformer 架构,由编码器和解码器组成,如图 2 所示。编码器采用序列 Ee = [Ee 1, · · · ,Eek ] 的练习嵌入并将处理后的输出 O = [O1,····,Ok] 馈送到解码器。解码器采用 O 和另一个带有起始令牌嵌入 S的顺序输入 Re = [S,Re 1,···,Re k−1] 响应嵌入,并产生预测响应 ^r = [^r1,···, ^rk ]。
编码器和解码器是多头注意力网络的组合,是 SAINT 的核心组件,其次是前馈网络。与原始的 Transformer 架构不同,SAINT 为所有多头注意力网络屏蔽了与来自未来的信息相对应的输入,以防止无效参与。这确保了 ^rk 的计算仅取决于前面的练习 E1,···,Ek 和响应 R1,···,Rk-1。我们在以下小节中提供了架构的详细说明。
多头注意力网络
多头注意力网络采用 Qin、Kin 和 Vin,每个分别代表Q、K和V的序列。多头注意力网络只是将注意力网络应用于具有不同投影矩阵的相同输入序列 h 次。注意力层首先通过将矩阵 WQ i 、 WK i 和 WV i 和每个 Qin、Kin 和 Vin 相乘投影到潜在空间。
其中 q、k 和 v 分别是投影Q、K和V。 每个V与给定Q的相关性由Q和与该V对应的K之间的点积确定。
SAINT 中的注意力网络需要一种屏蔽机制,以防止当前位置关注后续位置。掩蔽机制用 -∞ 替换来自点积的矩阵 QiKT i 的上三角部分,在 softmax 操作之后,具有将后续位置的注意力权重归零的效果。注意力头,headi,是V Vi 乘以被掩蔽的注意力权重。
其中,d的平方根除以q和k的维数用于缩放。
h 个注意力头的串联乘以 WO 以聚合不同注意力头的输出。这个连接的张量是多头注意力网络的最终输出。
前馈网络
位置前馈网络应用于多头注意输出,为模型添加非线性,
其中,M=[M1,··,Mk]=多头(Qin、Kin 、 Vin),WFF 1,WFF 2,bFF 1和bFF 2是不同Mi之间共享的权重矩阵和偏差向量。
编码器
编码器是一堆 N 个相同的层,它们是前馈网络,后面是多头注意力网络。在公式中,每个相同的层是
其中,跳过连接[6]和层规范化[1]应用于每个子层。请注意,第一层的Qin、Kin和Vin是Ee,是练习嵌入的顺序,后续层的那些是前一层的输出。
解码器
解码器也是由N个相同层组成的堆栈,由多头注意网络和前馈网络组成。与编码器相似,跳过连接和层归一化应用于每个子层。每个相同的层由以下等式表示:
其中 O 是编码器的最终输出。解码器第一层的 Qin、Kin 和 Vin 都是带有 start token embeddings 的响应序列 Re,后面的层是上一层的输出。最后,一个预测层,由一个线性变换层和一个 sigmoid 操作组成,应用于最后一层的输出,以便解码器输出是一系列概率V。
基于transformer的深度知识追踪模型的变体
为了找到一种有效的知识追踪深度关注机制,我们对不同方式构建关注机制的QKV进行了广泛的实验。通过实验,我们探索了包括SAINT在内的具有多个堆叠注意力层的四种不同架构。在本节中,我们描述了其他三个模型的体系结构: 具有相互作用序列的下三角掩蔽变压器 (LTMTI),具有相互作用序列的上三角掩蔽变压器 (UTMTI) 和SAKT [14] 的堆叠变体 (SSAKT) (见图4)。
LTMTI
LTMTI模型分别通过练习Ek和过去的k-1个交互序列I=[I1,···,Ik−1] 预测反应rk。首先,编码器在加上起始令牌的过去的交互序列I上应用N次self attention,产生输出O=[O1,····,Ok]。然后,解码器的第一层将编码器输出O作为K和V,并将大小为k的常量序列Ek、··、Ek作为Q。下一个N−1层解码器将编码器输出O作为K和V,前一层的输出作为Q。LTMTI与SAINT的一个主要计算差异是,LTMTI将下三角遮罩应用于所有注意层,而不是SAINT中的上三角遮罩。这迫使LTMTI的第i个输出ˆrk,i只能从Ek和最近的(i−1) 互动推导。
请注意,LTMTI 的这一方面实际上是对训练数据的增强,其中历史被截断为各种长度。 也就是说,模型学习从单个输入推断具有多个过去交互历史 (Ek)、(Ik-1,Ek)、···、(I1、···、Ik-1,Ek) 的 rk。 对于测试,预测 ^rk 被定义为使用可用最长交互序列的输出 ^rk,i。
UTMTI
UTMTI模型遵循与SAINT相同的架构,只是在输入序列的选择上有所不同。与SAINT不同,UTMTI采用交互序列I1、.....、Ik−1作为编码器输入,练习序列E1,···,Ek作为解码器输入。这种方法遵循SAKT[14]和EKT[8]的注意机制。在SAKT中,练习作为Q嵌入,交互作为K和V嵌入。同样地,EKT通过一个深层Bi LSTM层处理交互序列,并将输出与由练习嵌入的余弦相似性给出的注意权重相结合。UTMTI遵循同样的模式,使用交互作为注意K/V,使用练习作为Q。
SSAKT
SSAKT 模型由一个单独的注意力块组成,该块使用练习嵌入作为Q,交互嵌入作为K/V。作者报告说,当注意力块堆叠多次时,AUC 会降低。 SSAKT 通过在把练习作为Q之前应用自注意力机制来解决此问题。练习自我注意块和练习交互注意块的输出进入相应的后续块作为其注意层的输入。
EXPERIENTS
数据集
我们对由 Santa 收集的大规模知识追踪数据集 EdNet [2] 进行了实验,该数据集是用于英语教育的活跃移动应用程序(图 6)。 Santa 是一款配备人工智能辅导系统的自学解决方案,可帮助学生准备国际交流英语 (TOEIC) 听力和阅读测试。 Santa 目前拥有 1,047,747 名注册用户,可在 Android 和 iOS 上使用。 该数据集包含自 2016 年以来收集的带有相应用户响应的多项选择练习。该数据集包含每个用户的交互历史记录。 交互历史是一系列记录,每个记录包含以下特征:用户收到每个练习的时间(Timestamp),每个练习唯一的ID(Exercise ID),每个练习所属的领域主题的类别 to(练习类别)、用户响应(Response)以及用户响应所用的时间长度(Elapsed time)(图5)。 该数据集共有 16,175 个练习和 72,907,005 个响应,有 627,347 名用户解决了多个练习。 我们根据用户将数据集分为三部分:训练集(439,143 个用户,51,117,443 个响应)、验证集(62,734 个用户,7,460,486 个响应)和测试集(125,470 个用户,14,329,076 个响应)(表 1)。
训练细节
超参数由第 4.4 节中的消融研究确定。我们从头开始训练模型,使用 Xavier 均匀 [5] 分布来初始化权重。窗口大小、丢失率和批量大小分别设置为 100、0.1 和 128。我们使用 Adam 优化器 [10],其中 lr = 0.001,β1 = 0.9,β2 = 0.999 和 epsilon = 1e−8。我们使用所谓的 Noam 方案来安排学习率,如 [22] 中将 warmup_steps 设置为 4000。我们选择在验证集上给出最佳结果的模型参数,并使用测试集对其进行评估。
实验结果
我们通过将 SAINT 与当前最先进的基于知识跟踪的方法和基于协同过滤的方法进行比较来评估它:多层感知器 (MLP) [7]、神经协同过滤 (NCF) [7]、神经教学代理 (NPA) ) [12] 和自注意力知识跟踪 (SAKT) [14]。在我们的实验中,我们使用了以前工作中常用的两个性能指标:接收器操作特征曲线下的面积(AUC)和准确度(ACC)。 AUC 显示对 1-特异性的敏感性(召回)。敏感性(resp.specificity)是正确预测为阳性(resp.negative)的真阳性(resp.negative)的比例。 ACC 是正确预测的比例。表 2 展示了我们评估的总体结果。它表明我们的模型在这两个指标上都优于其他模型。与当前最先进的模型相比,SAINT 的 ACC 高 1.1%,EdNet 数据集的 AUC 高 1.8 % .第 3.4 节中描述的其他基于 Transformer 的深度知识跟踪模型变体也比现有方法表现更好。
我们将经过充分训练、性能最佳的 SAINT 模型的注意力权重可视化,以分析 SAINT 的注意力机制。最后一个编码器和解码器块的自注意力权重显示出不同的趋势(见图 7)。这表明 SAINT 能够学习适合练习和响应的不同注意机制,并分别应用它们。图 8 显示了第一个解码器块的编码器-解码器注意力层的每个头部都以不同的模式参与练习序列。如图 9 所示,后面的解码器块中的注意力范围更加多样化。这可以解释为注意力机制捕获了值复杂性的增加,当值通过连续的解码器块时,这些值包含了练习和响应之间更复杂的关系。
消融研究
在本节中,我们将介绍建议模型的消融研究。首先,我们对具有不同超参数的每个架构进行消融研究。 图 10 显示,将深度注意力层分别应用于练习和响应的 SAINT 给出了最佳结果。SAINT 表现最好的模型有 4 层,潜在空间维度为 512。它显示 ACC 为 0.7368,AUC 为 0.7811。 在 SAINT 旁边,LTMTI 模型总体上显示出高 ACC 和 AUC。 这表明 LTMTI 中下三角掩码的数据增强效果提高了 ACC 和 AUC。 其次,当使用不同详细程度的输入进行训练时,我们评估性能最佳的SAINT模型。所有模型共享相同的嵌入方法进行练习。对于响应嵌入,嵌入A仅使用位置信息和用户响应值来构建响应嵌入,而嵌入B除了嵌入A使用的功能外,还使用练习类别,时间戳和经过时间。表3显示,使用更多信息来构建嵌入并没有改善结果。
CONCLUSION
在本文中,我们提出了 SAINT,这是一种具有深度注意力网络的最先进的知识追踪模型。我们凭经验展示了一种基于 Transformer 的架构,该架构在知识跟踪任务上表现出卓越的性能。此外,我们通过对注意力网络的Q、K和V的广泛实验表明,分别向编码器和解码器提供练习和响应是知识追踪任务的理想选择。此外,通过研究 SAINT 的注意力权重,我们发现编码器和解码器的自注意力结果表现出不同的模式。我们建议这支持我们的想法,即输入中的练习和响应的分离允许模型找到特别适合各自输入值的注意机制。最后,对大规模知识追踪数据集的 SAINT 评估表明,该模型优于现有的最先进的知识追踪模型。