Addressing Two Problems in Deep Knowledge Tracing via Prediction-Consistent Regularization

Addressing Two Problems in Deep Knowledge Tracing via Prediction-Consistent Regularization

Abstract

知识追踪是赋予个性化教育的关键研究领域之一。它的任务是根据学生的历史学习轨迹来模拟学生对某一知识组件(KC)的掌握程度。近年来,人们提出了一种称为深度知识追踪(DKT)的循环神经网络模型来处理知识追踪任务,文献显示DKT通常优于传统方法。然而,通过我们大量的实验,我们注意到DKT模型存在两个主要问题。第一个问题是,该模型无法在预测结果中重现观察到的输入的信息。因此,即使一个学生在某个KC上表现良好,对该KC的掌握程度的预测反而会下降,反之亦然。第二,不同时间段对KC的预测成绩并不一致。这是不可取的,也是不合理的,因为学生的成绩预计会随着时间的推移而逐渐提高(意思是学生对知识点的掌握情况应该随时间缓慢变化)。为了解决这些问题,我们在原始DKT模型的损失函数中引入了对应于重构和波动的正则化项,以提高预测的一致性。实验表明,正则化的损失函数有效地缓解了这两个问题,而没有降低DKT的原始任务。

1 Introduction

2 Background

在2000年,学习因素分析(LFA)[1]被提出来,使用逻辑回归模型对学生的知识状态进行建模,以处理多KCs问题,并将学生的能力纳入模型。有一种对LFA的重新配置,称为表现因素分析(PFA)[11],它对学生的表现而不是学生的能力提供了更高的敏感性。LFA和PFA都利用应用KC的成功或失败的次数来预测学生是否掌握了KC的知识。尽管LFA和PFA都能处理与多个KC相关的学习任务,但它们不能处理KC之间固有的依赖关系,例如,"加法 "是 "乘法 "的前提条件。此外,LFA和PFA中使用的特征相对简单,它们不能对学生的潜在知识状态提供深入的洞察力。

最近,随着人们对深度学习模型的兴趣大增,DKT[12]基于RNN对学生的知识状态进行建模,已被证明优于传统模型,如BKT和PFA,不需要人为设计的特征,如回顾性效应、情境化试验序列、技能间关系和学生的能力变化[6]。自从DKT被提出以来,已经有一些全面的研究报告,将DKT与其他KT模型进行比较[18, 19],或者将DKT的思想应用于其他应用[14, 16, 15]。然而,据我们所知,所有这些文献中的尝试主要是根据ROC曲线下的面积(AUC)指标来评估DKT模型对下一个交互作用的预测,而没有考虑预测结果中的其他质量方面。

Review of Deep Knowledge Tracing

循环神经网络 DKT 采用 RNN 作为其主干模型(见图 2)。 (vanilla) RNN [7] 旨在将输入序列 (x1, x2, . . . , xT ) 映射到输出序列 (y1, y2, . . . , yT )。为了将输入映射到输出,输入向量通过隐藏层进行一系列转换,该层捕获人类工程师难以捕捉的有用信息,并形成隐藏状态序列(h1、h2、…、hT )。更具体地说,在时间步 t 处,隐藏状态 ht 是到时间步 t-1 之前获得的过去信息(即 ht-1)和当前输入 xt 的编码。输入到隐藏变换和隐藏到输出变换可以用数学方式表述如下: ht = tanh(Whxxt + Whhht−1 + bh) (1) yt = σ(Whyht + by) (2) 其中双曲正切 tanh(·) 和 sigmoid 函数 σ(·) 以元素方式应用。该模型由权重矩阵 W 和具有适当维度的偏置向量 b 参数化。

