当前位置:   article > 正文

Tracing Knowledge State with Individual Cognition and Acquisition Estimation 阅读笔记

racing knowledge state with individual cognition and acquisition estimation
Reference
Ting Long, Yunfei Liu, Jian Shen, Weinan Zhang, Yong Yu. 2021. Tracing
Knowledge State with Individual Cognition and Acquisition Estimation. In
Proceedings of the 44th International ACM SIGIR Conference on Research and
Development in Information Retrieval (SIGIR ’21), July 11–15, 2021, Virtual
Event, Canada. ACM, New York, NY, USA, 10 pages. https://doi.org/10.1145/
3404835.3462827
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

原文链接:https://dl.acm.org/doi/10.1145/3404835.3462827

在线学习网站面临的一个关键问题:动态评估学生的学习状态,找出学生难以回答的问题,并将其推入学生的待回答列表。Knowledge Tracing有利于在线教育中的相关任务,如安排个人学习路径,推荐学习材料。
深度学习拥有强大的学习能力,因此很多人致力于设计知识追踪的深度模型,比如基于拥有auto-regressive结构的深度学习模型RNN的KT模型。该模型中学生的知识状态(概念的掌握水平)由循环单元的隐藏状态表示,框架由read和write两个阶段组成,框架结构如下图所示:
在这里插入图片描述

在read阶段,将recurrent cell的隐含状态和问题表征加载到多层感知器中,预测学生正确回答问题的概率。write阶段通过在收到一个问题的反馈后更新相应的recurrent cell来模拟学生知识状态的动态变化。

1. motivation

上述KT模型存在缺陷:
(1)认为学生认知水平一致(cognition level一致)
(2)认为学生在相同的学习条件下可以获得相同的知识增量(acquisition sensitivity一致)
缺乏对cognition level和acquisition sensitivity的显式建模限制了模型的表现。
在这里插入图片描述

(注:一个question可能包含多个concepts)

为解决这两个缺陷,文章提出Individual Estimation Knowledge Tracing(IEKT) 模型
在这里插入图片描述

IEKT在
(1)read阶段加入cognition estimation(CE)模块,根据学生的知识状态、问题的表征来估计学生的cognition level。
(2)write阶段加入knowledge acquisition sensitivity estimation(KASE)模块,根据学生的知识状态,问题的表征,预测回答和真实回答,估计学生的acquisition sensitivity。
使用强化学习方法训练IEKT,实验结果表明IEKT达到了SOTA水平。

2. contributions

  • 引入CE和KASE模块
  • 在四个公开数据集上验证IEKT,其性能优于比较的基线
  • 实验表明其他KT模型中引入CE和KASE模块也课提高性能

(KT模型相关工作见survey)

3. problem definition

KT问题涉及的符号含义如下表所示:
在这里插入图片描述

