一种在线学生知识评估方法及其系统与流程

文档序号:14873319发布日期:2018-07-07 02:37阅读:259来源:国知局

本发明涉及大数据挖掘技术领域,尤其涉及一种学生在线知识评估方法及其系统。



背景技术:

21世纪以来,信息化教育技术走入日常教学过程,教育信息化已经成为计算机融合传统教育而形成的一个重要研究方向。随着互联网的发展,为了打破受地域限制的传统教育模式,探索并开发了各类在线学习系统。在新型的教育模式下,对于学生而言,想要提高学习成绩,不得不面临“信息爆炸”的难题,即,如何从浩如烟海的各类教育资源中快速获取适合自己的部分资源来提高完善自己的知识架构。为此,人们开始将人工智能技术融入智能学习系统,让计算机理解学生的知识掌握状态,自动地从学生学习记录中构建学生画像,从而真正能够做到如同私人教师一般为学生提供个性化服务。目前,大多采用dkt模型或者bkt模型对学生的认知状态进行分析,但是,在采用dkt模型进行知识评估时,只利用了知识点名称和作答结果,并没有数据的其它可用特征,如学生的作答时间、作答次数等,并不能充分利用所有特征数据;此外,在采用bkt模型进行知识评估时,需要考虑特定领域的整体知识结构和评价机制,同时,没有引入知识难度以及个体认知能力差异等因素,往往导致分析结果不够准确等情况发生。

因此,现需提供一种能全面考虑数据的多个特征性,提高分析结果的准确性,并降低模型的训练时间,提高系统的自动性和优异性的在线评估学生知识掌握情况的评估方法及其系统。



技术实现要素:

本发明目的在于提供一种在线学生知识评估方法及其系统,以全面考虑数据的多个特征性,提高分析结果的准确性,并降低模型的训练时间,提高系统的自动性和优异性。

为实现上述目的,本发明提供了一种在线学生知识评估方法,包括:

与存储学生作答数据的数据库建立网络连接,并从所述数据库中获取所有学生的相关作答数据进行去噪得到经过初步筛选后的样本集;

依据所述初步筛选后的样本集基于cart算法对所有学生作答情况进行预测得到第一预测结果;

将所述第一预测结果、每一位学生的真实作答结果和每道题的相应知识点id进行one-hot编码,然后将编码结果通过dkt模型进行进一步分析以得出对学生知识掌握情况的评估结果。

优选地,所述基于cart算法对所有学生作答情况进行预测得到第一预测结果具体包括以下步骤:

(1)根据所述训练样本集数据计算cart算法的基尼系数:

gini(d)=1-∑kk=1(|ck|/|d|)2

式中,gini(d)表示基尼系数,k表示将样本集分成的类别数,d表示样本集,ck表示样本集中属于第k类的样本子集;

(2)根据所述训练样本集中的每一个特征a计算每一个特征a对应的基尼系数:

gini(d,a)=|d1|*gini(d1)/|d|+|d2|*gini(d2)/|d|;

式中,d1表示归属于d1类下的人数,d2表示归属于d2类下的人数;

(3)找出对应最小基尼系数gini(d,a)的特征a,并将该特征a作为判断条件生成cart决策树;

(4)通过剪枝对所述cart决策树进行数据筛选。

优选地,所述步骤(4)中采用后剪枝方法实现剪枝操作。

优选地,所述dkt模型的输入为:

o(et,ct)+o(at’,ct);

式中,et表示t时刻练习对应的知识点id,ct表示t时刻的作答结果,at’表示cart模型针对t时刻数据训练得到的结果,+表示将编码结果串联。

优选地,所述dkt模型在分析过程中,实现数据更新所采用的函数为:

ht=tanh(whxxt+whhht-1+bh);

式中,xt表示输入矩阵,ht表示当前时刻隐含层矩阵,whx表示当前输入矩阵权重,ht-1表示上一时刻隐含层的状态,bh表示隐含层的偏差。

优选地,所述评估结果在dkt模型中的输出公式表示为:

yt=(wyhht+by);

式中,yt表示评估结果,wyh表示读出权重矩阵,by表示读出偏差。

与上述方法相对应地,本发明还提供一种在线学生知识评估系统,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。

本发明具有以下有益效果:

本发明提供一种在线学生知识评估方法及其系统,首先通过cart算法对所有学生的作答情况进行预测得到第一预测结果,能对所有数据进行初步的自动分析,避免了手动处理数据时的效率低等问题,并能充分考虑数据的多个特征性,然后,将经过cart算法分析预测的第一预测结果、每一位学生的真实作答结果和每道题的相应知识点id进行one-hot编码,再将编码结果通过dkt模型进行进一步分析以得出对学生知识掌握情况的评估结果,能降低对dkt模型的训练时间,基于数据多特征的基础,提高分析结果的精确性。

与dkt模型结合使用,能通过自动学习各个知识点之间的关系,判断处理各个知识点之间的联系,充分利用数据的异构特征进一步提高对学生知识掌握情况评估的准确性。

下面将参照附图,对本发明作进一步详细的说明。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明优选实施例的方法模型示意图。

具体实施方式

以下结合附图对本发明的实施例进行详细说明,但是本发明可以由权利要求限定和覆盖的多种不同方式实施。

实施例1

参见图1,本实施例提供一种学生知识评估方法,包括以下步骤:

与存储学生作答数据的数据库建立网络连接,并从数据库中获取所有学生的相关作答数据进行去噪得到经过初步筛选后的样本集;

依据所述初步筛选后的样本集基于cart算法对所有学生作答情况进行预测得到第一预测结果;