皮耶希等人。 [12] 采用具有长短期记忆 (LSTM) 单元的 RNN 变体。 LSTM 单元包含三个门来模仿人类记忆系统 [8] 以计算隐藏状态 ht 。这三个门是遗忘门 ft 、输入门 it 和输出门 ot ,它们控制着存储单元状态 ct 。在数学上,它们只是基于当前输入 xt 和先前隐藏状态 ht−1 计算的三个向量: ft = σ(Wf[xt , ht−1] + bf), it = σ(Wi[xt , ht−1 ] + bi), ot = σ(Wo[xt , ht−1] + bo),其中 [·] 表示串联。不同的门扮演不同的角色来控制哪些信息应该存储在 ct 中。遗忘门 ft 决定从先前的存储单元状态 ct-1 中忘记哪些信息,而输入门则决定应该将哪些新信息 c~t 添加到最近的单元状态 ct 中。因此,最近的单元状态 ct 取决于遗忘后的先前单元状态和从输入门添加的新信息。最终,输出门 ot 确定应该从 ct 中提取哪些信息以形成隐藏状态 ht 。这些可以用数学方式表示如下:c˜t = tanh(Wc[xt, ht−1] + bc), ct = ft ⊗ ct−1 + it ⊗ c˜t , ht = ot ⊗ tanh(ct), ( 3) 其中 ⊗ 表示逐元素乘法。这种公式使 RNN 能够存储发生在距离历史中的信息,因此具有比普通 RNN 更强大的能力。展开的 RNN 架构如图 2 所示,其中包含对 DKT 的高级解释。

图 2:用于 DKT 的 RNN 架构的展开版本。 隐藏状态在 vanilla RNN(等式(1))或 LSTM-RNN(等式(3))中的处理方式不同。 h0 是 RNN 中的初始隐藏状态,通常随机初始化或初始化为零向量。
输入层:矢量化问答交互传入网络以更新隐藏状态。
隐藏层:知识状态的潜在编码,基于知识状态的当前输入和先前的潜在编码。
输出层:预测的知识状态,基于当前隐藏状态,即知识状态的潜在编码。

要训​​练 DKT 模型,需要将交互 (qt , at) 转换为固定长度的输入向量 xt 。由于问题可以通过唯一 ID 进行标识,因此可以使用 onehot 编码将其表示为向量 δ(qt)。如果学生回答正确,相应的答案标签也可以表示为相应问题的 one-hot 向量 δ(qt),否则表示为零向量 0。因此,如果有 M 个唯一问题,则 xt ∈ {0, 1} 2M。

转换后,DKT 将 xt 传递到隐藏层,并使用 vanilla RNN 或 LSTM-RNN 计算隐藏状态 ht。由于隐藏状态总结了过去的信息,因此可以将 DKT 中的隐藏状态视为学生过去学习轨迹导致的潜在知识状态。然后将此潜在知识状态传播到输出层以计算输出向量 yt ,它表示正确回答每个问题的概率。对于学生 i,如果她有一系列长度为 Ti 的问答交互,则 DKT 模型将输入(xi 1 , xi 2 , … , xi Ti )映射到输出(yi 1 , yi 2 , . . , yi Ti ) 相应地。

DKT 的目标是预测下一个交互性能,因此将通过执行输出向量 y i t 和下一个问题的 onehot 编码向量 δ(q i t+1 ) 的点积来提取目标预测。基于预测输出和目标输出 ai t+1 ,损失函数 L 可以表示为: L = 1 Pn i=1 (Ti − 1)   Xn i=1 T Xi −1 t=1 l yit · δ(qi t+1 ), ai t+1   (4) 其中 n 是学生人数,l(·) 是交叉熵失利。

3 Some problems of DKT and their remedies

当我们使用 ASSISTment 在 2009 年提供的技能构建器数据集(表示为 ASSIST2009)2 在 [12] 中提出的原始 DKT 上复制实验时,我们注意到 DKT 的预测结果中有两个主要问题。首先,它有时无法重建输入观察,因为预测结果是违反直觉的。当学生正确/错误地回答技能 si 的问题时,该学生正确回答 si 的预测概率有时会降低/增加。其次,随着时间的推移,预测的知识状态是波动的和不一致的。这是不可取的,因为预计学生的知识状态只会随着时间的推移逐渐稳定地过渡。因此,我们提出了三个正则化项来纠正 DKT 预测中的一致性问题:重构误差 r 来解决重构问题,波纹度测量 w1 和 w2 来平滑预测的知识状态转换。

Reconstruction Problem

正如我们从图 1 中看到的,当学生错误地回答 s32 时,与前一个时间步相比,正确回答 s32 的概率显着增加。这个问题可以归因于 DKT 模型(方程(4))中定义的损失函数。具体来说,损失函数只考虑下一次交互的预测性能,而不考虑当前交互的预测性能。因此,当输入顺序 ((s32, 0), (s33, 0)) 出现的频率足够高时,DKT 模型将倾向于学习,如果学生回答 s32 错误,他/她可能会错误地回答 s33,而不是 s32 .因此,对于当前观察到的输入,预测结果是违反直觉的。

