基于深度学习的知识追踪研究进展

刘铁园1,2 陈 威1 常 亮1 古天龙1,3

1(广西可信软件重点实验室(桂林电子科技大学) 广西桂林 541004)2(桂林电子科技大学电子工程与自动化学院 广西桂林 541004)3(暨南大学信息科学与技术学院/网络安全学院 广州 510632)

摘 要 知识追踪是教育数据挖掘领域的一个重要研究方向,其目标是通过建立学生知识状态随时间变化的模型,来判断学生对知识的掌握程度并从学生的学习轨迹中挖掘出潜在的学习规律,从而提供个性化的指导,达到人工智能辅助教育的目的.深度学习因其强大的特征提取能力,已被证明能显著提升知识追踪模型的性能而越来越受到各方重视.以最基本的深度知识追踪模型为起点,全面回顾了该研究领域的研究进展,给出了该研究领域技术改进、演化脉络图,并从针对可解释问题的改进、针对长期依赖问题的改进、针对缺少学习特征问题的改进3个主要技术改进方向做了深入阐述和比较分析,同时对该领域中的已有模型做了归类,整理了可供研究者使用的公开数据集,考察了其主要应用,最后,对基于深度学习的知识追踪的未来研究方向进行了展望.

关键词 教育数据挖掘;深度学习;知识追踪;循环神经网络;人工智能辅助教育

近年来,随着智能辅导系统(intelligent tutoring system, ITS)和大型开放式网络课程(massive open online courses, MOOCs)等在线教育平台的发展和普及,数百万的用户选择通过在线平台学习.相比传统的线下教育,在线学习系统最显著的优势在于其能保留学习者详尽的学习轨迹,提供了调查不同轨迹下学习者行为效能的条件[1].然而,在线学习平台上学生与教师人数的悬殊使人工的辅导变得不现实.如何利用在线学习系统的优势,从学生的学习轨迹中挖掘出潜在的学习规律,以提供个性化的指导,达到人工智能辅助教育的目的,成为了研究者密切关注的问题.

知识追踪(knowledge tracing, KT)是实现人工智能辅助教育的有力工具,目前已经成为了ITS的一个主要组成部分[2],被广泛应用于各个在线教育平台,如edX[3]、Coursera[4]和爱学习[5].KT旨在建立学生知识状态随时间变化的模型,以判断学生对知识的掌握程度.通常情况下,KT的任务可以被形式化为一个有监督的序列学习任务,给出学生的历史学习交互记录It={i1,i2,…,it},通过预设的模型从中提取出学生隐式的知识状态,并追踪其随时间的变化.学习交互通常表示为一个题目-答案元组it=(qt,at),意为学生在时刻t回答了问题qtat则指示了回答的情况.由于很难直接衡量学习者的实际学习状态,现有的KT模型通常采用一种替代解决方案,使模型预测下一个题目答对的概率P(at+1=correct|qt+1,It).

BKT(Bayesian knowledge tracing)模型[6]是目前最流行的KT模型之一,BKT将学习者的潜在知识状态建模为一组二元变量,代表是否掌握某个知识成分(knowledge component, KC).KC可以被泛化地理解为知识概念、原理、事实或者技能.对于一个具体的题目qt,KC可以视作答对qt所必须掌握的知识.在单KC模型中(即一个题目对应一个KC),题目与KC可以视为是等价的.

在每一次学习交互后,BKT使用隐Markov模型(hidden Markov model, HMM)更新这些二元变量的概率.在提出后的20年来,BKT一直被视为KT领域的首选方法,其他机器学习模型,如BKT的变体[7]、逻辑回归的变体[8]以及项目反应理论[9](item response theory, IRT)与BKT的性能差异都很小[10].

虽然BKT在KT领域取得了很大成功,但是其本身也存在着很大的问题.首先,变量与KC之间的对应是模糊的,无法做到一一对应,且二元变量的设置不符合现实中的学习过程[11].其次,对每个KC分开建模的方式使BKT无法捕捉不同KC间的关系,也丧失了对未定义KC和复杂KC的建模能力.

深度学习以其强大的特征提取能力引起了研究者的广泛关注,许多研究者将其应用到KT领域,称为基于深度学习的知识追踪(deep learning based knowledge tracing, DLKT).相对于传统的机器学习模型,DLKT不需要人工标注的KC信息,且能够捕捉到更复杂的学生知识表征,还可以发现并利用KC之间的关联信息.目前,对DLKT的研究已经成为了KT领域的一大研究热点.

DLKT的开创性工作深度知识追踪(deep knowledge tracing, DKT)模型[11]于2015年提出,在2015年后,涉及到KT领域的代表性综述性论文有文献[1,12-16].其中,文献[1]从知识点、学习者和数据3方面总结了KT模型在教育领域的应用.文献[12]侧重于讨论特定场景下模型的选择问题.文献[13]将学习者模型分为知识状态、认知行为、情感、综合4类并做了详细阐述,KT模型属于其中的知识状态模型.文献[14-16]对目前的KT模型从教育角色、教育过程等角度进行了梳理和分析比较,但侧重在机器学习,且其中所涉及的模型较少,仅介绍了几个具有代表性的模型.总体来说,这些文献涉及到DLKT模型的内容较少,没有聚焦于DLKT领域.

本文着眼于DLKT领域的相关研究,对该领域的技术演化和最新研究进展进行了系统性的调研与梳理.

1 基于深度学习的知识追踪DLKT

1.1 DLKT相关研究概览

我们查阅了近5年半(2015-01—2020-06)DLKT的相关论文.其中,中文文献来源于中国知网(CNKI),英文文献来自IEEE Electronic Library,Elsevier Science,EI Compendex,Web of Science,Springer Link,ACM Digital Library等数据库,并使用学术搜索引擎(谷歌学术、百度学术、必应学术)查漏补缺.在检索时,中文使用“知识追踪”和“深度知识追踪”作为关键词,英文使用“knowledge tracing”和“deep knowledge tracing”为关键词.对获得的相关文献进行分析整理,去掉不相关的和没有使用深度学习方法的文献,共筛选出69篇文献,图1给出了这些文献的发表情况.

Fig. 1 Publication of DLKT related literatures in recent five and a half years

图1 近5年半DLKT相关文献发表情况

可以看出,近5年半DLKT相关文献在国内外发文量呈明显上升趋势,在新冠疫情导致许多会议延期的前提下,2020年上半年也有17篇论文发表.

发表仅5年,DLKT的开创性工作DKT就有433次引用(数据来源:谷歌学术),相关研究在NIPS,AAAI,SIGIR,WWW等顶会上均有报道,可见该领域研究被学界的认可和接受.

1.2 符号定义

在本节,我们给出文中常见符号的定义(其他非常见符号以文中说明为准),表1展示了每种符号的代表含义.除特殊说明外,本文使用的符号皆以表1为准.我们使用kt表示知识成分KC,qt代表题目,at代表对应的回答,下标t指示了时刻(如无必要,则省略).两者的组合(qt,at)构成了一个学习交互xt.通常情况下,KC与题目存在对应关系,两者可以相互转化,因此,学习交互同样可以表示为(kt,at),根据具体的模型选择.在时刻t,模型的预测值yt表示下一时刻回答正确的概率.使用L表示损失函数,LBCE特指二元交叉熵(binary cross entropy, BCE)函数.使用大写的粗体字母(如W)表示矩阵,使用小写的粗体字母(如b)表示向量.特别地,Wb特指权重矩阵和偏置向量.

Table 1 Symbol Definition

表1 符号定义

符号含义t∈{t1,t2,…,tT}时刻,共T个时刻kKC(知识成分)q题目e题目的嵌入a回答i=(q,a)学习交互x学习交互的嵌入pt时刻t+1题目答对的预测概率yt=(p1,p2,…,pt)多个预测值组成的向量W权重矩阵b偏置L损失函数LBCE二元交叉熵函数 向量的连接操作

1.3 DLKT基本模型

Piech等人[11]提出的DKT模型是DLKT领域的开创性工作,也是DLKT领域的基本模型.DKT的结构如图2所示,其以循环神经网络(recurrent neural network, RNN)为基础结构.RNN是一种具有记忆性的序列模型,序列结构使其符合学习中的近因效应并保留了学习轨迹信息[17].这种特性使RNN(包括长短期记忆网络[18](long short term memory, LSTM)和门控循环网络[19](gated recurrent unit, GRU)等变体成为了DLKT领域使用最广泛的模型.DKT以学生的学习交互记录{i1,i2,…,it}为输入,通过one-hot编码或压缩感知[20](compress sensing),it被转化为向量输入模型.在DKT中,RNN的隐藏状态ht被解释为学生的知识状态,ht被进一步通过一个Sigmoid激活的线性层得到预测结果yt.yt的长度等于题目数量,其每个元素代表学生正确回答对应问题的预测概率.具体的计算过程为

(1)

Fig. 2 Architecture for DKT model

图2 DKT模型结构图

DKT的目标函数是观测序列的非负对数似然函数,用LBCE表示二元交叉熵(BCE),则学生的损失值为

(2)

相对于以BKT为代表的传统机器学习模型,DKT不需要人工标注的数据就有更好的表现(AUC提高了20%[21]),且能够捕捉并利用更深层次的学生知识表征[22-23],这使其非常适合以学习为中心的教学评估系统[24].

2 DKT的改进方法

尽管DKT的预测性能优于现有的经典方法,但由于它在教育应用中的实用性还有待提高,而被其他少量学者所批判[25-29].这主要是因为隐藏状态ht在本质上很难被解释为知识状态,而且DKT模型没有对知识交互进行深入分析[30],导致其可解释性很差.

RNN存在长期依赖问题,其变体(如LSTM和GRU)仅仅提高了序列学习的容量(对于LSTM来说,容量在200左右[31]),但并没有解决问题.DKT中以RNN为基础,因此其同样存在长期依赖问题.长期依赖问题使DKT无法利用长序列的输入[32],且会导致重构错误和波动准则[33-35].

在DKT中,模型的输入为one-hot编码的学生交互序列,而仅用交互序列作为输入浪费了在线平台所保留的丰富学习轨迹信息,且输入的学习特征太少也会影响模型的表现.

可解释性差、长期依赖问题和学习特征少是DKT模型最显著的3个问题,许多研究者致力于对其进行扩展和改进,以解决这些问题.我们将各种改进方法梳理为图3所示:

Fig. 3 DKT improved method venation diagram

图3 DKT改进方法脉络图

2.1 针对可解释性问题的改进

根据使用方法的不同,针对可解释性问题的改进可以进一步细分为Ante-hoc可解释性方法和Post-hoc可解释性[36]方法.

2.1.1 Ante-hoc可解释性方法

Ante-hoc可解释性指模型本身内置可解释性.对于复杂的模型,可以通过构建将可解释性直接结合到具体的模型结构中的学习模型来实现模型的内置可解释性,在深度学习中,一种有效的可解释性模块就是注意力机制.此外,Ante-hoc可解释性还可以通过采用结构简单、易于理解的自解释模型实现[36].

1) 引入注意力机制

① A-DKT(attention-DKT)

Fig. 4 Architecture for DKVMN model

图4 DKVMN模型结构图

Liu等人[37]在模型A-DKT中使用了Jaccard系数计算KC之间的注意力权重.设ka,kb为不同的KC,两者间的权重值为

(3)

在时刻t,计算当前KC与之前所有KC的注意力权重,然后相加,得到总的注意力值wt

(4)

最后,结合LSTM与注意力值得到预测结果:

yt=Sigmoid(Wyhht+by+wt).

(5)

② DKVMN(dynamic key-value memory network)

Zhang等人[38]受到MANN(memory-augmented neural network)的启发,提出了DKVMN模型.DKVMN使用矩阵Mkey存储KC,Mkey的每一列代表一个KC;使用矩阵Mvalue存储知识状态,Mvalue的每一列表示Mkey中对应KC的掌握程度.DKVMN的结构如所图4所示.

注意力机制主要体现在wt的计算上:在时刻t,将题目的嵌入向量et与每一个KC(即Mkey的每一列)作内积,经过一个激活函数后得到wt.wt(i)代表题目qt与KC ki之间的相关性,即注意力权重:

(6)

根据注意力权重计算学生对题目qt的掌握程度rt

(7)

题目的嵌入向量et隐式地包含了难度信息,将其与rt连接,得到的ft同时包含难度和掌握程度信息:

(8)

最后,ft通过一个Sigmoid激活的线性层得到学生表现的预测值yt:

(9)

③ DKVMN-CA(concept-aware DKVMN)

Ai等人[39]进一步扩展了DKVMN模型,使其支持了人工标注的KC信息.Mkey中的KC由人工定义,而不是机器生成.

④ EERNN(exercise-enhanced RNN)

Su等人[40]在其模型EERNN中使用了余弦相似度计算隐藏状态之间的注意力权重wt

(10)

需要注意的是,余弦相似度计算的并不是隐藏状态之间的相似性,而是题目之间的相似性.EERNN的预测过程为:

(11)

⑤ EKT(exercise-aware KT)

Huang等人[41]提出的EKT模型综合了EERNN模型与DKVMN模型,因此拥有双重注意力模块.其主要计算过程与EERNN和DKVMN模型相同,此处不再赘述.

2) 自解释模型

① KQN(knowledge query network)

Lee等人[42]用向量点积来模拟知识状态与KC的相互作用,提出了KQN模型.假设知识状态与KC都为2维向量,如图5所示,在知识状态由v2转变到v3的过程中,学生对KC k1的掌握程度由v2·k1=1增长到了v3·k1=2.这种向量化的表示与运算使KQN具有直观性和可解释性.

Fig. 5 An example of KQN

图5 KQN的一个例子

在KQN中,学生知识状态向量vt由RNN的隐藏状态ht经过一个全连接层得到:

vt=Wvh·ht+bv.

(12)

在时刻t,one-hot编码的KC kt+1通过一个多层感知机和L2正则化.生成新的嵌入表示:

ot+1=ReLU(W1·ReLU(W0·kt+1+b0)+b1),kt+1=L2-normalize(ot+1).

(13)

KQN用vtvt+1的内积定义知识交互,并作出预测:

yt=Sigmoid(vt·kt+1).

(14)

② Deep-IRT(deep item response theory)

Yeung等人[43]综合了IRT理论[9]与DKVMN模型,提出了Deep-IRT模型.Deep-IRT通过2个全连接神经网络,利用DKVMN中的ftet(式(8))分别对学生n的能力θt,n和题目难度βt建模:

(15)

最后,通过IRT函数得出预测结果:

yt=Sigmoid(θt,n-βt).

(16)

2.1.2 Post-hoc可解释性方法

Post-hoc可解释性也称事后可解释性,发生在模型训练之后,旨在利用解释方法或构建解释模型,解释学习模型的工作机制、决策行为和决策依据[36].在DLKT领域,主要有LRP和不确定性评估方法.

1) LRP(layer-wise relevance propagation)

Lu等人[44]应用分层相关性传播方法,通过将相关性从模型的输出层反向传播到输入层,来解释基于RNN的DLKT模型.LRP的核心是利用反向传播将高层的相关性分值递归地传播到低层直至传播到输入层.具体来说,将RNN不同单元之间的连接分为加权连接和乘法连接并分别定义两者相关性的传播.如图6所示,通过计算2种类型连接的反向传播相关性,就可以对基于RNN的DLKT模型进行解释.

(17)

RCt=Rht,

(18)

(19)

RCt-1=RftCt-1,

(20)

(21)

(22)

其中,为预测值ytd维的值.sgn()∈{-1,1}指示正负性,ε为优化计算超参数,R表示相关性.为LSTM计算过程的中间参数.时刻t的输入xt的相关性Rxt可以推导为

(23)

Fig. 6 The feedforward prediction path and the backpropagation path for interpreting its prediction results

图6 前馈预测路径及解释预测结果的反向传播路径

2) 不确定性评估

Ding等人[45]和Hu等人[46]都使用不确定性评估方法解决可解释性差的问题,这里主要阐述前者的方法:通过为模型的每一个预测值y提供一个不确定性评分u(由模型输出),以减轻预测过程中的不透明性,增加模型的可解释性.不缺定性分为2种:

① 随机不确定性(或数据不确定性).由随机事件或观测中的固有噪声导致.由于神经网络的固定权值,因此输入x的噪声会传播给输出y.D表示噪声,则模型的输出为

(24)

其中,σD表示的偏差值,由模型输出.由于的期望很难确定,因此使用蒙特卡洛方法近似,最大化期望对数似然相当于最小化二元交叉熵,最终的损失函数为

(25)

其中,L1,L2均为优化计算的正则项,由超参数α,β平衡权重.

② 认知不确定性(或模型不确定性).由数据不足导致,这种不确定性可以通过使用更多的数据来降低.针对深度学习模型的不确定性建模的贝叶斯方法是假设这些模型的权重不是固定的,而是从分布中取样的.最后的预测是通过综合所有可能的权重得到的.对于分类任务,预测正确的概率可以近似为

(26)

其中,c表示预测正确的题目,S表示取样总数.不确定性可以用熵概括:

(27)

2.1.3 小 结

本节详细介绍了DLKT领域针对可解释性问题的改进方法,主要分为Ante-hoc和Post-hoc.前者对问题的解决程度稍显不足,无论是注意力机制还是自解释模型都只能提高某一部分的可解释性.而后者试图解释整个模型,但其方法本身对部分条件要求较高,如LRP需要预测函数有较高的梯度.

2.2 针对长期依赖问题的改进

针对长期依赖问题的改进模型中,根据方法的不同,可以分为LSTM的扩展模型和基于自注意力机制的模型.

2.2.1 基于LSTM的扩展模型

1) Hop-LSTM

Abdelrahman等人[47]使用了Hop-LSTM来进一步扩大LSTM的序列学习容量.Hop-LSTM是一种改进的LSTM,可以根据隐藏单元之间的相关性进行跳跃连接.如图7所示,Hop-LSTM所基于的顺序关系为q1q4,q2q3,q5q3,…,q4qt,其中ft的计算参考式(8).可以看到,LSTM单元依据顺序关系跳跃连接.

Fig. 7 Hop-LSTM schematic diagram

图7 Hop-LSTM示意图

2) NKT(neural KT)

有研究指出,RNN的层层叠加可以减轻LSTM中长期依赖关系的学习困难[48].基于这个结论,Sha等人[49]提出了NKT模型,设计了一种2层堆叠的LSTM,并使用残差连接减小训练难度.实验证明,这种叠加的LSTM可以有效扩大序列学习的容量.

2.2.2 基于Transformer的模型

自注意力机制(self-attention mechanism)是注意力机制的一个变体,由Lin等人[50]提出.后来,Vaswani等人[51]使用自注意力机制代替了RNN搭建了整个模型框架,提出了Transformer模型.由于Transformer模型不依赖RNN框架,因此不存在长期依赖问题.Transformer模型最初用于机器翻译任务,取得了很好的效果.后来,有研究者将其用于知识追踪领域,获得了媲美基于RNN的DLKT模型的效果,且不存在长序列依赖问题.

1) SAKT(self attention KT)

Pandey等人[52]率先在知识追踪领域使用了Transformer模型,提出了SAKT模型,其结构如图8所示:

Fig. 8 Architecture for SAKT model

图8 SAKT模型结构图

在Transformer中,计算注意力所使用的Q,K,V这3个参数由输入序列乘以不同的权重矩阵所得.而在SAKT中,QK,V分别由题目的嵌入序列和交互的嵌入序列投影得到.

(28)

其中,为题目嵌入矩阵,由交互嵌入矩阵X与位置嵌入矩阵P连接得到.SAKT不是时序模型,所以需要位置嵌入以保留输入序列的位置信息.

注意力被计算h次,使得模型能够在不同的表示子空间中学习相关信息,并将h次的结果连接,称为多头注意力(multi-head attention, MHA):

(29)

其中,d为嵌入向量的维度.最终,通过一个前馈神经网络层和一个Sigmoid激活的线性层得到预测结果:

(30)

2) SAINT(separated self-attention neural KT)

Choi等人[53]认为SAKT模型的注意力层太浅,且Q,K,V的计算方法缺乏经验支持,并提出了SAINT模型以解决这2个问题.

如图9所示,SAINT主要由编码器(encoder)和解码器(decoder)两部分组成.编码器的输入为题目的嵌入矩阵由题目嵌入和位置嵌入连接得到,解码器以编码器的输出以及回答嵌入矩阵A=(a1,a2,…,at)为输入.编码器与解码器都是多头注意力模块和前馈神经网络的组合,不同之处在于解码器叠加了2个注意力模块,以进一步捕捉题目与回答之间的复杂关系.

(31)

Fig. 9 Architecture for SAINT model

图9 SAINT模型结构图

编(解)码器的内部实现与SAKT相同,最终,解码器的输出FD经过一个Sigmoid激活的线性层得到最终的预测结果.

在SAINT中,编(解)码器共叠加了4层,实验结果证明,多次叠加的注意力层可以有效增大AUC的面积,获得更好的预测性能.

3) DKT+Transformer

Pu等人[54]改进了Transformer的结构,在其中加入了题目的结构信息和答题的时间信息.改进后的Transformer模型结构与SAINT大致相同,都由编码器和解码器组成,主要区别在于自注意力的计算.

(32)

其中,t′=(t1,t2,…,tn)为时间戳信息,注意力机制的计算为:

(33)

其中,b×(tj-ti)表示时间间隔偏置,目的是通过xjxi之间的间隔时间来调整注意力权重,在计算时,使ij以保证不会学习后面时间的权重.

2.2.3 小 结

本节详细介绍了DLKT领域针对长期依赖问题的解决方法,主要分为基于LSTM的方法与基于Transformer的方法.前者在一定程度上扩展了RNN序列学习的长度,但是并没有从根本上解决问题.后者不存在长期依赖问题,但是也丧失了RNN对序列建模的能力,位置嵌入对序列信息的影响更是需要深入研究.

2.3 针对缺少学习特征问题的改进

针对缺少学习特征问题的改进中,根据特征添加方式的不同,可以分为嵌入方式、损失函数、新结构3种方法.

2.3.1 嵌入方式

嵌入方式指将学习特征添加到模型的输入嵌入向量中,或作为额外的计算因子嵌入到计算过程中的方式.

Fig. 10 Concatenate feature vectors and reduce dimensions

图10 连接特征向量并降维

1) DKT-FE(DKT with feature engineering)

Zhang等人[55]采用特征工程(feature engineering)的方式,使用人工分析选择特征并离散化.如图10所示,处理后的特征(答题时间、答题次数和第1个动作(首先尝试解答还是直接寻求帮助))在经过one-hot编码后与交互嵌入xt连接为然后利用自动编码器(auto-encoder)[56]降维并作为LSTM的输入,以减少模型的训练时间.Suragani等人[57]做了相同的工作.

2) DKT-DT(DKT with decision trees)

Yang等人[58]认为DKT-FE中使用人工分析特征的方式无法离散化很大的特征,且会带来人为的误差并提出了DKT-DT模型解决这个问题.DKT-DT模型使用了分类与回归树(classification and regression trees, CART)对one-hot编码的额外特征(标题、答题次数、答题时间)ft进行预处理.CART通过最小化交叉熵学习了系列分类规则,在时刻tft经过CART预处理后得到一个融合了多个特征信息的进一步与其他学习交互信息连接,作为LSTM的输入:

(34)

3) DKVMN-DT(DKVMN with decision trees)

Sun等人[59]基于DKVMN模型添加特征,提出了DKVMN-DT(DKVMN with decision trees)模型.其使用了与DKT-DT相同的方法,不再赘述.

4) DKT+forgetting

Nagatani等人[60]在DKT模型中加入了遗忘特征.作者用3点信息衡量学生的遗忘情况,如图11所示,分别是相同题目时间间隔、相邻题目时间间隔和题目历史练习次数.

Fig. 11 Three measures of forgetting

图11 衡量遗忘的3种因素

使用one-hot编码衡量遗忘的3种因素,然后连接,得到一个multi-hot编码的遗忘因子ct.如图12所示,遗忘因子作为额外的特征,分别与交互嵌入xt和隐藏状态ht整合.

(35)

5) EERNN(exercise enhanced RNN)

Su等人[40]关注到题目文本描述中包含的丰富信息,并使用双向LSTM提取文本描述的语义特征.如所图13所示,题目的文本描述被表示为单词序列并使用Word2Vec[61]将转化为向量序列(w1,w2,…,wm),作为双向LSTM的输入.然后,训练之后,连接前向状态和后向状态,经过一个逐元素的最大池化操作,得到最终的语义表示e.语义表示作为题目的嵌入,与答案组合成新的交互嵌入,作为LSTM的输入.

Fig. 12 The addition of forgetting features

图12 遗忘特征的添加

Fig. 13 The bidirectional LSTM is used to extract semantic features

图13 使用双向LSTM提取语义特征

6) AKT(adaptable KT)

Cheng等人[62]在其模型AKT中使用了与EERNN模型[27]相同的文本特征提取方法,并进一步从提出的语义特征中挖掘出学生的猜测(掌握了KC却没有答对题目)和失误(没掌握KC却答对了题目)行为.

在AKT中,猜测gt和失误st分别用单层神经网络建模:

st=S(et),gt=G(et).

(36)

stgt进一步与学习交互嵌入xt连接,经过LSTM得到隐藏状态ht.然后将st,gt,ht三者结合得到知识状态

(37)

其中,fLSTM代表LSTM模型,⊙表示逐元素相乘.最后,模型根据知识状态做出预测.

此外,AKT还利用了迁移学习的思想,通过额外的自适应层一定程度上解决了数据稀疏问题.相比纳入专家知识[63],这种方法具有更好的泛化性.

7) EHFKT(exercise hierarchical feature enhanced KT)

Tong等人[5]在其模型EHFKT中使用了BERT[64]从题目的文本描述中提取了知识分布、语义特征和题目难度等信息.如图14所示,EHFKT首先使用BERT生成文本描述的嵌入向量,然后经过知识分布提取系统(knowledge distribution extraction system, KDES)、语义特征提取系统(semantic feature extraction system, SFES)和题目难度提取系统(difficulty feature extraction system, DFES)分别生成知识分布、语义特征和题目难度.3个特征连接之后经过LSTM的输入作出预测.

Fig. 14 Architecture for EHFKT

图14 EHFKT模型结构图

8) LSTMCQ(LSTM based contextualized Q-matrix)

Huo等人[65]在其模型LSTMCQ中提出了一种带有上下文信息的题目编码方法.具体来说,首先由领域专家手动创建一个矩阵Q,矩阵Q中存储了题目与KC的对应关系.迭代更新矩阵Q以附加KC的权重信息,且同一个问题的所有权重相加为1,记为权重矩阵Q.最后,加入学生n在题目m上的表现信息rnm

(38)

其中,N,M分别为学生和题目的数量.qmk为题目m中KC k所占的权重(即权重矩阵Qm行第k列的值),δk表示学生在k上的平均表现.δkqmk相乘就得到了矩阵CQ(contextualized Q-matrix)对应的值:

CQmk=δk×qmk.

(39)

矩阵CQ包含了上下文信息,其每一行表示一个题目,将矩阵CQ的每一行单独提取出来,即为带有上下文信息的题目编码.

9) DKT-DSC(DKT with dynamic student classification)/DSCMN(dynamic student classification on memory networks)

Minn等人[66-67]提出了一种根据能力分类学生,并将分类后的学生分组训练的方法,相当于在模型的输入中隐式地嵌入了学生能力信息.应用于DKT与DKVMN,分别称为DKT-DSC和DSCMN.

具体来说,首先通过设置一个时间间隔将交互序列分段,在每一个时间间隔,计算学生每个KC的答对率和答错率,并将两者之间的差值转化为数据向量,以代表学生的能力:

(40)

其中,z表示时间间隔,Nj,i表示前i个时间间隔内qj被回答的次数.被解释为学生i的学习能力.

然后,用K均值(K-means)算法将学生按能力分组:

(41)

其中,μl为第l组(共m组)学生Cl的学习能力的均值.最后,将学生数据按照不同的分组放入模型中训练.

2.3.2 损失函数限制

损失函数限制指将额外的学习特征作为限制条件,编码到损失函数中的方式.

1) Colearn

Chaudhry等人[68]关注到了学习交互系统中学生的提示获取(hint-taking)行为,并将其作为知识追踪的子任务,提出了一个多任务模型Colearn.Colearn基于DKVMN模型,所不同的是,Colearn在更新知识状态矩阵Mvalue时,额外添加了gt(指示是否使用了提示),新的输入(qt,at,gt)用one-hot编码为向量ft.Colearn的输出有2个,答对的概率y和请求提示的概率yg

(42)

对应地,模型的损失函数也由知识追踪任务和提示获取任务2部分组成,并用超参数α,β平衡权重:

(43)

2) PDKT-C(prerequisite-driven DKT with constraint modeling)

Chen等人[69]将KC之间的先后序关系引入了知识追踪模型,提出了PDKT-C模型.以P(mi,k,t=1)表示学生i在时刻t掌握KC k的概率,假设k1,k2存在先后序关系,将KC之间的关系建模为有序对,可以表示为

P(mi,k2,t2=1)≤P(mi,k1,t1=1).

(44)

这个有序对很自然地说明了一个事实:一个知识点越先进,学习起来就越困难.在式(45)的约束下,经过正则化后,PDKT-C模型的损失函数为

log P(mi,k2,t2)],

(45)

其中,si表示学生i的练习序列,Θ指代GRU的参数,fi,t指示学生i在时刻t是否回答了问题.第1部分为最大化似然函数.fi,t1=fi,t2时,δ(*)=1,否则为0,α为平衡先决关系权重的超参数.

3) DKT-S(DKT with side information)

Wang等人[70]提出了DKTS模型,通过在加入一个用来捕获题目之间关系的Side Layer,将题目之间的关系纳入学生知识状态建模.

Wang等人[70]认为,具有类似KC的问题是内在相关的,这种内在关系可以用图表示,其中节点是题目,若2个题目包含同样的KC,则它们之间存在一条边.这个题目-题目图用邻接矩阵A表示.基于这种直觉,Side Layer没有使用嵌入层,而是使用了图嵌入算法如LINE[71]和Node2Vec[72]以得到保持题目关系的表示.此外,Side Layer中还包含1个正则化项其中L是矩阵A的拉普拉斯矩阵.正则项的设计来源于这样一个直觉:如果1对题目包含相似的知识点,则学生答对这2个题目的概率也应该是相似的.DKTS的损失函数包含2部分,即交叉熵损失和Side Layer的正则项,使用超参数α控制正则项的权重:

(46)

4) DHKT(deep hierarchical KT)

Wang等人[73]关注到了题目之间的层次结构关系,提出了DHKT模型.其通过KC嵌入和题目嵌入之间的内积铰链损失(hinge loss)来对层次关系建模.题目ei与KC kj之间的铰链损失定义为

(47)

其中,ci,j=1表示eikj相关,反之无关.

在模型的训练过程中,同时最小化预测损失和铰链损失:

(48)

5) qDKT(question-centric DKT)

包含同样KC的题目之间存在着差异,解决这些题目对知识状态的贡献也是不同的.为了区分这些差异,Sonkar等人[74]提出了qDKT模型,使用正则项对题目之间的差异建模:

(49)

其中,c=(c1,c2,…,cn)包含了所有n个题目的正确率(通过数据集计算),如果qi,qj包含同一个知识点,则1(i,j)=1,否则为0.这个正则项被加到模型的损失函数中作为限制:

(50)

2.3.3 新结构

新结构指通过使用新的模型结构,将额外学习特征纳入模型计算过程中的方式.

1) GKT(graph based KT)

Nakagawa等人[75]提出了GKT模型,通过将KC间的关系表示为1个有向图,知识追踪任务转化为了图神经网络(graph neural network, GNN)中的时间序列节点级分类问题.有向图G=(V,E,A)由节点集(表示KC)V={v1,v2,…,vN}、边集(表示KC之间的关系)EV×V和邻接矩阵(定义关系的权重值)AN×N定义.

在GKT中,假设学生在每个时刻t对每个知识点vi都有独立的知识状态当学生回答与概念vi相关的题目时,更新vi及与vi邻接的知识点所对应的知识状态其中,Ni表示与vi邻接的知识点的集合.因此,对于节点vi,首先要将其与邻接节点jNi的知识状态聚合:

(51)

其中,Ex,Ek分别为交互和KC嵌入矩阵,Ek(l)表示Ek的第l.根据图结构更新知识状态:

(52)

其中,fself为多层感知机,Gea为DKVMN模型中的删除-添加机制,GGRU为GRU模型,fneighbor为一个基于图结构信息向邻接节点传播的函数.

Fig. 15 Architecture of CKT model

图15 CKT模型结构图

2) CKT(convolutional KT)

Shen等人[76]提出了CKT模型,率先在知识追踪领域使用了卷积神经网络.如图15所示,在CKT中,使用1维卷积操作从矩阵Q中提取学习率特征,滑动窗口将d个连续的学习交互映射为单个输出元素,并使用GLU[77]作为非线性函数,在卷积层的输出上实现一个简单的选通机制,控制知识在学习过程中是否会被遗忘.最终的输出zt作为学生的知识状态,用于知识追踪的预测任务.

yt=Sigmoid(zt·et+1).

(53)

矩阵Q由学习交互序列(learning interaction sequence, LIS)、历史相关表现(historical relevant performance, HRP)和KC的正确率(concept-wised percent correct, CPC)在合并之后经过GLU单元[77]组成:

(54)

其中,⊗表示逐元素的乘法,VHRP,VCPC计算为

(55)

其中,Masking为掩码操作,目的是排除后续时刻的学习交互,qk为与KC k相关的题目,count(qk)表示qk被回答的次数.

3) SKVMN(sequential key-value memory networks)

Abdelrahman等人[47]在SKVMN模型中使用三角隶属度函数(triangular membership function)来计算KC之间的相关性:

(56)

其中,a,c确定三角形的“脚”,b确定三角形的“峰”.

相关性用来进一步计算题目间的顺序依赖关系,并作为Hop-LSTM的约束,控制信息在其上的跳跃连接,如图7所示.

4) DeepFM(deep factorization machines)

Vie[78]率先将DeepFM算法[79]应用到知识追踪领域,其优势在于对稀疏特征的添加与利用.DeepFM由FM和DNN(deep neural network)组成,前者的输出为

(57)

其中,wi为偏置值,N表示特征数量,fi表示第i个特征,vi表示系数矩阵V的第i维向量,表示向量点积.

DNN是一个N层的前馈神经网络,其输出为

(58)

其中,c表示类别.DeepFM的预测由2部分组合得到:

y=Sigmoid(yFM+yDNN).

(59)

5) KTM-DLF(knowledge tracing machine by modeling cognitive item difficulty and learning and forgetting)

Gan等人[80]提出了一种结合学习者能力、认知项目难度、学习和遗忘等特征的建模方法,并使用KTM在高维中嵌入这些特征,所提出的模型称为DKM-DLF.

具体来说,Gan等人[80]认为,题目的难度包括3个方面:题目所包含的KC的难度、学习者的知识状态、题目的特点.综合这3个因素,题目难度被概括为认知项目难度(cognitive item difficulty, CID).设βk为KC k的固有难度,δj指代题目特点,KC(j)为题目j中包含的所有知识点,θ为偏置值.则对于学生i在时间t作答的题目j来说,其CID为

(60)

上述3个因素分别对应Part-1,2,3.其中,Ψ∈[0,c]代表难度,共c+1个等级,用之前交互中的回答错误率计算:

Ψi,v,t|v={j,k}=

(61)

其中,|Ni,v|0:t表示学生i直到时刻t回答过的题目或KC.学生的学习特征通过其在相同题目Φi,j,t和包含相同KC的不同题目Φi,k,t上的表现计算:

(62)

无论回答的正确与否,都有助于知识的获得:

θv,3tw+2 log(1+Fi,v,tw)-θv,3tw+3 log(1+Ai,v,tw)},

(63)

其中,Wi,v,twFi,v,tw分别指代答对次数和答错次数,Ai,v,tw表示学生i在时间窗口tw的尝试次数,tw|0:T是跨度不断增大的时间间隔.

学习某个知识点的间隔越长,遗忘的可能性越大,将遗忘行为定义为

f(i,j,t)=θj,jeΔj,j+

(64)

其中,e为自然对数的底,Δ为衡量遗忘的因素,有3个部分,与DKT+forgetting(图11)中提到的略有不同,具体如图16所示:

Fig. 16 Three measures of forgetting

图16 衡量遗忘的3因素

设嵌入维度为0,用αi,j表示学生i在时刻t的能力,KTM-DLF模型可以表示为

Sigmoid(P(Yi,j,t=1))=αi,t-d(i,j,t)+l(i,j,t)-f(i,j,t).

(65)

6) DynEMb

Xu等人[81]结合了矩阵分解和RNN,提出了DynEmb模型,用矩阵分解做嵌入,用RNN对学习过程建模,DynEmb主要分为2部分:.

① QuestionEmb.给出学习交互,用矩阵分解学习题目嵌入矩阵Q和学生嵌入矩阵S

bqt+cst),at+1)+λ(),

(66)

其中,b,c分别为题目和学生的偏置项,λ为平衡参数.

② StudentDyn.使用RNN生成动态的学生嵌入矩阵St.在时刻t-1,RNN的输入为题目嵌入Qqt-1和向量(at-1,1-at-1)T的克罗内克积(Kronecker product),RNN的隐藏状态就是学生st的动态嵌入Sst,t.DynEmb预测下一时刻答对题目的概率:

yt=Sigmoid(Qqt·Sst,t+bqt).

(67)

7) BDKT(Bayesian neural network DKT)

Li等人[82]提出了BDKT模型,使用贝叶斯神经网络来对丰富的学习特征建模.BDKT的参数设置为分布形式:

(68)

其中,X,Y分别为输入和输出,p(W)为参数W的先验.由于P(W|X,Y)在训练集(X,Y)上的概率分布是复杂的,难以用归一化常数处理,也不能直接计算模型参数的后验分布.BDKT使用了变分推断(variational inference)解决这个问题,变分分布q(W)~N(W|μ,σ2)被用来近似真正的后验分布P(W|X,Y),N(μ,σ2)表示数学期望为μ、方差为σ2的正态分布.p,q之间距离为

Eq[log q(W)]-Eq[log p(W)]-Eq[log p(Y|X,W)]+Eq[log p(Y|X)],

(69)

其中,Eq[log p(Y|X)]为常量,Eq[log p(Y|X,W)]可以从训练集中得到.BDKT的损失由训练损失和KL项决定:

(70)

8) Q-Embedding

Nakagawa等人[83]提出了无需KC标签信息的Q-Embedding模型,可以自动学习题目与KC的嵌入.

Fig. 17 Architecture of Q-Embedding model

图17 Q-Embedding模型结构图

Q-Embedding模型的结构如图17所示,其中,P为需要学习的题目-KC矩阵,utvt为额外的隐藏层,长度分别为2N′和N′,N′为自定义的KC个数,ut,vt,P的定义为

(71)

式(71)中,xtpos,xtneg分别表示xt的前后2部分,ht为RNN的隐藏状态.使用2个额外的损失函数对模型进行训练:

(72)

其中,Lref为对题目空间和KC空间的重构正则化,旨在反映以下假设:从学生对KC空间对应的每个KC的理解中,可以估计出学生对题目的回答情况.Ls为题目嵌入矩阵的稀疏正则化,目的是在训练模型后二值化时使P接近01,并抑制信息丢失.Q-Embedding的损失函数分为3部分,预测的交叉熵Lpre,LrefLspa,用超参数α,β,γ平衡权重:

L=α Lpre+β Lref+γ Lspa.

(73)

2.3.4 小 结

本节详细介绍了DLKT领域针对缺少学习特征问题的改进方法,主要分为嵌入方式、损失函数限制和新结构.其中,嵌入方式的最为直观:通过添加更多信息,借助深度学习的特征提取能力,使模型自主地建立特征间的联系.损失函数将额外信息作为一种限制条件,使模型向指定方向优化.新结构方式则充分利用了其他网络结构的特点,带来了许多优点(如预防过拟合[82]、减轻数据稀疏问题[62]等),但新结构的迁移应用研究不够深入,其可能存在的缺点值得更进一步研究.

3 DLKT模型对比与分析

第2节详细介绍了DKT模型的改进方法,按照改进侧重点的不同,分为可解释问题的改进、长序列依赖问题的改进、添加特征的改进和其他方面的改进.本节归纳了各类改进方法中所使用的数据集,同时也对DLKT在各公开数据集上的表现做了对比和分析.

3.1 数据集介绍

近年来,用作DLKT模型评估的公开数据集主要有9个,其简述和下载链接如表2所示:

Table 2 DLKT Domain Public Datasets Summaries, Download Links and Models that Use Them

表2 DLKT领域公开数据集简述、下载链接及使用其的模型

数据集简述下载链接SyntheticDKT模型使用的模拟数据集,它模拟了2000名虚拟学生,他们回答了来自5个虚拟知识点的50个问题.仅在此数据集中,所有学生回答问题的顺序相同.https:∕∕github.com∕chrispiech∕DeepKnowledgeTracing∕tree∕master∕data∕syntheticStatic2011来自一个大学级的工程静力学课程,具有333个学生在1223个问题上的189927个交互.https:∕∕pslcdatashop.web.cmu.edu∕DatasetInfo?datasetId=507KDDCup20102010年KDD杯比赛开发数据集,具有574个学生在436个问题上的607026个交互.https:∕∕pslcdatashop.web.cmu.edu∕KDDCup∕downloads.jspEdNet由Santa(一个人工智能导学系统)收集的大规模分层的学生活动数据集,包含784309名学生的131317236个交互信息,是迄今为止发布的最大的公共交互教育系统数据集.https:∕∕github.com∕riiid∕ednetJunyi来自Junyi Academy(一个在线教育网站),除EdNet外数据量最多的开源数据集.https:∕∕pslcdatashop.web.cmu.edu∕DatasetInfo?datasetId=1198ASSIST2009来自ASSISTMENTS在线辅导系统,去掉重复记录之后,包含4151个学生在110个问题上的325673个交互.https:∕∕sites.google.com∕site∕assistmentsdata∕home∕as-sistment-2009-2010data∕skill-builder-data-2009-2010ASSIST2012包含27066个学生在45716个问题上的2541201个交互.https:∕∕sites.google.com∕site∕assistmentsdata∕home∕2012-13-school-data-with-affectASSIST2015包含19840个学生在100个问题上的683801个交互.https:∕∕sites.google.com∕site∕assistmentsdata∕home∕2015-assistments-skill-builderdataASSIST2017包含686个学生在102个问题上的942816个交互.https:∕∕sites.google.com∕view∕assistmentsdatamining∕dataset?authuser=0

3.2 模型对比与性能概览

表3总结了各种模型所属的改进方向类别和其主要的改进方式.表4总结了使用公开数据集的DLKT模型的性能表现(以大多数论文都采用了的AUC指标为基准),表4中的数据皆来自于模型初始论文,取最大值.需要指出的是,深度学习模型受参数设置影响较大,且同一个模型在不同论文中的表现也存在较大差异,因此,表4中的数据参考价值大于实际意义.

Table 3 An Overview of DKT Model Improvement Methods

表3 DKT模型改进方法概览

方法名称改进类别改进方式A-DKT[37]可解释性问题的改进计算KC之间的注意力DKVMN[38]可解释性问题的改进计算题目与KC之间的注意力DKVMN-CA[39]可解释性问题的改进改进DKVMN,使其支持自定义的KC标签EERNN[40]可解释性问题的改进计算隐藏状态之间的注意力EKT[41]可解释性问题的改进结合EERNN和DKVMNKQN[42]可解释性问题的改进基于向量点积的自解释模型Deep-IRT[43]可解释性问题的改进基于IRT理论,在DKVMN基础上构建的自解释模型LRP[44]可解释性问题的改进使用分层相关性传播方法解释计算过程中的数值变化不确定性评估[45-46]可解释性问题的改进使用不确定性评估方法减轻预测过程中的不透明性Hop-LSTM[47]长期依赖问题的改进根据拓扑关系跳跃连接的LSTMNKT[48]长期依赖问题的改进双层堆叠LSTMSAKT[52]长期依赖问题的改进Transformer编码器结构的迁移应用SAINT[53]长期依赖问题的改进完整的Transformer模型的迁移应用DKT+Transformer[54]长期列依赖问题的改进基于时序信息,改进了自注意力的计算方式DKT-FE[55]缺少学习特征问题的改进使用特征工程,人工分析特征,特征与交互共同嵌入DKT-DT[58]∕DKVMN-DT[59]缺少学习特征问题的改进使用CART提取特征,特征与交互共同嵌入DKT+forgetting[60]缺少学习特征问题的改进基于历史交互记录计算遗忘因子,遗忘因子与交互共同嵌入EERNN[35]缺少学习特征问题的改进双向LSTM提取题目文本的语义特征,语义特征与交互共同嵌入AKT[62]缺少学习特征问题的改进从题目文本中提取猜测和失误行为特征,特征用于隐藏状态的更新EHFKT[5]缺少学习特征问题的改进使用BERT提取题目文本特征,特征用于隐藏状态的更新LSTMCQ[65]缺少学习特征问题的改进融合上下文信息的交互嵌入方式DKT-DSC[66]∕DSCMN[67]缺少学习特征问题的改进将学生按能力分组进行训练以隐式添加学生能力特征Colearn[68]缺少学习特征问题的改进模型额外输入提示获取概率,并添加额外的损失函数PDKT-C[69]缺少学习特征问题的改进将题目的拓扑关系正则化,作为额外的损失函数DKT-S[70]缺少学习特征问题的改进使用图嵌入算法嵌入拓扑关系,添加额外的损失函数DHKT[73]缺少学习特征问题的改进用铰链损失建模题目间的差异,添加额外的损失函数qDKT[74]缺少学习特征问题的改进将题目差异正则化,作为额外的损失函数GKT[75]缺少学习特征问题的改进使用图神经网络添加题目拓扑关系CKT[76]缺少学习特征问题的改进使用卷积神经网络提取特征SKVMN[47]缺少学习特征问题的改进使用三角隶属度函数计算拓扑关系,并构造跳跃连接的RNNDeepFM[78]缺少学习特征问题的改进使用因式分解机构造并提取特征KTM-DLF[80]缺少学习特征问题的改进利用KTM与RNN,结合学生能力、题目难度、学习与遗忘行为的建模DynEmb[81]缺少学习特征问题的改进矩阵分解与RNN的结合BDKT[82]缺少学习特征问题的改进利用贝叶斯网络对丰富的学习特征建模,可以预防过拟合问题Q-Embedding[83]缺少学习特征问题的改进端对端的KT模型,无需KC标签信息

Table 4 An Overview of DLKT Models

表4 DLKT模型AUC指标对比概览 %

方法数据集Simulated-5Static2011KDDCup2010EdNetJunyiASSIST09ASSIST12ASSIST15ASSIST2017DKT75.0080.2086.0072.52DKVMN82.7382.8481.5772.68DKT+82.6483.4982.2773.7173.43KQN82.8283.1682.3573.40Deep-IRT82.9881.6572.88

续表4 %

注:黑体值表示对应数据集上的最佳结果.

方法数据集Simulated-5Static2011KDDCup2010EdNetJunyiASSIST09ASSIST12ASSIST15ASSIST2017AKT81.2586.0681.8590.4184.6172.8271.81CKT82.9083.0082.5073.5071.50DKT-FE74.0086.70DKT-DT73.0074.90DKVMN-DT89.70SKVMN84.0084.8582.6783.6374.84SAKT83.2085.3084.885.4073.40qDKT83.4076.2077.00DKT-DSC81.0091.0087.0087.00DSCMN86.0081.2078.571.00BDKT75.2065.00GKT76.972.3Q-Embedding8076.00DKT+TF94.7078.4080.6SAINT78.11NKT77.87PDKT-C78.00DHKT83.3378.6677.47DynEmb83.6373.9073.60A-DKT82.50LSTMCQP73.88

4 DLKT模型的应用

在DLKT领域,除了对DKT模型的改进之外,还有许多研究致力于探索DLKT模型在教育领域的应用.如图18所示,除了主要用来预测学生下一次答对题目的概率,DLKT模型还有许多其他应用,下面简单介绍这些应用.

Fig. 18 Other applications of DLKT model

图18 DLKT模型的其他应用

4.1 发现题目的拓扑顺序

Zhang等人[84]提出了一种基于规则的方法,利用DKT模型发现知识点之间的拓扑顺序.具体来说,在DKT模型中,由于一个题目对应一个知识点,因此,答对题目的概率可以视为掌握题目对应知识点的概率.将输出概率大于0.5的知识点视为掌握,拓扑顺序的发现分为3个步骤:

1) 确定偏序关系.若当前的知识点被掌握,则输出概率最高的知识点为先决知识点;若当前的知识点未被掌握,则输出概率最低的知识点为先决知识点.

2) 删除冗余连接.ka,kb,kc为存在kakb,kbkc,kakc关系的3个KC,删除其中的冗余连接,得到类似kakbkc的有向无环图.

3) 用Kahn’s算法[85]把有向无环图转化为拓扑顺序.

4.2 应用于编程题(主观题)

Wang等人[86]将LSTM模型应用到编程题上,模型的输入为学生对单个编程题目的多次提交记录.提交的代码被表达成一个抽象语法树(abstract syntax tree, AST),然后利用递归神经网络对代码的AST进行向量化[87-88],向量化后的AST作为LSTM的输入,最后,模型预测学生能够成功解决同一个知识点的下一个编程题的概率.Wang等人[86]的模型仅支持基于块的编程语言Scratch,Swamy等人[89]扩展了他们的工作,提出了一种对编程语言没有限制的模型.在模型的输入方面,Swamy等人使用了scikit-learn的默认标记方案对学生代码中的非字母数字字符做分词,然后计算词频-逆文档频率(term frequency-inverse document frequency, tf-idf)生成代码的向量表示.向量的长度为单词的总数,其中每一项为对应单词出现的次数.代码的向量化表示与one-hot编码的学生编号、问题编号、尝试次数编号组合,作为LSTM的输入,模型的预测结果为完成每个知识点对应题目的剩余尝试次数.

4.3 验证教育理论

Lalwani等人[90]利用DKT模型验证改进的布鲁姆分类法(revised Bloom’s taxonomy).改进的布鲁姆分类法将认知分为6个阶段,分别是记忆、理解、应用、分析、评估和创造.这6个阶段的复杂度逐渐递增,且前面的阶段是后面阶段的先决条件.Lalwani等人[90]将验证过程抽象为研究掌握前面阶段的KC对掌握后面阶段知识点的影响.具体来说,通过模型的输出判断学生是否掌握KC,然后计算不同阶段KC之间掌握程度的差异:

(74)

其中,i,j分别代表掌握ki,kj的概率,且i的分类阶段在j之前,*表示未掌握KC的初始状态.表示分类阶段在i之前的知识点,包括表示分类阶段在i之前的知识点,不包括i.ij表示在掌握i的前提下掌握j的概率.

在后续的工作中,Lalwani等人[91]在原始的DKT模型中加入了学生练习之间的时间间隔作为特征,将改进后的模型命名为DKT-t通过比较DKT与DKT-t模型的差异,研究时间间隔对预测的影响,并进一步利用DKT-t模型追踪遗忘曲线.

4.4 学习路径推荐

Cai等人[92]提出了一种利用知识追踪以及强化学习技术的学习路径推荐方法,并命名为KT-KDM.KT-KDM分为2部分,KTM和DKM,前者是一个基于DKT+模型的知识追踪模型,后者通过预测知识需求水平(level of knowledge requirements, LKR)来获得KTM提供的学习者知识掌握程度,并推荐习题.

如图19所示,推荐过程被建模为一个采用强化学习方法的Markov决策模型.KDM本质上是一个使用KTM建模的学习状态作为输入的预测网络,其输出为一个向量,其中每个元素表示每个习题的LKR.然后使用随机加权函数选择一个习题进行推荐.奖励函数设计为相邻2个推荐的习题的掌握度之差,同时,为了避免模型反复推荐相同的高回报习题,对已经推荐的习题进行了惩罚.奖励函数为

(75)

其中,k表示推荐的最后一个KC,sk,t表示k在时刻t的知识状态,nk,t表示在k被推荐的次数.

Fig. 19 Markov process model the recommendation learning path

图19 学习路径推荐过程的Markov决策模型

4.5 STEM/Non-STEM职业预测

Yeung等人[93]将DKT+模型预测的结果与从数据集中提取出的学生特征相结合,以预测学生是否会从事STEM类职业.

Fig. 20 Architecture of STEM/Non-STEM career prediction model

图20 STEM/Non-STEM职业预测模型结构

如图20所示,将DKT+模型最后一次预测的结果yt与学生的特征xsp连接得到x′=ytxsp,作为机器学习模型的输入.机器学习模型学习x′与STEM标签l∈{0,1}的映射关系,并做出STEM/Non-STEM的职业预测,有GBDT,LAD,LR,SVM这4种实现方式.

4.6 生成试卷

Wu等人[94]提出了一种利用知识追踪的试卷生成方法.具体来说,假设一张试卷包含nq个题目与nk个知识点,则试卷可以表示为一个矩阵Enq×nk.使用每种知识点出现的概率表示试卷中每种知识点的权重,用P(oj)表示KC j出现的概率:

(76)

其中,Eij表示E的第i行第j.假设有ns个学生,学生的对知识点的掌握程度可以表示为矩阵Sns×nk.知识掌握程度来自于深度知识追踪模型输出的答对题目的概率,由于一个题目对应一个知识点,所以答对题目的概率可以看作是对知识点的掌握程度.将题目中所有知识点的掌握程度相乘即为答对题目的概率,学生l答对题目i的概率P(ali=1)表示为

(77)

Scorei表示问题i的总分数,则学生l的试卷成绩可以表示为

(78)

ns个学生的成绩联合,表示为R={r1,r2,…,rn},用P(R)表示R的分布.Wu等人提出,合理的试卷有2个必要条件:

1) 卷中KC分布与课程中的接近,即ΦW.其中,Φ=(P(o1),P(o2),…,P(onk)),W中每一项表示对应KC的权重.

2) 每一组学生成绩的分布应该符合正态分布,即P(R)~N(μ,σ2),其中,N(μ,σ2)表示均值为μ、标准差为σ2的正态分布.

最后,使用动态规划算法和遗传算法更新试卷,使其符合上述2个必要条件.

5 总结与展望

本文聚焦教育大数据中的知识追踪,对该领域内基于深度学习方法的知识追踪模型进行了全面回顾和系统性的梳理.首先介绍了该领域的开创性工作DKT,然后基于该工作,分针对可解释问题的改进、针对长期依赖问题的改进以及针对缺少学习特征问题的改进三大主要技术改进方向构建了技术演进脉络图、梳理了各模型的技术重难点、分析了各模型的优点和局限性.其中,可解释性问题作为深度学习领域普遍存在的问题,尚未得到有效解决,DLKT也不例外,目前的方法都只能有限地提高可解释性.长期依赖问题在自注意力模型上得到了完美解决,但其需要额外的位置编码才可以维持序列学习能力.对缺少学习特征问题的研究占据了DLKT的主要部分,嵌入方式、损失函数限制和新结构3种方式各有优劣:嵌入方式直观但是过于依赖模型的学习能力,损失函数限制可以使指定模型优化的方向但需要大量的人工工作,新结构的使用带来了许多优点,但深入研究的缺乏可能使其中的缺点无法暴露.最后我们还整理了可供研究者使用的公开数据集,对比评估了各模型的性能表现和考察了该领域的主要应用.

基于深度学习的知识追踪因其优秀的性能而被广泛关注.对于目前发展迅速的线上教育,其产生的大量教育数据正好对应了深度学习模型对于数据量的需求,而无需标注数据的特性大大提高了数据的利用率,同时,深度学习框架的普及降低了模型构建的门槛.多种因素的共同作用,使得DLKT被广泛应用于在线教育平台,也使其成为教育数据挖掘领域新的研究热点.但是目前该领域尚在起步阶段,在实际应用中,仍有许多挑战和问题亟待解决.基于目前存在的挑战与问题,我们总结了7个可能的研究方向供研究者参考.

1) 现有DLKT模型大多使用二元变量来表示题目的回答情况,这种建模方式不适合分数值分布连续的主观题.Wang等人[86]和Swamy等人[89]在处理学生的编程数据时,使用了学习者回答的连续快照作为回答情况的指示器,这提供了一种对主观题目建模的方式.而其他的对主观题目的建模方法仍有很大的研究前景.

2) 目前DLKT主要应用于在线教育平台,如何利用好在线平台所提供的大量学习轨迹信息,是研究的难点之一.Mongkhonvanit等人[95]提供了一种对教学视频观看行为建模的方法,Huan等人[96]则利用了鼠标轨迹信息.而其他学习特征信息的提取、建模亟需更多的研究.与此同时,特征的添加也是一大难点.对于以RNN为基础的DLKT模型来说,输入向量的长度会显著影响模型的训练速度.这就需要使用降维方法减小向量的长度,或者采用其他的嵌入方式(如LSTMCQ)融合更多特征而不增加向量长度.总而言之,学习特征信息的提取、建模、添加将会是DLKT实际应用中的重点研究方向.

3) DLKT的优秀性能使利用其验证经典教育理论成为可能.如Lalwani等人[90]验证改进的布鲁姆分类与遗忘曲线.同时,已提出的教育理论也可以为建模提供指导,如Gan等人[80]结合了学习与遗忘理论.经典教育理论在DLKT领域的应用值得更多的研究者加以关注.

4) 利用DLKT模型构建知识图谱.DLKT模型可以用来发现知识点之间的相互关系,构建出知识点关系图,这可以看作是简化的知识图谱.知识图谱作为当前人工智能时代最为主要的知识表现形式,如何扩展模型的知识结构发现能力,将知识点关系图扩展为知识图谱将会是未来的重点研究方向.

5) 目前的DLKT模型中仍存在许多不确定因素,现有的理论推断并不足以解释DLKT模型的训练过程.在基于Transformer的模型中,掩码机制被用来屏蔽后面时间的权重,这是为了防止未答的题目影响已答的题目.而Xu等人[97]使用双向LSTM以融合过去和未来的上下文序列信息.两者所依据的原理是相悖的,但都获得了性能提升.如何深入研究,以完整解释DLKT模型的训练过程,将会是未来的重点研究方向.

6) 目前DLKT主要使用RNN模型,许多研究已经证明了RNN的优越性.同时,Transformer模型、GNN模型也在知识追踪领域有着优秀的表现.而其他更多模型的应用仍亟需深度研究,对其他深度学习模型的应用将会是重要研究方向.

7) Transformer相对于RNN的一大优势就是没有长期依赖问题,但目前基于Transformer的DLKT模型却并没有利用好这个优势,如SAKT和SAINT,它们都将序列长度设置为100,这个长度并没有超过LSTM的序列学习容量(200).同时,实验显示,位置编码的有无对最终的结果影响并不大.这似乎说明长期依赖与序列关系对KT任务的影响没有目前所认为的那么大,以此类推,各种学习特征对于KT任务的影响值得进一步研究.

作者贡献声明:刘铁园、陈威是综述的主要写作人,完成相关文献资料的收集和分析、论文初稿的写作和校对;常亮、古天龙是项目的构思者及负责人,指导论文写作.

参考文献

[1]Li Feiming, Ye Yanwei, Li Xiaofei, et al. Application of knowledge tracing model in education: A review from 2008 to 2017[J]. Distance Education in China, 2019(7): 86-91 (in Chinese)(李菲茗, 叶艳伟, 李晓菲, 等. 知识追踪模型在教育领域的应用: 2008—2017年相关研究的综述[J]. 中国远程教育, 2019(7): 86-91)

[2]Ha H, Hwang U, Hong Yongjun, et al. Deep trustworthy knowledge tracing[J]. arXiv preprint, arXiv: 1805.10768, 2018

[3]Pardos Z A, Bergner Y, Seaton D T, et al. Adapting Bayesian knowledge tracing to a massive open online course in edx[C] //Proc of the 6th Int Conf on Educational Data Mining(EDM). Worcester, MA: IEDMS, 2013: 137-144

[4]Wang Zhuo, Zhu Jile, Li Xiang, et al. Structured knowledge tracing models for student assessment on coursera[C] //Proc of the 3rd ACM Conf on Learning @ Scale(L@S). New York: ACM, 2016: 209-212

[5]Tong Hanshuang, Zhou Yun, Wang Zhen. Exercise hierarchical feature enhanced knowledge tracing[C] //Proc of the 21st Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2020: 324-328

[6]Corbett A T, Anderson J R. Knowledge tracing: Modeling the acquisition of procedural knowledge[J]. User Modeling and User-Adapted Interaction, 1994, 4(4): 253-278

[7]Baker R S J D, Corbett A T, Aleven V. More accurate student modeling through contextual estimation of slip and guess probabilities in Bayesian knowledge tracing[G] //LNCS 5091: Proc of Intelligent Tutoring Systems(ITS). Berlin: Springer, 2008: 406-415

[8]Pavlik P I, Cen H, Koedinger K R. Performance factors analysis: A new alternative to knowledge tracing[C] //Proc of the 14th Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2009: 531-538

[9]Wauters K, Desmet P, Van Den Noortgate W. Adaptive item-based learning environments based on the item response theory: Possibilities and challenges[J]. Journal of Computer Assisted Learning, 2010, 26(6): 549-562

[10]Gong Yue, Beck J E, Heffernan N T. Comparing knowledge tracing and performance factor analysis by using multiple model fitting procedures[G] //LNCS 6094: Proc of the 10th Int Conf on Intelligent Tutoring Systems(ITS). Berlin: Springer, 2010: 35-44

[11]Piech C, Bassen J, Huang J, et al. Deep knowledge tracing[C] //Proc of the 28th Int Conf on Neural Information Processing System(NeurIPS). Cambridge, MA: MIT, 2015: 505-513

[12]Pelanek R. Bayesian knowledge tracing, logistic models, and beyond: An overview of learner modeling techniques [J].User Modeling and User Adapted Interaction, 2017, 27(3/4/5): 313-350

[13]Xu Pengfei, Zheng Qinhua, Chen Yaohua, et al. Research on learner modeling in education data mining[J]. Distance Education in China, 2018 (6): 5-11 (in Chinese)(徐鹏飞, 郑勤华, 陈耀华, 等. 教育数据挖掘中的学习者建模研究[J]. 中国远程教育, 2018 (6): 5-11)

[14]Liu Hengyu, Zhang Tiancheng, Wu Peiwen, et al. A review of knowledge tracking[J]. Journal of East China Normal University: Natural Sciences, 2019(5): 1-15 (in Chinese)(刘恒宇, 张天成, 武培文, 等. 知识追踪综述[J]. 华东师范大学学报: 自然科学版, 2019(5): 1-15)

[15]Hu Xuegang, Liu Fei, Bu Chenyang. Research advances on knowledge tracing models in educational big data[J]. Journal of Computer Research and Development, 2020, 57(12): 2523-2546 (in Chinese)(胡学钢, 刘菲, 卜晨阳. 教育大数据中认知跟踪模型研究进展[J]. 计算机研究与发展, 2020, 57(12): 2523-2546)

[16]Zhang Nuan, Jiang Bo. Review progress of learner knowledge tracing[J]. Computer Science, 2021, 48(4): 213-222 (in Chinese)(张暖, 江波. 学习者知识追踪研究进展综述[J]. 计算机科学, 2021, 48(4): 213-222)

[17]Khajah M, Lindsey R V, Mozer M C. How deep is knowledge tracing[C] //Proc of the 9th Int Conf on Educational Data Mining(EDM). Worcester, MA: IEDMS, 2016: 94-101

[18]Hochreiter S, Schmidhuber J. Long short-term memory[J]. Neural Computation, 1997, 9(8): 1735-1780

[19]Chung J, Gulcehre C, Cho K H, et al. Empirical evaluation of gated recurrent neural networks on sequence modeling[J]. arXiv preprint,arXiv:1412.3555, 2014

[20]Candès E J, Wakin M B. An introduction to compressive sampling[J]. IEEE Signal Processing Magazine, 2008, 25(2): 21-30

[21]Xiong Xiaolu, Zhao Siyuan, Van Inwegen E G, et al. Going deeper with deep knowledge tracing[C] //Proc of the 9th Int Conf on Educational Data Mining(EDM). Worcester, MA: IEDMS, 2016: 545-550

