CN115310520A - 融合多特征的深度知识追踪方法及习题推荐方法 - Google Patents
融合多特征的深度知识追踪方法及习题推荐方法 Download PDFInfo
- Publication number
- CN115310520A CN115310520A CN202210833098.3A CN202210833098A CN115310520A CN 115310520 A CN115310520 A CN 115310520A CN 202210833098 A CN202210833098 A CN 202210833098A CN 115310520 A CN115310520 A CN 115310520A
- Authority
- CN
- China
- Prior art keywords
- matrix
- knowledge
- student
- answer
- topic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种融合多特征的深度知识追踪方法及习题推荐方法,该深度知识追踪方法步骤包括:S01.输入题目的绝对难度矩阵和题目之间的相似关系预训练得到题目初始表示向量矩阵;S02.将学生的答题交互序列集合和预训练得到的初始表示向量矩阵作为输入,构建学生答题交互序列矩阵、历史相关性矩阵和多知识点答对率矩阵后拼接形成综合信息矩阵,经过门控机制GLU得到G矩阵输出;S03.根据多层的一维卷积层从G矩阵中提取学生的学习状态矩阵;S04.根据所需预测的题目表征向量与学习状态矩阵,得到相对难度的预测结果。本发明具有实现方法简单、预测精度以及效率高且能够同时有效处理多个知识点的题目等优点。
Description
技术领域
本发明涉及智能教学技术领域,尤其涉及一种融合多特征的深度知识追踪方法及习题推荐方法。
背景技术
随着各种智能教学系统(Intelligent tutoring system)的兴起,题目相对难度在智能教育领域中也发挥着重要作用,为个性化习题推荐、学生成绩表现预测[等多项智能教育领域的核心任务提供有效支撑。因此,题目相对难度在教育领域中占据了重要地位,题目相对难度预测也成为了当前关注和研究的重要问题。
题目相对难度是反映学生个体知识水平,不同的学生由于个体知识水平等不同从而在相同的一道题目上反映出不同的题目相对难度。题目相对难度预测主要包括静态认知诊断方式和知识追踪方式。静态认知诊断方式是通过假设学生的知识状态水平在一定时间内是固定不变的,其利用学生的答题数据对学生的知识状态水平进行评估,进而预测某道题对学生的相对难度,但是使用传统的认知诊断方法无法及时获得海量题目的相对难度,而随着需要预测的题目数量和学生数量不断增长,传统认知诊断方法已无法满足当前预测需求。知识追踪技术是当前实现题目相对难度预测的主流方法,该方法旨在根据学生的历史答题序列实时追踪学生的知识水平变化,进而预测每道题对于不同学生的相对难度或其它表现。相对于静态的认知诊断,知识追踪方式是利用学生的答题序列动态追踪学生随时间变化的知识状态水平,即知识追踪更侧重于学生随时间变化的知识点掌握程度,进而预测在不同时刻下的题目相对难度,因而知识追踪更受关注。但是不论是认知诊断方式还是知识追踪方式,现有技术中的题目相对难度预测通常仅能实现针对某种特定的题目,而不能实现通用性预测。
在各类知识追踪模型中,CKT(convolutional knowledge tracing,卷积知识追踪)模型具有最高的题目相对难度预测准确率和最短的训练时间,但是CKT模型是单知识点模型,单知识点模型即为假设一道题只包含一个知识点,题目和知识点是等同的,因而使用CKT模型时,对于具有多个知识点的题目只能将其简化为一个知识点或者处理为一道题,因此无法有效处理存在多个知识点的题目。此外,CKT模型忽略了题目中包含的丰富信息,如题目的绝对难度、题目之间的相似性关系等,从而降低了题目相对难度预测的准确率。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、预测精度以及效率高且能够同时有效处理多个知识点的题目的融合多特征的深度知识追踪方法,以及推荐精度高的习题推荐方法。
为解决上述技术问题,本发明提出的技术方案为:
一种融合多特征的深度知识追踪方法,步骤包括:
S01.输入题目的绝对难度矩阵和题目之间的相似关系预训练得到题目初始表示向量矩阵,所述题目的绝对难度矩阵为利用全连接层将题目的表征向量转化得到,所述题目之间的相似关系用于表征不同题目之间是否包含相同的知识点;
S02.将当前学生的答题交互序列集合和预训练得到的所述初始表示向量矩阵作为输入,构建学生答题交互序列矩阵、历史相关性矩阵和多知识点答对率矩阵后拼接形成综合信息矩阵F,将所述综合信息矩阵F经过门控机制GLU得到G矩阵输出,所述答题交互序列集合包括题目集合以及知识点集合,所述学生答题交互序列矩阵用于记录学生历史的答题交互序列,所述历史相关性矩阵用于记录学生当前需要预测的题目和历史回答的题目之间的相关性,所述多知识点答对率矩阵用于记录所有知识点被正确回答的次数;
S03.利用多层的一维卷积层从所述G矩阵中提取学生的学习状态矩阵;
S04.根据所述学习状态矩阵与所需预测题目的题目表征向量,得到所需预测题目相对难度的预测结果输出。
进一步的,所述题目的绝对难度矩阵按照下式计算得到:
其中,ei表示题目pi的表征向量,Wdiff∈RK表示题目绝对难度权重矩阵,即全连接层的权重矩阵;
所述题目之间的相似关系按照下式计算得到:
进一步的,还包括为预训练过程定义损失函数:
其中,Rij表示题目i和j的相似性标签,di表示题目i的绝对难度标签,λ1和λ2为预设系数以用于调整不同的题目信息对题目表征向量的影响大小。
进一步的,构建所述历史相关性矩阵时,利用Masking操作将t时刻后回答的题目和当前时刻之间的相关性进行屏蔽,并利用softmax函数计算当前题目和历史回答的题目的相关性,将题目之间的相关性和答题交互序列向量进行相乘并相加后,得到历史相关性矩阵HRP,计算公式为:
wt(i)=Softmax(rt(i)),i∈(1,N)
rt(i)=Masking(ei·et),i∈(t,N)
其中,wt(i)表示t时刻所需预测的题目和题目i之间的相关性,xi表示答题交互序列i 的表征向量。
进一步的,所述多知识点答对率矩阵中每一列代表数据集中的一个知识点,如果当前时刻为t时刻,预测的题目包含知识点集合Ct,对于知识点集合Ct中的知识点ci的多知识点答对率矩阵MCPCt(ci)计算公式为:
其中,cij表示对于知识点ci来说学生j在t时刻之前的答题结果和t时刻的答题结果之间的关系,cij==1表示对于t时刻的知识点ci,统计学生j在t时刻之前答对的次数,j表示学生j的答题序列时刻。
进一步的,所述步骤S02中,将学生答题交互序列矩阵LIS、历史相关性矩阵HRP和多知识点答对率矩阵MCPC按下式拼接得到所述综合信息矩阵F;
将所述综合信息矩阵F经过门控机制GLU进行非线性变化并降维得到所述G矩阵,计算公式为:
其中,W1、W2分别为权重矩阵,b1、b2分别为偏置参数。
进一步的,所述步骤S03中,通过设置一个滑动窗口将d个连续的答题交互作为输入,并将各答题交互映射到单个输出元素,然后利用GLU在卷积层的输出上实现门控机制,以模拟学生在学习过程中的遗忘行为;将残差网络添加到卷积层中以连接卷积层的输入和输出,最后,将L个相同的卷积层相互堆叠组成分层卷积层,其中较低的层用于捕获时间晚于预设阈值的学习率,较高的层则用来监测时间早于预设阈值的学习率。
进一步的,所述步骤S03中,所述步骤S04中,将所需预测题目的题目表征向量et+1和该学生当前时刻的学生学习状态zt进行点积,然后经过softmax函数进行归一化,得到该题相对于当前学生的相对难度,计算公式为:
ot+1=σ(zt·et+1)。
进一步的,所述步骤S03中,还包括构造目标函数为二元交叉熵损失函数:
其中,at表示学生实际的答题结果,ot表示模型预测的学生答题结果。
一种习题推荐方法,步骤包括:
当接收到习题推荐请求时,获取当前学生的历史答题信息,并利用权上述深度知识追踪方法预测各习题相对难度的预测结果;
根据预测结果选取出所需相对难度的习题进行推荐。
与现有技术相比,本发明的优点在于:本发明在传统深度知识追踪模型CKT的基础上进行改进形成新的知识追踪模型DMCKT,通过引入题目的绝对难度和题目之间的相似关系,使得可以准确建模学生的答题交互过程,有效提高题目相对难度预测的准确率;同时考虑部分题目可能对应多个知识点的情况,将多个知识点作为输入,使用题目的相关信息和每个学生的答题交互序列训练知识追踪模型,能够处理学生与具有多个知识点的题目之间的交互序列,从而能够充分利用题目中包含的多个知识点,快速、准确的预测题目对于不同学生的相对难度。
附图说明
图1是本实施例融合多特征的深度知识追踪方法的的实现流程示意图。
图2是本实施例DMCKT与传统CKT模型的对比示意图。
图3是本实施例中DMCKT模块的结构原理示意图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
如图1所示,本实施例融合多特征的深度知识追踪方法的步骤包括:
S01.输入题目的绝对难度矩阵和题目之间的相似关系预训练得到题目初始表示向量矩阵,题目的绝对难度矩阵为利用全连接层将题目的表征向量转化得到,题目之间的相似关系用于表征不同题目之间是否包含相同的知识点;
S02.将学生的答题交互序列集合和预训练得到的初始表示向量矩阵作为输入,构建学生答题交互序列矩阵、历史相关性矩阵和多知识点答对率矩阵后拼接形成综合信息矩阵F,将综合信息矩阵F经过门控机制GLU得到G矩阵输出,答题交互序列集合包括题目集合以及知识点集合,学生答题交互序列矩阵用于记录学生历史的答题交互序列,历史相关性矩阵用于记录学生当前需要预测的题目和历史回答的题目之间的相关性,多知识点答对率矩阵用于记录所有知识点被正确回答的次数;
S03.利用多层的一维卷积层从G矩阵中提取学生的学习状态矩阵;
S04.根据学习状态矩阵以及所需预测题目的题目表征向量,得到所需预测题目相对难度的预测结果输出。
本实施例在传统深度知识追踪模型CKT的基础上进行改进形成新的知识追踪模型DMCKT(Absolute difficulty and multiple knowledge points enhancedconvolutional knowledge tracing),该DMCKT模型通过引入题目的绝对难度和题目之间的相似关系,使得可以准确建模学生的答题交互过程,有效提高题目相对难度预测的准确率;同时考虑部分题目可能对应多个知识点的情况,将假设一道题对应一个知识点的CKT模型进行改进,使用题目的相关信息(包括题目绝对难度、题目之间的相似关系、题目包含的所有知识点)和每个学生的答题交互序列训练一个知识追踪模型,进而预测题目在不同时刻下的相对难度,从而改进后 DMCKT知识追踪模型能够充分利用一道题中包含的多个知识点,能够快速且准确的预测题目对于不同学生的相对难度。
本实施例DMCKT模型与传统CKT模型对比如图2所示,其中传统CKT模型输入题目qi、答题结果ai或者输入知识点si、答题结果ai,且CKT为单知识点模型(单题仅包含一个知识点),在CKT中是将题目和知识点等同,对于部分数据集,CKT将知识点id作为题目id,对于其它数据集,CKT则直接使用题目id。本实施例DMCKT模型则是同时输入题目qi、知识点si、答题结果ai。具体的,定义题目集合为学生集合为知识点集合为其中,pi表示题目i,sj表示学生j,ck表示知识点k,M、Ns和 Nc则分别为题目的数量、学生人数和知识点的数量。此外,学生的答题交互序列定义为 Hj={(sj,p1,c1,a1),…,(sj,pt,ct,at),…,(sj,pN,cN,aN)}。其中,pt表示学生j在t时刻回答的题目; ct表示学生在t时刻回答的题目包含的知识点;at则表示学生在t时刻的答题结果,取值为1 或者0,at=1代表学生j答题正确,at=0则代表学生j答题错误;N是最大的学生答题交互序列长度;学生集合S的所有答题交互序列H包含了题目集合P和知识点集合C。假设每个学生单独进行学习,学生之间互不产生影响。利用答题交互序列集合H训练模型,模型在t时刻可预测t+1时刻的题目相对难度。
在实际教学过程中,一道题目中会涉及多个知识点(例如,某道SQL编程题会涉及连接查询、聚集函数、排序等),且智能教学系统预测题目相对难度需要准确且及时。传统用于预测题目相对难度的模型要么预测准确率高但训练时间过长,要么预测准确率高且时间相对较短但无法支持多知识点的题目,CKT模型虽然预测精度较高,但是CKT模型是将题目和知识点等同,对于输入模块构建的三个输入矩阵,要么统一用题目表征,要么统一使用知识点表征(如图2所示),因此无法充分利用题目中包含的多个知识点。本实施例DMCKT 通过利用题目的绝对难度和题目之间的相似关系来丰富题目的输入。此外,考虑到一道题目包含多个知识点,本实施例将题目和知识点完全区分开来(即在不同的矩阵中使用不同的表征,如图2所示),使得DMCKT模型能够支持一道题对应多个知识点的情况,并且能够充分利用题目中包含的多个知识点,从而提升题目相对难度预测的准确率。
DMCKT模型能够充分利用题目方面的信息(包括题目的绝对难度和题目之间的相似关系),使得模型的输入更为丰富,从而提高题目相对难度预测的准确率;同时考虑到现实教学环境中,一道题目会对应多个知识点,而传统CKT模型无法处理一道题目中的多个知识点,本实施例DMCKT模型同时将多个知识点作为输入,能够处理学生与具有多个知识点的题目之间的交互序列。
如图3所示,本实施例DMCKT模型具体包括以下四个模块:
(1)预训练模块,对应实现步骤S01,用于进行预训练,且为了丰富DMCKT模型中的题目信息,在预训练模块中利用题目的绝对难度和题目之间的相似关系预训练得到题目的初始表征向量。
(2)输入模块,对应实现步骤S02,在输入模块中,为了利用题目中的多个知识点,除了学生答题交互序列中的题目标签和对应的答题结果之外,本实施例DMCKT模型还将题目对应的知识点也作为模型的输入。具体的,DMCKT模型没有将题目和知识点等同,而是将题目中包含的多个知识点也作为输入的一部分。因此,DMCKT模型需要输入学生答题序列中的题目、该题目包含的知识点和该题的答题序列。然后在输入模块中构建三个矩阵:学生答题历史矩阵、历史相关性矩阵和多知识点的答对率矩阵,其中学生答题历史矩阵用来记录学生过去的答题交互序列,历史相关性矩阵用来记录学生当前需要预测的题目和历史回答的题目之间的相关性,多知识点答对率矩阵则用来记录所有知识点被正确回答的次数。最后,将上述的三个矩阵拼接得到一个包含了学生答题信息、题目信息和知识点信息的F矩阵。 GLU机制能够对F矩阵进行非线性处理,从而能够控制有效信息进入后续的学生学习率建模过程中。因此,将F矩阵经过门控机制GLU后即得到G矩阵,该矩阵包含了学生答题交互过程中的题目和学生方面的信息。
(3)学生学习率建模模块,对应实现步骤S03,用于通过利用多层的一维卷积层从G矩阵中提取学生的学习状态,以提取不同学生的学习率信息。
(4)输出模块,对应实现步骤S04,用于将学生的学习状态与要预测的题目表征向量进行点积,输出学生能够正确回答该题的概率,即该题的相对难度。学生能够正确回答该题则代表该题对于该学生来说是容易的,即相对难度较小,反之,该题对于该学生来说是困难的,即相对难度较大。
本实施例DMCKT模型的各模型详细实现流程如下:
步骤S01:预训练
为了丰富题目的向量表示从而提高题目相对难度预测的准确率,本实施例首先在预训练中引入两种题目信息,该两种题目信息分别是题目绝对难度和题目之间的相似关系:
(1)题目信息
题目绝对难度是题目的重要信息之一,不同的题目由于自身的特性(如包含的知识点、题干的描述语句)具有不同的绝对难度值,而不同的题目绝对难度对于学习结果有着重要的影响。题目之间的相似关系也是题目的重要信息,定义两道题是否具有相同的知识点为题目之间的相似性,因此可通过题目中包含的知识点来捕获题目之间的相似关系。一道题目中可能包含多个知识点,因此两道题目之间的相似性关系可通过两道题均包含的知识点的个数来定义,具体的计算如公式1所示。
(2)预训练
本实施例将题目的绝对难度和题目之间的相似性关系引入CKT模型中,以丰富CKT模型的题目信息输入,从而提高题目相对难度预测的准确率。预训练的目标是通过输入题目的绝对难度D∈RM和题目之间的相似关系R∈RM×M,训练得到丰富的题目表征矩阵E∈ RM ×K,其中K是题目表征向量的维数。
具体的,鉴于题目绝对难度是题目自身的体现,本实施例利用一个全连接层将题目的表征向量转化为该题的绝对难度,具体的计算如公式(2)所示。
其中,ei表示题目pi的表征向量,Wdiff∈RK则表示题目绝对难度权重矩阵,即全连接层的权重矩阵。
本实施例具体利用余弦相似度来计算两道题目i和j的表征向量之间的相似关系,具体的计算如公式(3)所示:
为了同时引入绝对难度和题目之间的关系,本实施例进一步将预训练过程的损失函数定义为两个平方损失函数之和,损失函数的计算如公式4所示:
其中,Rij表示题目i和j的相似性标签,di则表示题目i的绝对难度标签,λ1和λ2是该模块中的系数,用来调整不同的题目信息对题目表征向量的影响大小。其中,当λ1>λ2时,题目的绝对难度对题目表征向量的影响大于题目之间的相似性关系;反之,题目之间的相似关系对题目表征向量的影响更大。
步骤S02.输入模块输入数据
经过预训练后,首先将学生的答题交互序列集合H和预训练过程训练得到的题目初始表示向量矩阵E∈RM×K作为DMCKT模型的输入,然后构建学生答题交互序列矩阵(LIS)、历史相关性矩阵(HRP)和多知识点答对率矩阵(Multi-Concept Percent Correct,MCPC):
(1)学生答题交互序列矩阵
以某个学生为例,如果该学生在某时刻答题正确,则该时刻的答题交互向量xt=[et,at],否则xt=[at,et]。其中,et∈RK表示该题的表征向量,at∈RK表示题目对应的答题结果,at全为0。此外,如果某个学生的答题序列长度大于N,则截取长度为N的答题交互序列;相反的,如果某个学生的答题交互序列长度小于N,则用0来填充。因此,学生的答题交互序列矩阵LIS∈RN×2K。
(2)历史相关性矩阵
构建历史相关性矩阵时,以某个学生为例,假设当前为t时刻,为了避免t时刻后的答题序列对历史相关性矩阵产生影响,利用Masking操作将t时刻后回答的题目和当前时刻之间的相关性进行屏蔽,计算公式如公式(5)所示。
rt(i)=Masking(ei·et),i∈(t,N) (5)
其中,ei表示该学生在t时刻之后回答的题目,et表示该学生t时刻回答的题目。
进一步利用softmax函数计算当前题目和历史回答的题目的相关性,计算公式如公式(6) 所示。最后将题目之间的相关性和答题交互序列向量进行相乘并相加,得到矩阵HRP∈ RN×2K,如公式(7)所示。
wt(i)=Softmax(rt(i)),i∈(1,N) (6)
其中,wt(i)表示t时刻要预测的题目和题目i之间的相关性,xi表示答题交互序列i的表征向量。
(3)多知识点答对率矩阵
为了能够充分利用题目中的多个知识点,本实施例在输入模块中将题目包含的知识点也作为输入,并构建一个知识点答对率矩阵MCPC∈RN×Nc,该矩阵的每一列代表数据集中的一个知识点。更新多知识点正确率矩阵的具体操作如下:对于一个指定的学生,假设当前时刻为t时刻,预测的题目为et且et包含知识点集合Ct,对于知识点集合Ct中的某个知识点 ci的计算公式如公式(8)所示。
其中,cij表示对于知识点ci来说学生j在t时刻之前的答题结果和t时刻的答题结果之间的关系,cij==1表示对于t时刻的知识点ci,统计学生j在t时刻之前答对的次数,j表示学生j的答题序列时刻。
得到上述的三个矩阵后,将其进行拼接得到矩阵F∈RN×(4K+Nc),计算公式如公式9所示,该矩阵包含了学生回答的题目和知识点等多种信息。
进一步将F矩阵经过门控机制GLU[84]进行非线性变化并降维,得到G∈RN×K矩阵,计算公式如公式10所示。
其中,W1∈R(4K+Nc)×K和W2∈R(4K+Nc)×K均为模型的权重矩阵,b1∈RK和b2∈RK表示模型的偏置。
步骤S03.学生学习率建模
为了得到不同学生的学习状态,本实施例学生学习率建模模块利用适用于处理序列数据的一维卷积网络从G矩阵中提取学生的学习状态矩阵Z∈RN×K。具体的,滑动窗口设置为Ws∈R2d×K,bs∈RK。为了防止涉及后续答题交互的卷积操作,屏蔽滑动窗口的后半部分。本实施例由一个滑动窗口将d个连续的答题交互作为输入,并将这些答题交互映射到单个输出元素。特征映射的数量也设置为K,然后利用GLU在卷积层的输出上实现一个简单的门控机制,以模拟学生在学习过程中的遗忘行为。
为了加快训练过程,本实施例进一步将残差网络添加到卷积层中,连接卷积层的输入和输出。最后,将L个相同的卷积层相互堆叠从而组成分层卷积层,其中较低的层(层数小于预设层数阈值)用于捕获近期(时间晚于预设时间阈值)的学习率,较高的层(层数大于预设层数阈值)则用来监测更久远(时间早于预设时间阈值)的时间上的学习率。学生学习率建模模块最终输出为学生的学习状态矩阵Z∈RN×K。
步骤S04.输出模块输出结果
本实施例针对t时刻学习状态的某个学生,将所需预测题目的题目表征向量et+1和该学生当前时刻的学生学习状态zt进行点积,然后经过softmax函数进行归一化,得到该题相对于该学生的相对难度,具体的计算如公式(11)所示。具体的如果ot+1大于0.5,则该题能够被该学生正确回答,表明该题对于该学生是简单的;反之,该题对于该学生来说是困难的。
ot+1=σ(zt·et+1) (11)
进一步的,为了学习DMCKT模型中的所有参数,本实施例构造DMCKT模型的目标函数为二元交叉熵损失函数,如公式(12)所示。
其中,at表示学生实际的答题结果,ot表示模型预测的学生答题结果。
本实施例通过上述知识追踪方法,过引入题目的绝对难度、题目之间的相似关系和题目包含的知识点,构建形成新的知识追踪模型DMCKT以用来预测题目的相对难度,可以充分利用题目的绝对难度、题目之间的相似关系以及多知识点等信息,实现题目相对难度快速、精准的预测。
为验证本发明的有效性,分别在自主收集的SQL数据集以及一个开源的学生答题交互序列数据集EdNet2(本实施例仅取其中的KT1数据集)对本发明进行实验验证。其中对SQL 数据集进行了预处理,将对答题交互序列长度不大于3的学生进行删除,最后预处理得到的 SQL数据集包含318道SQL编程题、283名学生、10952份学生答题记录和27个知识点,具体如表1所示。由于EdNet数据集中没有题目的绝对难度标签,本实施例将学生在某道题上的答错率作为该题的绝对难度值。此外,与SQL数据集一样,在进行实验前也对EdNet 数据集进行了预处理,剔除答题交互序列长度不大于3的学生,且将知识点标注有问题的题目进行移除,最后经过处理得到的EdNet数据集中包含5002名学生共222141份答题记录,涉及188个知识点和10799道题,具体如表1所示。
表1预处理后的学生答题交互序列数据集
本实施例具体采用评价指标AUC(Area under the ROC)和准确率(Accuracy,ACC)来评估本发明题目相对难度预测的有效性,其中:
(1)AUC
二分类问题中,将分类器预测为正例且真实标签为正例的结果用TP(Truepositive)表示;而预测为正例但真实标签为负例的结果用FP(False positive)表示。类似的,将分类器预测为负例且真实标签为负例的结果用TN(True negative)表示;而预测结果为负例但真实标签为正例的结果用FN(False negtive)表示。
AUC为受试者工作特征(Receiver Operating Characteristic,ROC)曲线下的面积。ROC 曲线的横轴为假正例率(False Positive Rate,FPR),如公式(13)所示,纵轴为真正例率 (True Positive Rate,TPR),如公式(14)所示,通过不断计算样例的假正例率和真正例率,即可得到ROC曲线。但由于一般情况下样例是有限的,从而无法得到光滑的ROC曲线,因此在二分类问题中一般使用ROC曲线下方的面积AUC作为评价指标,其中AUC的值越高代表预测结果越好。
(2)准确率
ACC指分类正确的样本数占样本总数的比例。与评价指标AUC相似的,ACC的值越高表明模型预测的准确率越高,模型的效果越好。该评价指标具体的计算如公式(15)所示。
其中,r表示分类正确的样本数,total表示样本总数。
为了测试本发明DMCKT模型的有效性,本实施例将DMCKT模型与目前最为典型且流行的知识追踪模型进行对比,包括DKT模型、DKVMN模型和CKT模型。其中,DKT 模型是首个将深度学习应用到知识追踪领域的深度知识追踪模型,该模型利用LSTM模型对学生的答题交互过程进行建模。DKVMN模型则借鉴了MANN模型的思想建模学生的答题交互过程。CKT模型首次将CNN模型引入知识追踪模型中,使其能够建模学生的答题交互过程,且与其它典型的知识追踪模型相比,CKT模型在预测的准确率和训练时间上均优于上述的提及的深度知识追踪模型。
在具体的实验设置中,为了保证实验的公平性,随机将数据集中60%的数据作为训练集,20%的数据作为测试集,剩余数据作为验证集,并将实验对比的模型DKT、DKVMN和CKT在两个数据集上的表现均调整到最优。因为SQL数据集和EdNet数据集在数量上存在明显的差异,所以在不同的数据集上分别设置不同的DMCKT模型参数,具体的参数设置详见表2。本实施例使用的软件环境具体为:编程语言Python3、深度学习框架Tensorflow,实验配置为8核CPU、64GB内存、1.5TB硬盘和64位的Ubuntu操作系统。
表2 DMCKT模型在不同数据集上的参数设置
为了验证本发明CKT模型在预测题目相对难度上的有效性,将本发明KT模型与传统典型的知识追踪模型(别为DKT模型、DKVMN模型和CKT模型)行对比,具体的实验结果如表3和表4所示。
表3知识追踪的AUC结果
表4知识追踪的ACC结果分析
从表3和表4中可以看出,在SQL数据集上,本发明DMCKT模型的RMSE和MAE 结果最优,其次是CKT模型,第三则是DKVMN模型,而DKT模型的两个评价指标结果都最差。这些结果表明了本发明DMCKT模型能够有效利用题目方面的信息(包括题目的绝对难度、题目之间的相似关系和题目中包含的知识点),从而进一步提高了题目的相对难度预测准确率;CKT模型只利用了学生的答题交互序列,忽略了题目中包含的丰富信息;DKT 模型也只利用了学生的答题交互序列,且该模型自动学习题目集合中的所有潜在知识点,因此无法像DMCKT模型一样直接利用题目中包含的知识点,因此无法获得较好的题目相对难度预测结果;DKVMN模型相较于DKT模型扩展了两个矩阵用于保存潜在的知识点,因此 RMSE和MAE结构均优于DKT模型,但该模型也只使用学生的答题交互序列进行题目相对难度预测的准确率,因此无法充分利用题目中包含的丰富信息。
此外,在EdNet数据集上,本发明DMCKT模型的RMSE和MAE结果也是最优的, DK模型的结果次之,其次是DKVMN模型与DKT模型,两个模型的结果相差不大,而CKT 模型在该数据集上的RMSE和MAE结果却是最差的。这是因为CKT模型假设题目和知识点等同,会导致以下两种情况:1)当CKT模型将该数据集中的题目标签作为最终的题目编号时,由于EdNet数据集中题目数量远远大于知识点的数量,使得输入模块中的知识点答对率矩阵会较为稀疏,从而影响了题目相对预测的准确率;2)而当CKT模型将知识点标签作为最终的题目编号时,忽略了不同题目的特性,因此也无法很好的预测题目的相对难度。而DKT模型和DKVMN模型中的输入均为学生的答题交互序列,而且知识点均是在训练阶段自动学习,因此这两个模型在EdNet数据集上的表现和在SQL数据集上的表现相差不大。综上,从表3和表4的实验结果可知,无论是使用SQL数据集,还是EdNet数据集,本发明DMCKT模型在两个评价指标RMSE和MAE上的结果均优于传统三个深度知识追踪模型 DKT、DKVMN和CKT。即与传统知识追踪模型对比,本发明DMCKT模型不仅将学生的答题交互序列作为题目相对难度预测的输入,还能够充分利用EdNet数据集中的题目信息进一步提高题目相对难度预测的准确率,因此具有较优的预测结果。
本发明通过改进传统CKT模型,使得模型能够提高题目的相对难度预测的准确率,为了突出DMCKT模型中不同改进点的贡献之处,本实施例进一步进行了消融实验,消融实验的结果如表5和表6所示。在进行实验结果分析前,为了方便分析结果,先对表5和表6中定义的符号进行解释。在表5和表6中,①表示原始的CKT模型;①+②表示在原始CKT 模型上改进后的支持多个知识点的知识追踪模型;①+②+③则表示在原始的CKT模型上改进后的DMCKT模型,该模型能够支持多个知识点且能够引入多种题目信息。
表5 DMCKT模型消融实验的AUC结果
表6 DMCKT模型消融实验的ACC结果
从表5和表6可以看到,针对SQL数据集,①+②在两个评价指标AUC和ACC上的实验结果均优于①的实验结果,表明改进后的支持多知识点的知识追踪模型比原始的CKT 模型具有更好的效果,这是由于原始的CKT模型假设题目和知识点等同,从而忽略了一道题目中的包含的多个知识点的信息,而改进后本发明DMCKT模型支持多个知识点的知识追踪模型能够有效利用题目中包含的知识点信息,从而提高了题目相对难度预测的准确率。类似的,在EdNet数据集中,①+②在两个评价指标AUC和ACC上的实验结果也均优于①的实验结果,充分证明了本发明DMCKT模型中支持多个知识点的有效性,也突出了支持多个知识点在DMCKT模型实验结果的贡献。
而从SQL数据集和EdNet数据集的①+②+③可以看出,在改进后支持多个知识的知识追踪模型上增加预训练过程后,两个数据集在评价指标AUC和ACC上的结果均有提升。但在SQL数据集上的①+②+③较①+②相比并没有太大的提升,而EdNet数据集上的①+②+ ③与①+②相比,提升较为明显。上述表明本发明DMCKT模型中引入预训练过程是有效的,但该模块在EdNet数据集上提升效果比SQL数据集上更为明显,这是由于SQL数据集中的平均每道题包含的知识点数量与EdNet数据集中的相比更少,导致使用了SQL数据集的预训练过程中记录题目之间的相似关系的矩阵较EdNet数据集的更为稀疏,使得预训练的输入没有使用EdNet数据集时那么丰富,即表明预训练在平均每道题包含的知识点数量较多的数据集上有更加明显的提升效果。
本发明通过在性能较优的传统知识追踪模型CKT上进行改进,通过引入题目的绝对难度、题目之间的相似关系和题目包含的知识点,构建形成一个新的知识追踪模型DMCKT用来预测题目的相对难度,通过实验结果均表明,本发明DMCKT模型能够有效提高题目相对难度预测精度。具体的,本发明DMCKT模型在SQL数据集上的AUC较基线方法中最新且结果最好的深度知识追踪模型CKT的AUC平均提升了7.59%,在开源的EdNet数据集上的 AUC则较CKT平均提升了8.51%、较对比实验结果最好DKT模型平均提升了6.55%。
利用知识追踪能够实时输出题目相对于不同学生的难度值,进一步还可以利用该知识追踪实现个性化习题推荐。本实施例进一步还提供习题推荐方法,步骤包括:
当接收到习题推荐请求时,获取当前学生的历史答题信息,并利用上述深度知识追踪方法预测各习题相对难度的预测结果;
根据预测结果选取出所需相对难度的习题进行推荐,可以根据不同学生精准推荐适合难度的习题。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
Claims (10)
1.一种融合多特征的深度知识追踪方法,其特征在于,步骤包括:
S01.输入题目的绝对难度矩阵和题目之间的相似关系预训练得到题目初始表示向量矩阵,所述题目的绝对难度矩阵为利用全连接层将题目的表征向量转化得到,所述题目之间的相似关系用于表征不同题目之间是否包含相同的知识点;
S02.将当前学生的答题交互序列集合和预训练得到的所述初始表示向量矩阵作为输入,构建学生答题交互序列矩阵、历史相关性矩阵和多知识点答对率矩阵后拼接形成综合信息矩阵F,将所述综合信息矩阵F经过门控机制GLU得到G矩阵输出,所述答题交互序列集合包括题目集合以及知识点集合,所述学生答题交互序列矩阵用于记录学生历史的答题交互序列,所述历史相关性矩阵用于记录学生当前需要预测的题目和历史回答的题目之间的相关性,所述多知识点答对率矩阵用于记录所有知识点被正确回答的次数;
S03.利用多层的一维卷积层从所述G矩阵中提取学生的学习状态矩阵;
S04.根据所述学习状态矩阵以及所需预测题目的题目表征向量,得到所需预测题目相对难度的预测结果输出。
7.根据权利要求1~5中任意一项所述的融合多特征的深度知识追踪方法,其特征在于,所述步骤S03中,通过设置一个滑动窗口将d个连续的答题交互作为输入,并将各答题交互映射到单个输出元素,然后利用GLU在卷积层的输出上实现门控机制,以模拟学生在学习过程中的遗忘行为;将残差网络添加到卷积层中以连接卷积层的输入和输出,最后,将L个相同的卷积层相互堆叠组成分层卷积层,其中较低的层用于捕获时间晚于预设阈值的学习率,较高的层则用来监测时间早于预设阈值的学习率。
8.根据权利要求1~5中任意一项所述的融合多特征的深度知识追踪方法,其特征在于,所述步骤S04中,将所需预测题目的题目表征向量et+1和该学生当前时刻的学生学习状态zt进行点积,然后经过softmax函数进行归一化,得到该题相对于当前学生的相对难度,计算公式为:
ot+1=σ(zt·et+1)。
10.一种习题推荐方法,其特征在于,步骤包括:
当接收到习题推荐请求时,获取当前学生的历史答题信息,并利用权利要求1~9中任意一项所述深度知识追踪方法预测各习题相对难度的预测结果;
根据预测结果选取出所需相对难度的习题进行推荐。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210833098.3A CN115310520A (zh) | 2022-07-15 | 2022-07-15 | 融合多特征的深度知识追踪方法及习题推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210833098.3A CN115310520A (zh) | 2022-07-15 | 2022-07-15 | 融合多特征的深度知识追踪方法及习题推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115310520A true CN115310520A (zh) | 2022-11-08 |
Family
ID=83856422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210833098.3A Pending CN115310520A (zh) | 2022-07-15 | 2022-07-15 | 融合多特征的深度知识追踪方法及习题推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115310520A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115952838A (zh) * | 2023-02-03 | 2023-04-11 | 黑盒科技(广州)有限公司 | 一种基于自适应学习推荐系统生成方法及系统 |
CN117743699A (zh) * | 2024-02-20 | 2024-03-22 | 山东省计算中心(国家超级计算济南中心) | 一种基于dkt与汤普森采样算法的习题推荐方法及系统 |
-
2022
- 2022-07-15 CN CN202210833098.3A patent/CN115310520A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115952838A (zh) * | 2023-02-03 | 2023-04-11 | 黑盒科技(广州)有限公司 | 一种基于自适应学习推荐系统生成方法及系统 |
CN115952838B (zh) * | 2023-02-03 | 2024-01-30 | 黑盒科技(广州)有限公司 | 一种基于自适应学习推荐系统生成方法及系统 |
CN117743699A (zh) * | 2024-02-20 | 2024-03-22 | 山东省计算中心(国家超级计算济南中心) | 一种基于dkt与汤普森采样算法的习题推荐方法及系统 |
CN117743699B (zh) * | 2024-02-20 | 2024-05-14 | 山东省计算中心(国家超级计算济南中心) | 一种基于dkt与汤普森采样算法的习题推荐方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112163165B (zh) | 信息推荐方法、装置、设备及计算机可读存储介质 | |
CN109635083B (zh) | 一种用于搜索ted演讲中话题式查询的文档检索方法 | |
CN112116092B (zh) | 可解释性知识水平追踪方法、系统和存储介质 | |
CN115310520A (zh) | 融合多特征的深度知识追踪方法及习题推荐方法 | |
CN113610235B (zh) | 一种基于深度知识追踪的适应性学习支持装置及方法 | |
CN112527993B (zh) | 一种跨媒体层次化深度视频问答推理框架 | |
Ravichandran et al. | Statistical QA-Classifier vs. Re-ranker: What’s the difference? | |
CN115115862A (zh) | 基于异构图神经网络的高阶关系知识蒸馏方法及系统 | |
Hamim et al. | Student profile modeling using boosting algorithms | |
CN113239209A (zh) | 基于RankNet-transformer的知识图谱个性化学习路径推荐方法 | |
CN113011172A (zh) | 文本处理方法、装置、计算机设备和存储介质 | |
Kusumawardani et al. | Transformer encoder model for sequential prediction of student performance based on their log activities | |
Mishra et al. | Dynamic identification of learning styles in MOOC environment using ontology based browser extension | |
Halder et al. | Predicting helpful posts in open-ended discussion forums: A neural architecture | |
CN115270943B (zh) | 一种基于注意力机制的知识标签提取模型 | |
CN115935071A (zh) | 知识点推荐方法、装置、存储介质及电子设备 | |
CN114329181A (zh) | 一种题目推荐方法、装置及电子设备 | |
Xu et al. | A survey of machine reading comprehension methods | |
Han | Research on personalized recommendation method of educational resources based on learner behavior analysis | |
El Aouifi et al. | Predicting learner’s performance through video viewing behavior analysis using graph convolutional networks | |
CN111081095A (zh) | 影音教学平台、分析子系统及方法、推荐子系统及方法 | |
CN116502713B (zh) | 一种基于加权元路径增强题目相似性嵌入的知识追踪方法 | |
Lee | Comparative Study on Predicting Student Grades using Five Machine Learning Algorithms | |
CN113361615B (zh) | 基于语义相关性的文本分类方法 | |
CN114528482B (zh) | 一种推荐对象确定方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |