SAKT方法部分介绍

网络架构和嵌入解释:
在这里插入图片描述
SAKT网络: 在每个时间戳处,仅对前面的每个元素估计注意权重。键、值和查询是从如下所示的嵌入层中提取的。当第j个元素为查询元素且第i个元素为关键元素时,注意权重为 a i j a_{ij} aij

在这里插入图片描述

嵌入层: 嵌入学生正在尝试的当前练习和他过去的交互。在每次标记 t + 1 t+1 t+1 时,使用练习嵌入将当前问题 e t + 1 e_{t+1} et+1 嵌入到查询空间中,使用交互嵌入将过去交互的元素 x t x_t xt 嵌入到键和值空间中。
方法详细介绍:
模型目的: 根据学生1到 t 时刻 的习题作答情况,(即交互序列 X = x 1 , x 2 , . . . , x t X = x_1, x_2, ..., x_t X=x1,x2,...,xt,) 预测在 t + 1 t+1 t+1 时刻,习题 e t + 1 e_{t+1} et+1的回答情况(即预测出真实情况,正确的概率)。

交互元组: x t = ( e t , r t ) x_t = ( e_t, r_t) xt=(et,rt) t t t 时刻习题 e t e_t et 的作答情况 r t r_t rt构成的。 x t x_t xt编号化时,用两者来表示,: y t = e t + r t × E y_t = e_t + r_t × E yt=et+rt×E E E E是题目数量,可以看出交互编号,回答错误 时和题目编号同 y t = e t y_t = e_t yt=et,回答正确时,编号加上题目总数 y t = e t + E y_t = e_t + E yt=et+E

嵌入层描述:
交互序列需要划分处理,保证所以的交互序列的长度一致,多则截断,短则填充。
因此交互序列由 y = ( y 1 , y 2 , . . . , y t ) y = (y_1, y_2, ...,y_t) y=(y1,y2,...,yt)变为 s = ( s 1 , s 2 , . . . , s n ) s = (s_1,s_2,...,s_n) s=(s1,s2,...,sn)
训练一个交互嵌入矩阵 : M ∈ R 2 E × d M ∈ R^{2E×d} MR2E×d,其中 d 是潜在维度,用于获取交互嵌入。 s i s_i si的嵌入表示为 M s i M_{s_i} Msi
训练一个练习嵌入矩阵: E ∈ R E × d E ∈ R^{E×d} ERE×d, 用户获取练习嵌入。 e i e_i ei的嵌入表示为 E e i E_{e_i} Eei

位置编码:
为了对序列顺序进行编码,引入参数 P ∈ R n × d P ∈ R^{n×d} PRn×d,加到交互嵌入中,形成新的编码。 P i P_i Pi 加入到第 i i i 个交互嵌入向量中,形成含有位置编码的交互嵌入向量。
在这里插入图片描述

自注意力层
在这里插入图片描述
Q: 习题嵌入
K:作答交互嵌入
V :作答交互嵌入
在这里插入图片描述

利用缩放点积的注意力机制
当前练习和之前的每一次作答交互 都有关系,计算出注意力权重。

多头
捕获不同子空间的信息。

因果关系
因为序列性的缘故,不能够知道被预测题目的信息,所以使用因果关系层掩盖从未来交互中学习到的权重。

前馈层
为了在模型中加入非线性并考虑不同潜在维度之间的相互作用,我们使用了前馈网络。
在这里插入图片描述
在这里插入图片描述

残差连接
利用低层信息

预测层
得到预测的概率
在这里插入图片描述

网络训练
交叉熵

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值