[22]Mao Ye, Lin Chen, Chi Min. Deep learning Bayesian knowledge tracing: Student models for interventions[J]. Journal of Educational Data Mining, 2018, 10(2): 28-54

[23]Montero S, Arora A, Kelly S, et al. Does deep knowledge tracing model interactions among skills[C] //Proc of the 11th Int Conf on Educational Data Mining(EDM). Worcester, MA: IEDMS, 2018: 462-466

[24]King D R. Production implementation of recurrent neural networks in adaptive instructional systems[C] //Proc of the 22nd Int Conf on Human-Computer Interaction(HCI). Berlin: Springer, 2020: 350-361

[25]Wilson K H, Xiong Xiaolu, Khajah M, et al. Estimating student proficiency: Deep learning is not the panacea [C/OL] //Proc of the 27th Conf on Neural Information Processing Systems, Workshop on Machine Learning for Education. 2016[2020-10-22]. http://www.rob-lindsey.com/papers/2016/nips.pdf:

[26]Doleck T, Lemay D J, Basnet R B, et al. Predictive analytics in education: A comparison of deep learning frameworks[J]. Education and Information Technologies, 2020, 25(3): 1951-1963

[27]Lalwani A, Agrawal S. Few hundred parameters outperform few hundred thousand[C] //Proc of the 10th Int Conf on Educational Data Mining(EDM). Worcester, MA: IEDMS, 2017: 448-453

[28]Wilson K H, Karklin Y, Han Bojian, et al. Back to the basics: Bayesian extensions of IRT outperform neural networks for proficiency estimation[C] //Proc of the 9th Int Conf on Educational Data Mining(EDM). Worcester, MA: IDEMS, 2016: 539-544

[29]Ding Xinyi, Larson E C. Why deep knowledge tracing has less depth than anticipated[C] //Proc of the 12th Int Conf on Educational Data Mining(EDM). Worcester, MA: IDEMS, 2019: 282-287

[30]Ghosh A, Heffernan N, Lan A S. Context-aware attentive knowledge tracing[C] //Proc of the 26th ACM SIGKDD Int Conf on Knowledge Discovery & Data Mining. New York: ACM, 2020: 2330-2339

[31]Khandelwal U, He He, Qi Peng, et al. Sharp nearby, fuzzy far away: How neural language models use context[C] //Proc of the 56th Annual Meeting of the Association for Computational Linguistics(ACL). Stroudsburg, PA: ACL, 2018: 284-294

[32]Tang Gongbo, Müller M, Gonzales A R, et al. Why self-attention? A targeted evaluation of neural machine translation architectures[C] //Proc of the 2018 Conf on Empirical Methods in Natural Language Processing(EMNLP). Stroudsburg, PA: ACL, 2018: 4263-4272

[33]Daniluk M, Rocktäschel T, Welbl J, et al. Frustratingly short attention spans in neural language modeling [C/OL] //Proc of the 5th Int Conf on Learning Representations(ICLR). 2017[2020-10-22]. https://openreview.net/forum?id=ByIAPUcee

[34]Yeung C K, Yeung D Y. Addressing two problems in deep knowledge tracing via prediction-consistent regularization[C] //Proc of the 5th Annual ACM Conf on Learning at Scale(L@S). New York: ACM, 2018: 5:1-5:10

[35]Zhu Jia, Yu Weihao, Zheng Zetao, et al. Learning from interpretable analysis: Attention-based knowledge tracing[G] //LNCS 12164: Proc of the 21st Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2020: 364-368

[36]Ji Shouling, Li Jinfeng, Du Tianyu, et al. Survey on techniques, applications and security of machine learning interpretability[J]. Journal of Computer Research and Development, 2019, 56(10): 2071-2096 (in Chinese)(纪守领, 李进锋, 杜天宇, 等. 机器学习模型可解释性方法、应用与安全研究综述[J]. 计算机研究与发展, 2019, 56(10): 2071-2096)

[37]Liu Dong, Dai Huanhuan, Zhang Yunping, et al. Deep knowledge tracking based on attention mechanism for student performance prediction[C] //Proc of the 2nd Int Conf on Computer Science and Educational Informatization(CSEI). Piscataway, NJ: IEEE, 2020: 95-98

[38]Zhang Jiani, Shi Xingjian, King I, et al. Dynamic key-value memory networks for knowledge tracing[C] //Proc of the 26th Int Conf on World Wide Web(WWW). New York: ACM, 2017: 765-774

[39]Ai Fangzhe, Chen Yishuai, Guo Yuchun, et al. Concept-aware deep knowledge tracing and exercise recommendation in an online learning system [C/OL] //Proc of the 12th Int Conf on Educational Data Mining(EDM). 2019[2020-10-22]. https://drive.google.com/file/d/1o8JRGKxow-d4QtM2LS2D8 X2DPnq554Ix/view?usp=drive_open

[40]Su Yu, Liu Qingwen, Liu Qi, et al. Exercise-enhanced sequential modeling for student performance prediction[C] //Proc of the 32nd AAAI Conf on Artificial Intelligence(AAAI). Palo Alto, CA: AAAI, 2018: 2435-2443

[41]Huang Zhenya, Yin Yu, Chen Enhong, et al. EKT: Exercise-aware knowledge tracing for student performance prediction [J/OL]. IEEE Transactions on Knowledge and Data Engineering, 2019 [2020-10-22]. https://ieeexplore.ieee.org/abstract/document/8744302/

[42]Lee J, Yeung D Y. Knowledge query network for knowledge tracing: How knowledge interacts with skills[C] //Proc of the 9th Int Conf on Learning Analytics & Knowledge(LAK). New York: ACM, 2019: 491-500

[43]Yeung C K. Deep-IRT: Make deep learning-based knowledge tracing explainable using item response theory [C/OL] //Proc of the 12th Int Conf on Educational Data Mining(EDM). 2019[2020-10-22]. https://drive.google.com/file/d/1B\_vuJGNgdl7Wxdbh9Lz9nkM\_GuxWAfGD

[44]Lu Yu, Wang Deliang, Meng Qinggang, et al. Towards interpretable deep learning models for knowledge tracing[G] //LNCS 12164: Proc of the 21st Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2020: 185-190

[45]Ding Xinyi, Larson E C. Incorporating uncertainties in student response modeling by loss function regularization[J]. Neurocomputing, 2020, 409: 74-82

[46]Hu Qian, Rangwala H. Reliable deep grade prediction with uncertainty estimation[C] //Proc of the 9th Int Conf on Learning Analytics & Knowledge(LAK). New York: ACM, 2019: 76-85

[47]Abdelrahman G, Wang Qing. Knowledge tracing with sequential key-value memory networks[C] //Proc of the 42nd Int Conf on Research and Development in Information Retrieval(SIGIR). New York: ACM, 2019: 175-184

[48]Bahdanau D, Cho K, Bengio Y. Neural machine translation by jointly learning to align and translate [C/OL] //Proc of the 3rd Int Conf on Learning Representations(ICLR). 2015[2020-10-22]. http:// arxiv.org/abs/1409.0473

[49]Sha Long, Hong Pengyu. Neural knowledge tracing[G] //LNCS 10512: Proc of Int Conf on Brain Function Assessment in Learning(BFAL). Berlin: Springer, 2017: 108-117

[50]Lin Zhouhan, Feng Minwei, Santos C N, et al. A structured self-attentive sentence embedding [C/OL] //Proc of the 5th Int Conf on Learning Representations(ICLR). 2017[2020-10-22]. https://openreview.net/forum?id=BJC\_jUqxe

[51]Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C] //Proc of the 30th Int Conf on Neural Information Processing Systems(NeurIPS). Cambridge, MA: MIT Press, 2017: 6000-6010

[52]Pandey S, Karypis G. A self-attentive model for knowledge tracing[C] //Proc of the 12th Int Conf on Educational Data Mining(EDM). Worcester, MA: IDEMS, 2019[2020-10-22]. https://drive.google.com/file/d/18d\_X6AXkPMhiH FQ2POarstVbX\_7oMdFM

[53]Choi Y, Lee Y, Cho J, et al. Towards an appropriate query, key, and value computation for knowledge tracing[C] //Proc of the 7th ACM Conf on Learning @ Scale(L@S). New York: ACM, 2020: 341-344

[54]Pu Shi, Yudelson M, Ou Lu, et al. Deep knowledge tracing with transformers[C] //Proc of the 21st Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2020: 252-256

[55]Zhang Liang, Xiong Xiaolu, Zhao Siyuan, et al. Incorporating rich features into deep knowledge tracing[C] //Proc of the 4th ACM Conf on Learning at Scale(L@S). New York: ACM, 2017: 169-172

[56]Hinton G E, Salakhutdinov R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 313(5786): 504-507

[57]Suragani G, Pothuraju L N, Reddi K S, et al. Enhancing deep knowledge tracing(DKT) model by introducing extra student attributes [C/OL] //Proc of the 5th Int Conf for Convergence in Technology(I2CT). 2019[2020-10-22]. https://ieeexplore.ieee.org/abstract/document/9033598

[58]Yang Haiqin, Cheung L P. Implicit heterogeneous features embedding in deep knowledge tracing[J]. Cognitive Computation, 2018, 10(1): 3-14

[59]Sun Xia, Zhao Xu, Ma Yuan, et al. Multi-behavior features based knowledge tracking using decision tree improved DKVMN [C/OL] //Proc of the ACM Turing Celebration Conf. 2019[2020-10-22]. https://dl.acm.org/doi/abs/10.1145/3321408.3322847

[60]Nagatani K, Zhang Qian, Sato M, et al. Augmenting knowledge tracing by considering forgetting behavior[C] //Proc of the Int World Wide Web Conf. New York: ACM, 2019: 3101-3107

[61]Mikolov T, Sutskever I, Chen K, et al. Distributed representations of words and phrases and their compositionality[C] //Proc of the 26th Int Conf on Neural Information Processing Systems(NeurIPS). Cambridge, MA: MIT, 2013: 3111-3119

[62]Cheng Song, Liu Qi, Chen Enhong. Domain adaption for knowledge tracing[J]. arXiv preprint, arXiv:2001.04841, 2020

[63]Tato A, Nkambou R. Some improvements of deep knowledge tracing[C] //Proc of the 31st Int Conf on Tools with Artificial Intelligence(ICTAI). Piscataway, NJ: IEEE, 2019: 1520-1524

[64]Devlin J, Chang Mingwei, Lee K, et al. BERT: Pre-training of deep bidirectional transformers for language understanding[C] //Proc of the 2019 Conf of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies(NAACL-HLT). Stroudsburg, PA: ACL, 2019: 4171-4186

[65]Huo Yujia, Wong D F, Ni L M, et al. Knowledge modeling via contextualized representations for LSTM-based personalized exercise recommendation[J]. Information Sciences, 2020, 523: 266-278