然而,有人可能会争辩说,预测中的这种转变表明 s32 是 s33 的先决条件。这是因为仅当 DKT 模型接收 (s33, 0) 时,s32 的预测性能较低,而当 DKT 模型接收 (s32, 0) 时,它的预测性能更高。为了反驳上述论点,我们将通过反驳来弹劾。我们假设,如果 s32 确实是 s33 的先决条件,那么当学生在当前时间步中错误地回答了 s32 时,他/她更有可能在下一个时间步中错误地回答 s33,反之则不然。为了验证这个假设,表 1 和表 2 列出了当 s32 和 s33 以不同顺序连续出现时的频率计数。根据上述假设,预计表 1 中右下角单元格的值将大于左下角单元格的值,但表 2 中不会。

从表 1 中,我们可以看出,如果学生在当前时间步中答错了 s32,那么他/她很有可能在下一个时间步中答错 s33。然而,表 2 显示,如果学生回答 s33 错误,他/她也更有可能在下一个时间步错误回答 s32。这意味着逆依赖也存在并且与上述假设相矛盾,因此 s32 是 s33 的先决条件的陈述变得有问题。此外,这两个矩阵的分布表明 s32 和 s33 很可能是相互依赖并同时获得的。

如果s32不是s33的先决条件,应该同时获得,那么在DKT中处理s32和s33这样的情况应该还有改进的余地。如上所述,我们注意到损失函数只考虑了下一次交互的预测性能,而忽略了当前的性能。缓解该问题的直接补救措施是通过考虑预测和当前交互之间的损失来规范 DKT 模型。通过这样做,模型将根据当前输入调整预测。
因此,重构问题的正则化项定义如下: r = 1 Pn i=1 (Ti − 1)   Xn i=1 T Xi−1 t=1 l yit · δ (qit ), ait   . (5)

Wavy Transition in Prediction

第二个问题是学生的预测知识状态的波浪形过渡。这个问题可能归因于RNN中的隐藏状态表示。隐性状态ht是由之前的隐性状态ht-1和当前的输入xt决定的。它在一个单一的隐藏层中总结了学生的所有练习的潜在知识状态。尽管很难解释隐藏层中的元素是如何影响KC的预测性能的,但通过对输出层的正则化,将隐藏状态的表示限定为更加不变是合理的。

我们定义了两个波浪度量w1和w2作为正则化项来平滑预测中的过渡:
w 1 = ∑ i = 1 n ∑ t = 1 T i − 1 ∥ y t + 1 i − y t i ∥ 1 M ∑ i = 1 n ( T i − 1 ) , w 2 2 = ∑ i = 1 n ∑ t = 1 T i − 1 ∥ y t + 1 i − y t i ∥ 2 2 M ∑ i = 1 n ( T i − 1 ) . \begin{aligned} w_1 &= \frac {\sum_{i=1}^{n} \sum_{t=1}^{T_i - 1} \| y^{i}_{t+1} -y^{i}_{t} \|_{1}} {M\sum_{i=1}^{n} (T_i - 1)}, \\ w^2_2 &= \frac {\sum_{i=1}^{n} \sum_{t=1}^{T_i - 1} \| y^{i}_{t+1} -y^{i}_{t} \|_{2}^{2}} { M\sum_{i=1}^{n} (T_i - 1)} . \end{aligned} w1w22=Mi=1n(Ti1)i=1nt=1Ti1yt+1iyti1,=Mi=1n(Ti1)i=1nt=1Ti1yt+1iyti22.
为了量化两个预测向量的差异程度,L1范数、L2范数用于衡量t时刻和t+1时刻预测结果的差异。这类似于弹性网络正则化(elastic net regularization)。这两个度量在输入时间步长的总数和 KC 的数量 M 上取平均值。因此,w1的值可以看做输出向量的每个分量在yt和yt+1之间的平均值变化,w1和w2的值越大,模型的波动就越大。总而言之,通过合并三个正则项来增强原始损失函数,从而得到以下正则损失函数
L ′ = L + λ r r + λ w 1 w 1 + λ w 2 w 2 2 \begin{aligned} \mathcal{L}' = \mathcal{L} + \lambda_r r + \lambda_{w_1} w_1 + \lambda_{w_2} w_2^2 \end{aligned} L=L+λrr+λw1w1+λw2w22
λr、λw1、λw2是正则化参数,通过训练这个新的损失函数,DKT模型可以解决以上两个问题。