将第一预测结果、每一位学生的真实作答结果和每道题的相应知识点id进行one-hot编码,然后将编码结果通过dkt模型进行进一步分析以得出对学生知识掌握情况的评估结果。

具体地,首先与存储学生作答数据的数据库建立网络连接,从数据库中获取相关数据,其包括学生的作答数据及相关题目信息,并将该相关数据导出到csv文件中,其中没每行信息表示一条作答记录,包括recordid,studentid,problemid,questiontype,correct,responsetime,skillid,attemptcount,difficultylevel等数据。为了提高实验的精确性,需提前进行去噪工作,即删除无效数据,并将开放式题目进行删除。例如,如果知识点recordid为空,那么这些为空的记录无法提供学生个体与知识点之间的联系,需要将这些数据删除,此外,对于开放式题目,大多情况下,无论学生的作答是否正确合理,答题平台都将默认为作答正确进行记录,所以为了避免评估结果产生偏差,提前将开放式题目进行删除。通过去噪进行数据预处理后得到训练样本集。

进一步地,基于cart算法对学生作答情况进行预测得到第一预测结果,其具体包括以下步骤:

(1)计算在cart算法中训练样本集的基尼系数:

gini(d)=1-∑kk=1(|ck|/|d|)2

式中,gini(d)表示基尼系数,k表示将样本集分成的类别数,d表示样本集,ck表示样本集中属于第k类的样本子集。

然后,根据基尼系数gini(d)创建根节点n,利用样本集中的每一个特征a及该特征a的每一个可能取值a,根据a≥a与a≤a将样本分为两部分,并计算gini(d,a)的取值。

(2)根据训练样本集中的每一个特征a计算每一个特征a对应的基尼系数:

gini(d,a)=|d1|*gini(d1)/|d|+|d2|*gini(d2)/|d|;

式中,d1表示归属于d1类下的人数,d2表示归属于d2类下的人数;

(3)找出对应最小基尼系数gini(d,a)的特征a及其取值a,并将其作为最优切分点生成叶子节点n1和n2(即子集n1和n2),再将叶子节点视为根节点递归调用步骤(1)和步骤(2),直至所有的数据都进行划分完毕后生成cart决策树;

(4)通过剪枝对cart决策树进行数据筛选。

作为本实施例优选的实施方式,上述步骤(4)中采用后剪枝方法实现剪枝操作。需要说明的是,当cart决策树划分得太细时,会产生对噪声数据产生过拟合的情况,因此需要采用剪枝方法解决。可选地,本实施例采用后剪枝方式实现剪枝操作,相比于前剪枝能达到更精准的目的,其有效性能更高,且解释性更强。

需要说明的是,cart算法可以对数据特征进行更深入的分析与处理。比如学生的作答时间responsetime,一个学生对一个题目的作答时间的长短可以体现学生对该知识点的掌握熟练程度,即该数据特征在一定程度上对学生个体进行更好的刻画,通过cart算法对数据特征进行充分挖掘,能够使评估结果更为接近实际情况。

进一步地,对经过cart算法预测得到的第一预测结果、学生的真实作答结果以及真实答案对应的知识点id进行one-hot编码,然后将编码结果作为dkt模型的输入,进而得到评估学生的知识掌握程度的评估结果。具体地,有关dkt模型的相关解释详见相关参考资料:piech,c.,bassen,j.,huang,j.,ganguli,s.,sahami,m.,guibas,l.j.,sohl-dickstein,j.:deepknowledgetracing.in:nips,pp.505–513(2015)。

作为本实施例优选的实施方式,dkt模型的输入为:

o(et,ct)+o(at’,ct);

式中,et表示t时刻练习对应的知识点id,ct表示t时刻的作答结果,at’表示cart模型针对t时刻数据训练得到的结果,+表示将编码结果串联。值得说明的是,o(·,·)代表one-hot编码,比如,t时刻由cart的得到结果为正确10,真实的作答结果为错误01,则o(at’,ct)编码结果为1001。所以+表示将编码结果串联,并不是数学意义上的加法。

进一步地,将经过one-hot编码后的数据输入到dkt模型的lstm全连接网络进行训练,在具体的分析过程中,实现数据更新所采用的函数为:

ht=tanh(whxxt+whhht-1+bh);

式中,xt表示输入矩阵,ht表示当前时刻隐含层矩阵,whx表示当前输入矩阵权重,ht-1表示上一时刻隐含层的状态,bh表示隐含层的偏差。即,隐含层状态的更新由当前输入矩阵和上一刻隐含层的状态(历史记录数据)共同决定。

最后,评估结果在dkt模型中的输出公式表示为:

yt=(wyhht+by);

式中,yt表示评估结果,wyh表示读出权重矩阵,by表示读出偏差。值得说明的是,由于在lstm全连接网络学习过程中,读出层的上一层是隐含层,在整个网络学习过程中,每个隐含层节点都会和读出层连接,所以每个隐含层节点和读出层之间都有一个比重关系,为方便计算,将这个比重关系记为读出权重。

如上所述,本发明提供一种在线学生知识评估方法及其系统,首先通过cart算法对所有学生的作答情况进行预测得到第一预测结果,能对所有数据进行初步的自动分析,避免了手动处理数据时的效率低等问题,并能充分考虑数据的多个特征性,然后,将经过cart算法分析预测的第一预测结果、每一位学生的真实作答结果和每道题的相应知识点id进行one-hot编码,再将编码结果通过dkt模型进行进一步分析以得出对学生知识掌握情况的评估结果,能降低对dkt模型的训练时间,基于数据多特征的基础,提高分析结果的精确性。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1