[66]Minn S, Yu Yi, Desmarais M C, et al. Deep knowledge tracing and dynamic student classification for knowledge tracing[C] //Proc of the Int Conf on Data Mining(ICDM). Piscataway, NJ: IEEE, 2018: 1182-1187

[67]Minn S, Desmarais M C, Zhu Ferida, et al. Dynamic student classification on memory networks for knowledge tracing[G] //LNCS 11440: Proc of the Pacific-Asia Conf on Knowledge Discovery and Data Mining(PAKDD). Berlin: Springer, 2019: 163-174

[68]Chaudhry R, Singh H, Dogga P, et al. Modeling hint-taking behavior and knowledge state of students with multi-task learning [C/OL] //Proc of the 11th Int Conf on Educational Data Mining(EDM). 2018[2020-10-22]. http://education aldatamining.org/files/conferences/EDM2018/papers/EDM2018\_paper\_100.pdf

[69]Chen Penghe, Lu Yu, Zheng V W, et al. Prerequisite-driven deep knowledge tracing[C] //Proc of the Int Conf on Data Mining(ICDM). Piscataway, NJ: IEEE, 2018: 39-48

[70]Wang Zhiwei, Feng Xiaoqin, Tang Jiliang, et al. Deep knowledge tracing with side information[G] //LNCS 11626: Proc of the Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2019: 303-308

[71]Tang Jian, Qu Meng, Wang Mingzhe, et al. LINE: Large-scale information network embedding[C] //Proc of the 24th Int Conf on World Wide Web(WWW). New York: ACM, 2015: 1067-1077

[72]Grover A, Leskovec J. Node2Vec: Scalable feature learning for networks[C] //Proc of the 22nd Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2016: 855-864

[73]Wang Tianqi, Ma Fenghong, Gao Jing. Deep hierarchical knowledge tracing [C/OL] //Proc of the 12th Int Conf on Educational Data Mining(EDM). 2019[2020-10-22]. https://drive.google.com/file/d/1wlW6zAi-l4ZAw8rBA_mXZ5tHgg 6xKL00

[74]Sonkar S, Waters A E, Lan A S, et al. qDKT: Question-centric deep knowledge tracing[C] //Proc of the 13th Int Conf on Educational Data Mining(EDM). 2020[2020-10-22]. https://educationaldatamining.org/files/conferences/EDM2020/papers/paper_35.pdf

[75]Nakagawa H, Iwasawa Y, Matsuo Y. Graph-based knowledge tracing: Modeling student proficiency using graph neural network[C] //Proc of the Int Conf on Web Intelligence(WI). Piscataway, NJ: IEEE, 2019: 156-163

[76]Shen Shuanghong, Liu Qi, Chen Enhong, et al. Convolutional knowledge tracing: Modeling individualization in student learning process[C] //Proc of the 43rd Int Conf on Research and Development in Information Retrieval(SIGIR). New York: ACM, 2020: 1857-1860

[77]Dauphin Y N, Fan A, Auli M, et al. Language modeling with gated convolutional networks[C] //Proc of the 34th Int Conf on Machine Learning(ICML). Cambridge, MA: JMLR, 2017: 933-941

[78]Vie J J. Deep factorization machines for knowledge tracing[C] //Proc of the 13th Workshop on Innovative Use of NLP for Building Educational Applications @NAACL-HLT. Stroudsburg, PA: ACL, 2018: 370-373

[79]Guo Huifeng, Tang Ruiming, Ye Yunming, et al. DeepFM: A factorization-machine based neural network for CTR prediction[C] //Proc of the 26th Int Joint Conf on Artificial Intelligence(IJCAI). Palo Alto, CA: AAAI, 2017: 1725-1731

[80]Gan Wenbin, Sun Yuan, Peng Xian, et al. Modeling learner’s dynamic knowledge construction procedure and cognitive item difficulty for knowledge tracing[J]. Applied Intelligence, 2020, 50(11): 3894-3912

[81]Xu Liangbei, Davenport M A. Dynamic knowledge embedding and tracing[C] //Proc of the 13th Int Conf on Educational Data Mining(EDM). 2020[2020-10-22]. https://educationaldatamining.org/files/conferences/EDM2020/papers/paper_79.pdf

[82]Li Donghua, Jia Yanming, Jian Zhou, et al. Deep knowledge tracing based on Bayesian neural network[C] //Proc of the Int Conf on Intelligent and Interactive Systems and Applications(IISA). Berlin: Springer, 2019: 29-37

[83]Nakagawa H, Iwasawa Y, Matsuo Y. End-to-end deep knowledge tracing by learning binary question-embedding[C] //Proc of the Int Conf on Data Mining Workshops(ICDMW). Piscataway, NJ: IEEE, 2018: 334-342

[84]Zhang Jiani, King I. Topological order discovery via deep knowledge tracing[C] //Proc of the 23rd Int Conf on Neural Information Processing(ICONIP). Berlin: Springer, 2016: 112-119

[85]Kahn A B. Topological sorting of large networks[J]. Communications of the ACM, 1962, 5(11): 558-562

[86]Wang L, Sy A, Liu L, et al. Deep knowledge tracing on programming exercises[C] //Proc of the 4th ACM Conf on Learning at Scale(L@S). New York: ACM, 2017: 201-204

[87]Piech C, Huang J, Nguyen A, et al. Learning program embeddings to propagate feedback on student code[C] //Proc of the 32nd Int Conf on Machine Learning(ICML). Cambridge, MA: JMLR, 2015: 1093-1102

[88]Socher R, Perelygin A, Wu J Y, et al. Recursive deep models for semantic compositionality over a sentiment treebank[C] //Proc of the 2013 Conf on Empirical Methods in Natural Language Processing(EMNLP). Stroudsburg, PA: ACL, 2013: 1631-1642

[89]Swamy V, Guo A, Lau S, et al. Deep knowledge tracing for free-form student code progression[C] //LNCS 10948: Proc of the 19th Int Conf on Artificial Intelligence in Education(AIED). Berlin: Springer, 2018: 348-352

[90]Lalwani A, Agrawal S. Validating revised Bloom’s taxonomy using deep knowledge tracing[C] //Proc of the 19th Int Conf on Artificial Intelligence in Education(AIED). Berlin Springer, 2018: 225-238

[91]Lalwani A, Agrawal S. What does time tell? Tracing the forgetting curve using deep knowledge tracing[C] //Proc of the 20th Int Conf on Artificial Intelligence in Education (AIED). Berlin: Springer, 2019: 158-162

[92]Cai Dejun, Zhang Yuan, Dai Bintao. Learning path recommendation based on knowledge tracing model and reinforcement learning[C] // Proc of the 5th Int Conf on Computer and Communications (ICCC). Piscataway, NJ: IEEE, 2019: 1881-1885

[93]Yeung C K, Yeung D Y. Incorporating features learned by an enhanced deep knowledge tracing model for stem/non-stem job prediction[J]. International Journal of Artificial Intelligence in Education, 2019, 29(3): 317-341

[94]Wu Zhengyang, He Tao, Mao Cenjie, et al. Exam paper generation based on performance prediction of student group[J]. Information Sciences, 2020, 532: 72-90

[95]Mongkhonvanit K, Kanopka K, Lang D. Deep knowledge tracing and engagement with MOOCs[C] //Proc of the 9th Int Conf on Learning Analytics & Knowledge (LAK). New York: ACM, 2019: 340-342

[96]Huan Wei, Li Haotian, Xia Meng, et al. Predicting student performance in interactive online question pools using mouse interaction features[C] //Proc of the 10th Int Conf on Learning Analytics & Knowledge (LAK). New York: ACM, 2020: 645-654

[97]Xu Bin, Yan Sheng, Yang Dan. BiRNN-DKT: Transfer Bi-directional LSTM RNN for knowledge tracing[C] //Proc of the 16th Int Conf on Web Information Systems and Applications (WISA). Berlin: Springer, 2019: 22-27

Research Advances in the Knowledge Tracing Based on Deep Learning

Liu Tieyuan1,2, Chen Wei1, Chang Liang1, and Gu Tianlong1,3

1(Guangxi Key Laboratory of Trusted Software (Guilin University of Electronic Technology), Guilin, Guangxi 541004) 2(School of Electronic Engineering and Automation, Guilin University of Electronic Technology, Guilin, Guangxi 541004) 3(School of Information Science and Technology/School of Cyber Security, Jinan University, Guangzhou 510632)

Abstract Knowledge tracing is an important research direction in the field of educational data mining. The goal is to determine the degree of students’ mastery of knowledge by establishing a model of students’ knowledge changes over time and to mine potential learning rules from their learning trajectories. Fulfilling this goal means personalized guidance to students from the achievement of assisted education through artificial intelligence. Due to its powerful feature extraction capabilities, deep learning has been proven to significantly improve the performance of knowledge tracing models and has attracted more and more attention. Starting from the most basic deep knowledge tracing model, this paper comprehensively reviews the research progress in this field and provides both the technical improvement and an evolutionary map. The 3 main technical improvement directions have been elaborated and compared: 1) improvement of interpretable problems, 2) problems of long-term dependence, and 3) improvement for lack of learning features. At the same time, the existing models in the field have been classified, the public data sets have been sorted out, and the main areas of application are investigated for researchers. Finally, the future research direction of knowledge tracing based on deep learning is explored.

Key words education data mining; deep learning; knowledge tracing; recurrent neural network; artificial intelligence assisted education

(yangmail2002@guet.edu.cn)

中图法分类号 TP391

收稿日期20201023;修回日期:20210527

基金项目国家自然科学基金项目(U1811264,61966009);广西可信软件重点实验室研究课题(KX202058);广西研究生教育创新计划项目(YCBZ2021072)

This work was supported by the National Natural Science Foundation of China (U1811264, 61966009), the Project of Guangxi Key Laboratory of Trusted Software (KX202058), and the Innovation Project of Guangxi Graduate Education (YCBZ2021072).

通信作者古天龙(cctlgu@guet.edu.cn)

Liu Tieyuan, born in 1984. PhD candidate. Lecturer. Member of CCF. His main research interests include educational data mining, deep learning, machine learning.

刘铁园,1984年生.博士研究生,讲师,CCF会员.主要研究方向为教育数据挖掘、深度学习和机器学习.

Chen Wei, born in 1997. Master candidate. His main research interests include educational data mining, deep learning, machine learning.

陈 威,1997年生.硕士研究生.主要研究方向为教育数据挖掘、深度学习和机器学习.

Chang Liang, born in 1980. PhD, professor, PhD supervisor. Senior member of CCF. His main research interests include data and knowledge engineering, formal methods, and trusted software.

常 亮,1980年生.博士,教授,博士生导师,CCF高级会员.主要研究方向为数据和知识工程、形式化方法和可信软件.

Gu Tianlong, born in 1964. PhD, professor, PhD supervisor. Senior member of CCF. His research interests include formal methods, trusted artificial intelligence and data mining.

古天龙,1964年生.博士,教授,博士生导师,CCF高级会员.主要研究方向为形式化方法、可信人工智能和数据挖掘.