4 Experiments

4.1 Implementation

Experiment settings

80%的数据作为训练集,20%作为测试集。训练集使用5-fold交叉验证,用于选择超参数。测试集用于评估模型,并且also to perform early stopping.参数w使用高斯分布进行初始化,0均值和小方差。为了公平比较,我们遵循[12]中的超参数设置,即使它可能不是最佳选择。状态大小为200的单层RNN-LSTM被用作DKT模型的基础。
learning rate = 0.01
dropout rate = 0.5
set the norm clipping threshold to 3.0
此外,使用ASSIST2009数据集的初步试验表明,使用题目标签作为y会导致数据稀疏并且性能下降,所以我们选择使用知识点标签作为y标签。
(An AUC of 0.73 if 26,668 exercise IDs are used; an AUC of 0.82 if 124 unique skill IDs are used.)

Hyperparameter search

我们对正则化参数λr、λw1和λw2进行超参数搜索。首先,对每个参数进行单独检查,以便根据后面要解释的一些评估措施确定一个能产生好结果的值范围。
λr、λw1、λw2三个参数的初始范围分别为
{0, 0.25, 0.5,1.0}
{0, 0.001, 0.003, 0.01, 0.03, 0.1, 0.3, 1.0, 3.0, 10.0}
{0, 0.001, 0.003, 0.01, 0.03, 0.1, 0.3, 1.0, 3.0, 10.0, 30.0,100.0}
在缩小每个参数的范围后,对λr、λw1和λw2的组合进行了网格搜索,三个参数的范围为:
{0, 0.05, 0.10, 0.15, 0.20, 0.25}
{0, 0.01, 0.03, 0.1, 0.3, 1.0}
{0, 0.3, 1.0, 3.0, 10.0, 30.0, 100.0}

Evaluation Measures

DKT 的性能通常由 AUC 评估,它为二元预测评估提供了一个强大的度量。
AUC 分数为 0.5 表明模型性能仅与随机猜测一样好。在本文中,我们不仅报告了下一次性能预测的AUC(为清晰起见,本文命名为AUC(N)),这相当于[12]中的评价,而且还报告了关于输入观测的重建准确性和一致性以及预测结果的波动性的五个其他数量。
AUC(N) = AUC for the next performance prediction
AUC© = AUC for the current performance prediction
使用m1和m2来衡量输入和相应预测之间的一致性
对于学生i,在时间t,我们定义:
m 1 , t i = ( − 1 ) 1 − a t i  sign ( ( y t i − y t − 1 i ) ⋅ δ ( q t i ) ) , m 2 , t i = ( − 1 ) 1 − a t i ( ( y t i − y t − 1 i ) ⋅ δ ( q t i ) ) , a n d m 1 = ∑ i = 1 n ∑ t = 2 T i m 1 , t i ∑ i = 1 n ( T i − 1 ) , m 2 = ∑ i = 1 n ∑ t = 2 T i m 2 , t i ∑ i = 1 n ( T i − 1 ) . \begin{aligned} m_{1,t}^{i} &= (-1)^{1-a_t^i} \text{ sign}\left( (y_t^i - y_{t-1}^i) \cdot \delta(q_t^i) \right), \\ m_{2,t}^{i} &= (-1)^{1-a_t^i} \left((y_t^i - y_{t-1}^i) \cdot \delta(q_t^i) \right), \end{aligned} and \begin{aligned} m_1 &= \frac { \sum_{i=1}^{n} \sum_{t=2}^{T_i} m_{1,t}^{i} } {\sum_{i=1}^{n} (T_i - 1) },\\ m_2 &= \frac { \sum_{i=1}^{n} \sum_{t=2}^{T_i} m_{2,t}^{i} } {\sum_{i=1}^{n} (T_i - 1) }. \end{aligned} m1,tim2,ti=(1)1ati sign((ytiyt1i)δ(qti)),=(1)1ati((ytiyt1i)δ(qti)),andm1m2=i=1n(Ti1)i=1nt=2Tim1,ti,=i=1n(Ti1)i=1nt=2Tim2,ti.
因此,当模型给出相对于输入的正确预测变化时,我们将获得 m i 1,t 和 m i 2,t 的正值。 否则将获得负值。
当模型针对输入给了正确的预测变化,对于mi1t和mi2t就获得了正值,否则将获得负值。
m1为正:表示一半以上的预测与输入数据相符;
为0:表示模型使得一半的预测值朝着正确方向变化,另一半朝着错误方向变化;
负值:表示模型做出的预测一半以上都是朝着错误方向变化
m2也是如此
因此,从当前观测的预测一致性的角度来看,m1和m2的值越高,模型越好。此外,波浪度量w1和w2也被用作性能指标,以量化模型中其他KC的预测一致性。
一个好的DKT模型应该既有高的AUC,又有低的波动。