X t − 1 = { ( q 1 , r 1 ) , ( q 2 , r 2 ) , … , ( q t − 1 , r t − 1 ) } \mathcal{X}_{t-1}=\left\{\left(q_{1}, r_{1}\right),\left(q_{2}, r_{2}\right), \ldots,\left(q_{t-1}, r_{t-1}\right)\right\} Xt1={(q1,r1),(q2,r2),,(qt1,rt1)}其中 q t q_t qt是step t时的问题, r t r_t rt是学生回答的标签:
r t = { 1 ,  if the student’s answer is right;  0 ,  otherwise  r_{t}=\left\{

1, if the student's answer is right; 0, otherwise 
\right. rt={1, if the student’s answer is right; 0, otherwise 
e i q e_i^q eiq是问题 q i q_i qi的embedding, e j c e_j^c ejc是概念 c j c_j cj的embedding。
KT任务目标是在历史记录基础上,预测step t时回答对新问题 q t q_t qt的概率: P ( r t = 1 ∣ q t , X t − 1 ) P\left(r_{t}=1 \mid q_{t}, X_{t-1}\right) P(rt=1qt,Xt1)。通过学习由参数集 Θ \Theta Θ参数化的函数 f Θ f_\Theta fΘ来预测概率:
r ^ t = f Θ ( ⋅ ) \hat{r}_{t}=f_{\Theta}(\cdot) r^t=fΘ()
r ^ t = P ( r t = 1 ∣ q t , X t − 1 ) , ( ⋅ ) \hat{r}_{t}=P\left(r_{t}=1 \mid q_{t}, X_{t-1}\right),(\cdot) r^t=P(rt=1qt,Xt1),()表示用于预测学生回答的特征。
知识状态 h t \mathbf{h}_t ht反映某学生掌握所有concepts的水平。
cognition level 是学生对于一个问题 q t q_t qt的理解水平,用向量 m t \mathbf{m}_t mt表示。k种不同的cognition levels组成了cognition矩阵 M ∈ R k × d m \mathbf{M}\in\mathbf{R}^{k\times d_m} MRk×dm
knowledge acquisition sensitivity 反映学生回答问题 q t q_t qt并收到反馈后的知识增量,用向量 s t \mathbf{s_t} st表示。b种不同的acquisition sensitivities组成acquisition矩阵 S ∈ R b × d S \mathbf{S}\in\mathbf{R}^{b\times d_{S}} SRb×dS

4. method

4.1 the read stage

在这里插入图片描述

(1) 一个问题可以表征为: v t = e t q ⊕ e ‾ t c \mathbf{v}_{t}=\mathbf{e}_{t}^{q} \oplus \overline{\mathbf{e}}_{t}^{c} vt=etqetc e ‾ t c \overline{\mathbf{e}}_{t}^{c} etc是问题 q t q_t qt涉及concept embeddings的均值, ⊕ \oplus 是concatenate操作,则 v t ∈ R d q + d c \mathbf{v}_{t}\in\mathbf{R}^{d_q + d_c} vtRdq+dc
(2) 将问题表征 v t \mathbf{v}_{t} vt与知识状态 h t \mathbf{h}_t ht进行concatenate操作: h v = h t ⊕ v t \mathbf{h}_{v}=\mathbf{h}_{t} \oplus \mathbf{v}_{t} hv=htvt,则 h t ∈ R d h + d q + d c \mathbf{h}_{t}\in\mathbf{R}^{d_h+d_q + d_c} htRdh+dq+dc
(3) 通过映射函数 f p f_p fp获得cognition vectors的索引概率分布,从中采样得到一个索引 i m , t ∼ f p ( h v ) i_{m, t} \sim f_{p}\left(\mathbf{h}_{v}\right) im,tfp(hv)
(4) 根据索引在cognition矩阵中获得cognition向量 m t = M [ i m , t ] \mathbf{m}_{t}=\mathbf{M}\left[i_{m, t}\right] mt=M[im,t]
(5) 学生正确回答问题 q t q_t qt的概率可估计为:
y t = ReLU ⁡ ( W 1 ⋅ [ m t ⊕ h v ] + b 1 ) , r ^ t = δ ( W 2 ⋅ y t + b 2 ) ,

yt=ReLU(W1[mthv]+b1),r^t=δ(W2yt+b2),
yt=ReLU(W1[mthv]+b1),r^t=δ(W2yt+b2),
W 1 , W 2 , b 1 , b 2 \mathbf{W}_{1}, \mathbf{W}_{2}, \mathbf{b}_{1}, \mathbf{b}_{2} W1,W2,b1,b2是可训练参数
W 1 ∈ R d r × d r , d r = d v + d m , W 2 ∈ R d r × 1 , b 1 ∈ R d r , b 2 ∈ R . \mathbf{W}_{1} \in \mathbf{R}^{d_{r} \times d_{r}}, d_{r}=d_{v}+d_{m}, \mathbf{W}_{2} \in \mathbf{R}^{d_{r} \times 1}, \mathbf{b}_{1} \in \mathbf{R}^{d_{r}}, \mathbf{b}_{2} \in \mathbf{R} . W1Rdr×drdr=dv+dm,W2Rdr×1,b1Rdr,b2R.
δ \delta δ 是sigmoid 函数: δ ( x ) = 1 1 + e − x \delta(\mathbf{x})=\frac{1}{1+e^{-\mathbf{x}}} δ(x)=1+ex1

4.2 the write stage

在这里插入图片描述

(1) 将 h v \mathbf{h}_v hv与预测结果进行concatenate操作:
v p = { h v ⊕ 0 , r ^ t ≥ 0.5 0 ⊕ h v , r ^ t < 0.5 \mathbf{v}_{p}=\left\{

hv0,r^t0.50hv,r^t<0.5
\right. vp={hv0,0hv,r^t0.5r^t<0.5
0 ∈ R d v \mathbf{0} \in \mathbf{R}^{d_{v}} 0Rdv
(2) 将 h v \mathbf{h}_v hv与ground-truth进行concatenate操作:
v g = { h v ⊕ 0 , r t = 1 0 ⊕ h v , r t = 0 \mathbf{v}_{g}=\left\{
hv0,rt=10hv,rt=0
\right.
vg={hv0,rt=10hv,rt=0

0 ∈ R d v \mathbf{0} \in \mathbf{R}^{d_{v}} 0Rdv
(3) 将以上两个concatenations进行concatenate操作:
v m = v p ⊕ v g \mathbf{v}_{m}=\mathbf{v}_{p} \oplus \mathbf{v}_{g} vm=vpvg
作者希望借助(3)可以达到在交互过程中学生蒙对或漏题引起的噪声影响。
(4) 通过映射函数 f e f_e fe从acquisition矩阵 S \mathbf{S} S获得一个acquisition向量:
i s , t ∼ f e ( v m ) , s t = S [ i s , t ] .
is,tfe(vm),st=S[is,t].
is,tstfe(vm),=S[is,t].

(5) 将问题表征 v i \mathbf{v}_i vi与acquisition向量 s t \mathbf{s}_t st进行concatenate操作:
v i = { v t ⊕ s t , r t = 1 , s t ⊕ v t , r t = 0 \mathbf{v}_{i}=\left\{
vtst,rt=1,stvt,rt=0
\right.
vi={vtst,rt=1,stvt,rt=0

(6) 将 v i \mathbf{v}_i vi和当前知识状态 h t \mathbf{h}_t ht喂入RNN cell来更新知识状态,文章采用GRU结构:
u r = δ ( W r ⋅ ( v i ⊕ h t ) + b r ) u z = δ ( W z ⋅ ( v i ⊕ h t ) + b z ) u h = tanh ⁡ ( W h ⋅ ( v i ⊕ ( u r ∗ h t ) ) + b h ) h t + 1 = ( 1 − u z ) ∗ u h + u z ∗ h t .
ur=δ(Wr(viht)+br)uz=δ(Wz(viht)+bz)uh=tanh(Wh(vi(urht))+bh)ht+1=(1uz)uh+uzht.
uruzuhht+1=δ(Wr(viht)+br)=δ(Wz(viht)+bz)=tanh(Wh(vi(urht))+bh)=(1uz)uh+uzht.

W r , b r , W z , b z , W h , b h \mathbf{W}_{r}, \mathbf{b}_{r}, \mathbf{W}_{z}, \mathbf{b}_{z}, \mathbf{W}_{h}, \mathbf{b}_{h} Wr,br,Wz,bz,Wh,bh 是可训练参数
W r , W z , W h ∈ R d h × ( d i + d h ) \mathbf{W}_{r}, \mathbf{W}_{z}, \mathbf{W}_{h} \in \mathbf{R}^{d_{h} \times\left(d_{i}+d_{h}\right)} Wr,Wz,WhRdh×(di+dh) b r , b z , b h ∈ R d h \mathbf{b}_{r}, \mathbf{b}_{z}, \mathbf{b}_{h} \in \mathbf{R}^{d_{h}} br,bz,bhRdh

4.3 model learning

4.1(3)和4.2(4)中直接采样获取向量,无法计算梯度,故采用强化学习算法中的Policy Gradient去优化cognition向量和acquisition向量的选取。

  • 对于4.1(3)中采样获取cognition向量,将 h v \mathbf{h}_v hv作为强化学习的state。action set A m = { 0 , 1 , 2 , . . . , k } A_m=\{0,1,2,...,k\} Am={0,1,2,...,k},其中元素代表着cognition vector的索引( M ∈ R k × d c \mathbf{M}\in\mathbf{R}^{k\times d_c} MRk×dc),4.1(3)中的映射函数 f p f_p fp可以反映”随机stochastic“。reward定义为:
    u ^ t = { 1 T ,  if the prediction is correct,  0 ,  otherwise  \hat{u}_{t}=\left\{

    1T, if the prediction is correct, 0, otherwise 
    \right. u^t={T1, if the prediction is correct, 0, otherwise 
    T表示问答序列的长度。
    cognition向量选择的损失函数定义为:
    L m = − ∑ t T log ⁡ f p ( i m , t ∣ h v ) u t \mathcal{L}_{m}=-\sum_{t}^{T} \log f_{p}\left(i_{m, t} \mid \mathbf{h}_{v}\right) u_{t} Lm=tTlogfp(im,thv)ut
    u t u_t ut表示在step t时的累积reward,可由 u ^ t \hat{u}_t u^t计算得到:
    u t = u ^ t + γ u t + 1 u_{t}=\hat{u}_{t}+\gamma u_{t+1} ut=u^t+γut+1
    γ \gamma γ是discount factor。

  • 对于4.2(4)中采样获取acquisition向量,action set A m = { 0 , 1 , 2 , . . . , b } A_m=\{0,1,2,...,b\} Am={0,1,2,...,b},其中元素代表acquisition vector的索引( S ∈ R b × d s \mathbf{S}\in\mathbf{R}^{b\times d_s} SRb×ds),同理,acquisition向量选择的损失函数可定义为:
    L s = − ∑ t T log ⁡ f e ( i s , t ∣ v m ) u t \mathcal{L}_{s}=-\sum_{t}^{T} \log f_{e}\left(i_{s, t} \mid \mathbf{v}_{m}\right) u_{t} Ls=tTlogfe(is,tvm)ut

则我们的目标是最小化损失函数: L m s = L m + L s \mathcal{L}_{m s}=\mathcal{L}_{m}+\mathcal{L}_{s} Lms=Lm+Ls
KT任务的目标函数是预测概率 r ^ t \hat{r}_t r^t和真实标签 r t r_t rt的负对数似然,即:
L c = − ∑ i = 1 T ( r i log ⁡ r ^ i + ( 1 − r i ) log ⁡ ( 1 − r ^ i ) ) \mathcal{L}_{c}=-\sum_{i=1}^{T}\left(r_{i} \log \hat{r}_{i}+\left(1-r_{i}\right) \log \left(1-\hat{r}_{i}\right)\right) Lc=i=1T(rilogr^i+(1ri)log(1r^i))
最终的损失函数为:
L = L c + λ L m s \mathcal{L}=\mathcal{L}_{c}+\lambda \mathcal{L}_{m s} L=Lc+λLms
训练IEKT的算法代码如下图所示:
在这里插入图片描述

5. experiment results

在四个数据集和十一个baselines上进行实验,IEKT相比baselines在多个指标上均有提升。
IEKT方法基本框架与DHKT相似,但明显好于DHKT,这意味着将CE和KASE模块引入知识跟踪有利于提高性能。
基于深度学习的方法在大多数情况下都优于传统方法。然而,在某些情况下,传统方法具有类似甚至更好的性能。

消融实验

作者为研究CE模块和KASE模块的贡献,进行了消融实验。
结果表明,无论移除模型的哪个模块,IEKT的性能都会下降,并且发现去除KASE对性能的影响比去除CE更显著。作者分析认为原因在于KASE影响未来的所有预测,而CE只影响当前的响应预测。
将CE和KASE应用于其他的框架,实验结果表明大多数情况下引入CE和KASE可以提高性能。

作者还设计了实验证明了去除强化学习的最优化方法也会影响IEKT的性能。

sensitivity analysis

采用不同的超参数测试IEKT的性能,发现ACC和AUC没有明显波动,说明IEKT具有很好的稳定性,模型的最优超参数可以很容易找到

vector distributions

cognition向量之间的相似性和acquisition向量之间的相似性如图所示:
在这里插入图片描述

不同向量之间区分度大。

由于学生的认知水平和知识获取敏感度代表了学生的学习能力,我们将所选向量指标的分布与答题准确率进行对比,如图7所示。与离线教育场景中的许多答题和考试结果一样,学生在该数据集中的准确性也接近z分数分布,如图7©所示。
在这里插入图片描述

可以观察到cognition向量和acquisition向量的选择,如图7(a)和(b)所示。有些cognition向量和acquisition向量被多次选取,有些则被有限次选取,表明模型学习到一些cognition向量和acquisition向量是许多学生共有的,但有些只适用于少数学生。这意味着大多数学生对同一个问题有相似的理解,少数学生对这个问题有不同的理解。

此外,大多数学生的knowledge acquisition sensitivity一般。但也有少部分学生对问题有较强的敏感度。他们可以在与相关问题的几次互动中掌握一个知识概念,但有些学生需要在学习上付出更多的努力。这与图7©中回答问题的准确性所反映的能力是一致的,有很多学生的正确率在50% - 85%之间。但是,正确率低于50%或高于85%的学生数量很少。。

6. 展望

作者发现模型选择的acquisition向量集中在acquisition矩阵的一小部分上,这意味着模型的学习结果与真实学生能力的分布之间存在差距,期待未来弥补这一不足。

(待精读解决:有没有考虑遗忘?能不能引入注意力机制&效果会更好吗?可不可以将采样分布与真实分布之间的差距作为损失函数的一项来改进?)
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/859160
推荐阅读
相关标签
  

闽ICP备14008679号