[发明专利]一种基于自注意力机制的知识追踪方法及系统有效
| 申请号: | 202110564160.9 | 申请日: | 2021-05-24 |
| 公开(公告)号: | CN113283585B | 公开(公告)日: | 2022-04-29 |
| 发明(设计)人: | 孙俊;高洁;黄志杰 | 申请(专利权)人: | 北京大学 |
| 主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08;G06K9/62;G06N5/00 |
| 代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 李文涛 |
| 地址: | 100871 北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 注意力 机制 知识 追踪 方法 系统 | ||
1.一种基于自注意力机制的知识追踪方法,其特征在于,包括以下步骤:
获取训练用知识追踪数据集,该训练用知识追踪数据集包括多个时间序列步骤,每一个时间序列步骤包括学习者在一个知识组件和一个题目上回答正确与否的真实结果;
构建多头自注意力机制网络,其包括编码器和解码器,该编码器和解码器具有相同的网络结构和数据处理过程,均含有多个子空间,每个子空间对应一个自注意力机制;
将训练用知识追踪数据集的一个时间序列步骤的知识组件和题目这二者的编号输入到编码器,编码器的每个子空间对编号进行矩阵投影,得到查询Q、键K和值V,并根据自注意力机制处理Q、K和V,输出子空间处理结果;编码器联合全部子空间处理结果,并对V进行衰减系数的加权,再进行线性变换,输出自注意力空间编码值;
将自注意力空间编码值输入到解码器,解码器的每个子空间对自注意力空间编码值进行矩阵投影,得到查询Q、键K和值V,并根据自注意力机制处理输出子空间处理结果;解码器联合全部子空间处理结果,并对V进行衰减系数的加权,再进行线性变换,输出学习者在当前知识组件和题目上回答正确与否的预测结果;
利用损失函数计算预测结果相对于真实结果的损失,通过优化多头自注意力机制网络的权重参数矩阵和偏差参数矩阵,直至损失不再下降,得到训练好的多头自注意力机制网络;
获取待测知识追踪数据集,该待测知识追踪数据集包括多个时间序列步骤,每一个时间序列步骤包括学习者在一个知识组件和一个题目上的回答情况;
将待的知识追踪数据集输入训练好的多头自注意力机制网络进行处理,编码器对当前时间序列步骤的知识组件和题目这二者的编号进行处理,输出自注意力空间编码值给解码器,解码器对自注意力空间编码值进行处理,输出学习者在当前知识组件和题目上回答正确与否的最终预测结果;
编码器/解码器根据自注意力机制处理Q、K和V,是指采用以下缩放点积注意力函数进行处理:
其中,nK为K的矩阵维度,T表示矩阵转置;
编码器/解码器联合全部子空间处理结果再进行线性变换的公式如下:
MH(Q,K,V)=[head1;head2;…;headi;…;headh]Wo;
其中,MH(Q,K,V)为联合及线性变换的输出结果,Wo∈Rd×d为可学习的参数,为网络的学习参数,d为线性变换维度,h为子空间数量,i为子空间序数,R为实数集;
对V进行衰减系数的加权是指,采用缩放点积注意力函数计算时,以及进行联合全部子空间处理结果再进行线性变换时,将V乘以一个衰减系数α(t,τ),即α(t,τ)V,其中:
其中,d(t,τ)为当前时间序列步骤t与之前某一特定时间序列步骤τ之间的时间差;d(t,τ′)为当前时间序列步骤t与之前每一时间序列步骤τ′之间的时间差;θ为网络所学习的参数,qt为Q的第t行,kτ为K的第τ行,nK为K的矩阵维度;
损失函数如下:
其中,L为交叉熵损失函数,η为网络参数,Y为在当前知识组件和题目上回答正确与否的真实结果,为在当前知识组件和题目上回答正确与否的预测结果,N为参与训练的时间序列步骤数量,M为每个时间训练步骤中的回答数量,i为时间序列步骤的序数,j为题目的序数,log的底数为2或e。
2.一种基于自注意力机制的知识追踪系统,用于实现权利要求1所述的方法,包括一多头自注意力机制网络模型,该多头自注意力机制网络模型包括一编码器和一解码器,该编码器和解码器具有相同的网络结构和数据处理过程,均含有多个子空间,每个子空间对应一个自注意力机制;其中:该编码器对当前时间序列步骤的知识组件和题目这二者的编号进行处理,输出自注意力空间编码值给解码器;该解码器对自注意力空间编码值进行处理,输出学习者在当前知识组件和题目上回答正确与否的最终预测结果;其中:
多头自注意力机制网络模型的训练步骤包括:获取训练用知识追踪数据集,该训练用知识追踪数据集包括多个时间序列步骤,每一个时间序列步骤包括学习者在一个知识组件和一个题目上回答正确与否的真实结果;将训练用知识追踪数据集的一个时间序列步骤的知识组件和题目这二者的编号输入到编码器,编码器的每个子空间对编号进行矩阵投影,得到查询Q、键K和值V,并根据自注意力机制处理Q、K和V,输出子空间处理结果;编码器联合全部子空间处理结果,并对V进行衰减系数的加权,再进行线性变换,输出自注意力空间编码值;将自注意力空间编码值输入到解码器,解码器的每个子空间对自注意力空间编码值进行矩阵投影,得到查询Q、键K和值V,并根据自注意力机制处理输出子空间处理结果;解码器联合全部子空间处理结果,并对V进行衰减系数的加权,再进行线性变换,输出学习者在当前知识组件和题目上回答正确与否的预测结果;利用损失函数计算预测结果相对于真实结果的损失,通过优化多头自注意力机制网络的权重参数矩阵和偏差参数矩阵,直至损失不再下降,得到训练好的多头自注意力机制网络;
多头自注意力机制网络模型的预测步骤包括:获取待测知识追踪数据集,该待测知识追踪数据集包括多个时间序列步骤,每一个时间序列步骤包括学习者在一个知识组件和一个题目上的回答情况;将待的知识追踪数据集输入训练好的多头自注意力机制网络进行处理,编码器对当前时间序列步骤的知识组件和题目这二者的编号进行处理,输出自注意力空间编码值给解码器,解码器对自注意力空间编码值进行处理,输出学习者在当前知识组件和题目上回答正确与否的最终预测结果;
编码器/解码器根据自注意力机制处理Q、K和V,是指采用以下缩放点积注意力函数进行处理:
其中,nK为K的矩阵维度,T表示矩阵转置;
编码器/解码器联合全部子空间处理结果再进行线性变换的公式如下:
MH(Q,K,V)=[head1;head2;…;headi;…;headh]Wo;
其中,MH(Q,K,V)为联合及线性变换的输出结果,Wo∈Rd×d为可学习的参数,为网络的学习参数,d为线性变换维度,h为子空间数量,i为子空间序数,R为实数集;
对V进行衰减系数的加权是指,采用缩放点积注意力函数计算时,以及进行联合全部子空间处理结果再进行线性变换时,将V乘以一个衰减系数α(t,τ),即α(t,τ)V,其中:
其中,d(t,τ)为当前时间序列步骤t与之前某一特定时间序列步骤τ之间的时间差;d(t,τ′)为当前时间序列步骤t与之前每一时间序列步骤τ′之间的时间差;θ为网络所学习的参数,qt为Q的第t行,kτ为K的第τ行,nK为K的矩阵维度;
损失函数如下:
其中,L为交叉熵损失函数,η为网络参数,Y为在当前知识组件和题目上回答正确与否的真实结果,为在当前知识组件和题目上回答正确与否的预测结果,N为参与训练的时间序列步骤数量,M为每个时间训练步骤中的回答数量,i为时间序列步骤的序数,j为题目的序数,log的底数为2或e。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110564160.9/1.html,转载请声明来源钻瓜专利网。