4.2 Datasets

ASSISTment 2009 (ASSIST2009) :这个数据集是由ASSISTments在线辅导平台提供的,并且已经在几篇论文中被用于评估DKT模型。由于原始数据集[19]中存在重复的记录,我们在进行实验前已经将其删除。由此产生的数据集包含4,417名学生,有328,291个来自124种技能的问题-回答互动。该数据集中的一些学生被用于可视化预测结果。
ASSISTment 2015 (ASSIST2015) 这个数据集包含100个技能的19,917个学生的回答,共有708,631个问题-回答的互动。虽然它包含的互动比ASSIST2009多,但由于学生人数较多,每个技能和学生的平均记录数实际上较少。
ASSISTment挑战赛(ASSISTChall)这个数据集已被提供给2017年的ASSISTments数据挖掘竞赛。它在每个学生的平均记录数方面比较丰富,因为有686名学生,有942,816次互动和102项技能。
Statics2011 这个数据集来自于一门工程静力学课程,有来自333名学生的189,927次互动和1,223个练习标签。我们采用了[21]提供的处理后的数据,训练/测试分割比例为70:30,练习标签也被使用。
Simulated-5 Piech等人[12]也模拟了2000个虚拟学生的答题轨迹,其中的练习来自五个虚拟概念。每个学生回答相同序列的 50 个练习,每个练习都有一个概念 k ∈ {1, . . . , 5} 和难度级别 β,具有解决与技能 k 相关的任务的指定能力 αk。学生正确回答练习的概率基于传统的项目反应理论定义为 p(correct|α, β) = c + 1−c 1+exp(β−α) ,其中 c 表示猜对的概率正确并设置为 0.25。

4.3 Results

实验结果显示在表 3 中,表 3 给出了关于所有评估措施的 DKT 模型有和没有正则化的比较。为了清楚起见,这里没有正则化的 DKT 模型简单地表示为 DKT,而有正则化的 DKT 模型表示为 DKT+。
在这里插入图片描述表 3:报告了 DKT(λr = λw1 = λw2 = 0.0)和 DKT+ 模型的评估措施的平均测试结果,以及它们与 3 次试验的标准偏差。 为 DKT+ 报告的超参数设置使用 5 折交叉验证根据以下程序选择:(1)选择 w1 值低于 DKT 的 DKT+ 模型,以及(2)其中,选择最高的 DKT+ AUC(N) + AUC© + m1 + m2 的值。

对于 ASSIST2009 数据集,DKT 的平均测试 AUC(N) 为 0.8212,而 DKT+ 的性能稍好一些,AUC(N) 为 0.8227。然而,对于 DKT+,AUC© 有相当大的改善,从 0.9044 增加到 0.9625。波纹量也显着降低,w1 从 0.0830 到 0.0229,w2 从 0.1279 到 0.0491。此外,虽然 DKT 已经使一半的预测朝着正确的方向改变,但 DKT+ 进一步将 m1 和 m2 的值分别从 0.3002 提高到 0.4486 和从 0.0156 提高到 0.0573。

在 ASSIST2015 中也观察到评估措施的类似改进。与 DKT 相比,DKT+ 保留了类似的 AUC(N),为 0.7371。 AUC©、m1 和 m2 的值分别提升至 0.9233、0.8122 和 0.0591。而且,DKT+中w1和w2的值只有DKT的一半。

至于ASSISTChall,虽然AUC(N)的性能在DKT+中从0.7343略微下降到0.7285,但相对于其他评估标准的改进非常显着。DKT+ 将 AUC© 从 0.7109 推至 0.8570,并将 w1 从 0.0690 降低至 0.0147,将 w2 从 0.1045 降低至 0.0301。此外,DKT+ 还提高了 m1 和 m2 的性能,分别从 0.1151 到 0.3052 和从 -0.0055 到 0.0441。

对于statics2011,观察到AUC(N) 和AUC© 均显着增加,分别从0.8159 到0.8349 和从0.7404 到0.9038。此外,w1 和 w2 分别从 0.1358 缩小到 0.0074 和从 0.1849 缩小到 0.0130。
w1 和 w2 的这种大幅下降将归因于数据集中的大量练习,因为波纹正则化器的作用是限制与输入无关的那些练习的预测变化。由于可能存在大量不相关的练习,因此 w1 和 w2 显着缩小。 DKT+ 还改善了 DKT 使一半以上的预测朝着错误方向改变的情况。 m1 和 m2 的值分别从 -0.25952 激增至 0.47597 和从 -0.05090 激增至 0.05712。

对于 Simulated-5,DKT 和 DKT+ 导致类似的 AUC(N),分别为 0.8252 和 0.8264。 然而,DKT+ 在 AUC©、m1 和 m2 方面有了巨大的改进。 DKT+ 将 AUC© 值从 0.8642 提高到 0.9987,将 m1 从 -0.1512 提高到 0.9064,将 m2 从 -0.0134 提高到 0.1659。 这意味着 DKT+ 模型使输入练习的几乎所有预测和预测变化都是正确的。 此外,预测过渡中的波纹也减少了。

总之,实验结果表明,基于 r、w1 和 w2 的正则化在不牺牲下一次交互的预测精度的情况下,有效地缓解了重建问题和预测中的波浪过渡。此外,对于 λr 、 λw1 和 λw2 的某些组合,DKT+ 在 AUC(N) 中甚至略微优于 DKT。

5 Discussion

除了实验结果,我们还绘制了图3和图4,以更好地了解基于重建和波幅的正则器对不同评价指标的性能有何影响。

figure3中,我们画出了在λw1和λw2的不同组合下,针对不同λr值的平均测试AUC(N)和AUC(C)的图像。可以看到,对于5个数据集来说,λr越大,AUC©就越大。其次,当λr增加,AUC(N)普遍下降,但是它的下降跟AUC(C)的增加比起来没那么明显。这表明重构正则化器r可以在不牺牲AUC(N)的性能的情况下,很好地解决重构问题。table3显示,我们会寻找一个λr、λw1、λw2的组合,得到一个类似的甚至更好的AUC(N)。这表明波动正则项可以帮助减少重构正则项带来的AUV(N)的轻微下降情况。

figure4展示了:λr = 0.1,ASSIST2009,λw1和λw2是如何影响评价指标的。当λw1在0-1之间,λw2在0-10之间时,AUC(N)变化的相对平滑。在这个范围内,DKT+模型使得AUC©的值更高了,在0.94-0.96之间。当λw1>1和λw2>10时,AUC©和AUC(N)开始下降。这表明相对于超参数λw1和λw2,模型性能在AUC(N)和AUC(C)中具有较低的敏感性。当λw1和λw2增加,波动指标w1和w2呈钟型下降。即使网格曲面有一点颠簸不平,在上述相同范围内,m1随λw1和λw2的较大值而增加。该观察结果表明重构正则化器和波动正则化器均有助于改善当前输入的预测一致性。另一方面,随着λw1和λw2值的增大,m2呈下降趋势。这是合理的,因为波动正则项将减少预测结果之间的变化,因此考虑到幅度变化,m2的值会减小。总之,归因于预测精度的低灵敏度(AUC(N)和AUC(C))、可观察到的波动值(w1和w2)的减小和一致性度量(m1和m2)的增加,可以确定正则项w1和w2的鲁棒性。

除了整体评估指标的变好,为了直观的感受正则项的影响,DKT和DKT+对于一个学生(id-1)的预测结果在figure5。第一条线图说明了 DKT/DKT+ 模型对所有回答技能的预测变化,而第二条线图强调了 DKT 和 DKT+ 之间每个技能的预测变化,显示了它们在预测上的差异。figure5b主要展示了每个知识点掌握情况的变化方向。这表示当学生回答错误一个问题,大多数预测的知识点掌握程度会同时下降。但这是不合理的,因为知识点si答错不一定导致其他知识点掌握程度下降。另一方面,DKT+展示了一个明显更平滑的转变。举个例子:DKT+中,收到(s32,0)或(s33,0),对s45,s55,s98的预测比DKT模型更加平滑,揭示了DKT +保留了先前时间步中s45,s55和s98的RNN中的潜在知识状态

(a) 热图(上:DKT+;下:DKT)正确回答学生回答的每项技能的预测概率。
(b) 线图(上:DKT+;下:DKT)预测正确回答学生回答的每项技能的概率。 它旨在展示 DKT/DKT+ 模型中每个技能预测的方向变化。
© 每个技能预测的线图,根据技能标签分别可视化。 目的是比较DKT和DKT+相同技能的预测结果。
图 5:使用从 ASSIST2009 中提取的学生交互序列 (id-1) 对 DKT 输出层子集的可视化。 使用的 DKT+ 模型在 λr = 0.10、λw1 = 0.003、λw2 = 3.0 下进行训练。 我们注意到 s32 是“Ordering Positive Decimals”,s33 是“Ordering Fractions”,s45 是“减法整数”,s55 是“Absolute Value”,s98 是“Equation Solving two or less Steps”。

6 Conclusion and future work

本文指出了在解释 DKT 的预测结果时出现的两个问题:(1)重建问题,以及(2)预测中的波浪过渡。 这两个问题都是不可取的,因为它会误导对学生知识状态的解释。 因此,我们提出了三个正则化项来增强 DKT 中预测的一致性。其中之一是重建误差r,以AUC(C),m1和m2进行评估。 另外两个是波动度w1和w2,它们是用于测量两个连续的预测输出矢量之间的变化的范数,并且直接用作评估参数。 实验表明,这些正则化器可以有效地缓解这两个问题,而不会牺牲用于预测下一个交互性能的原始任务的预测精度(AUC(N))。

尽管重建正则项提高了AUC©,波动正则项减少了预测的波动,但是很难说到底w1、w2要有多低才算是一个好的模型。理想上,一个知识追踪模型应该只改变跟当前输入有关的预测部分,其余部分不变或轻微改变。但是KC-dependency图根据数据及不同也不同,所以不同KT模型也有不同的合适的w1、w2的值。

此外,需要有更多的动作用来提高对于看不见的数据的准确性。DKT +的目标功能和评估措施仅考虑了当前和下一个交互。 没有虑未来的交互作用,更不用说评估未观测到的KC的预测精度的方法了。然而,未观察到的KC至关重要,因为ITS不仅应针对观察到的KC,还应针对未观察到的KC向学生提供个性化的学习材料推荐。 对未观察到的KC进行准确的估计将有助于ITS为学生提供更智能的教学指导
L = 1 c ( ∑ i = 1 n ∑ t = 1 T i − 1 ∑ j = 1 T i − t γ j − 1 l ( y t i ⋅ δ ( q t + j ) , a t + j ) ) \begin{aligned} \mathcal{L} = \frac {1} {c} \left( \sum_{i=1}^{n} \sum_{t=1}^{T_i - 1} \sum_{j=1}^{T_i - t} \gamma^{j-1} l \left( y_{t}^{i} \cdot \delta(q_{t+j}), a_{t+j} \right) \right) \end{aligned} L=c1(i=1nt=1Ti1j=1Titγj1l(ytiδ(qt+j),at+j))

其中 c = ∑ i = 1 n ∑ t = 1 T i − 1 ∑ j = 1 T i − t γ j − 1 c = \sum_{i=1}^{n} \sum_{t=1}^{T_i - 1} \sum_{j=1}^{T_i - t} \gamma^{j-1} c=i=1nt=1Ti1j=1Titγj1是归一化项,γ 是类似于强化学习中的衰减因子。
这可能会导致 DKT 模型学习更强大的潜在知识状态表示。

参考链接:地址

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值