一种基于影响因子和神经网络的知识点摸底方法与流程

文档序号:12469159阅读:321来源:国知局
一种基于影响因子和神经网络的知识点摸底方法与流程

本发明涉及计算机技术领域,特别涉及一种基于影响因子和神经网络的知识点摸底方法。



背景技术:

知识点摸底一直都是中小学在线教育系统中的热点问题,属于整个在线教育系统的有机组成部分。通过对新用户进行知识点摸底,可以大体判断出一个用户哪些知识点已经掌握,哪些未掌握。这样才能有针对性地向不同用户推荐不同的学习资料,以便个性化地对用户进行辅导,有效地提高其学习成绩。因此,如何有效地对刚注册的用户进行知识点摸底在整个在线教育系统中就显得尤为重要。

目前,对新用户知识点摸底的方法都是事先对每一个知识点出一系列题目,然后要求用户对每一个知识进行做题,通过判断题目是否正确来得出是否掌握该知识点的结论。传统做题的方法容易使大多数用户感到反感,一开始就产生抵触心理。尤其是随着做题数量的增多,即便是已掌握的知识点的题目也越来越容易因为分心或粗心而做错,得出用户并未掌握该知识点的错误结论。另外,做题需要消耗大量的时间,使得整个对知识点的摸底探测的时间过长(以500个知识点,每个知识点5题,做每一题平均花费1分钟为例,就需要花费2500分钟)。更有甚者,部分用户在摸底探测的过程中就可能因为题量过多而选择直接放弃,不愿意继续做题。

综上所述,如果能够研发出一种快速对用户知识点进行摸底的方法,不需要依赖于做题的方式,解决现有对知识点摸底的方法带来的种种弊端,将会极具市场前景。



技术实现要素:

为此,需要提供一种基于影响因子和神经网络的知识点摸底方法,该方法通过提炼出用户与其是否掌握某一知识点相关的影响因子,并将影响因子输入到已经训练好的多层神经网络模型中,通过算法运算直接得出用户对知识点的掌握情况,有效解决了现有通过做题来对知识点进行摸底的方式所带来的用户体验差、时间长、摸底结论不可靠等问题。

为实现上述目的,发明人提供了一种基于影响因子和神经网络的知识点摸底方法,所述方法包括以下步骤:

对知识点的影响因子进行量化,并根据量化后的影响因子,建立多层神经网络模型;

将训练样本参数输入到所建立的多层神经网络模型,并在训练得出的网络误差小于第一预设误差时,停止训练,并保存神经网络模型对应的网络参数;所述网络误差是指样本参数输入神经网络模型后的实际输出与期望输出的误差;

根据所保存的网络参数对神经网络模型进行初始化,并将待测用户对应的知识点的影响因子输入到训练好的神经网络模型中;

神经网络模型根据待测用户对应的知识点的影响因子对待测用户是否掌握该知识点进行预测,并保存预测结果。

进一步地,所述知识点的影响因子包括用户自身综合素质、用户家庭教育程度、用户学校教育程度、用户社会教育程度以及学科。

进一步地,所述“根据量化后的影响因子,建立多层神经网络模型”包括以下步骤:

输入层神经元个数为m个,m为知识点的影响因子个数,采用的是线性恒等激励函数,对应输入样本Xi(i=1,2,…,m)的维数为m,输入向量X=[x1,x2,…,xm],单个节点为xi

隐含层神经元个数为n个,采用的是单极S型激励函数f,对应输出样本Yj(j=1,2,…,n)的维数为n,隐含层神经元向量Y=[y1,y2,…,yn],单个节点为yj

输出层神经元个数为p个,采用的是线性传递激励函数g,对应输出样本Zk(k=1,2,…,p)的维数为p,输出层向量Z=[z1,z2,…,zp],单个节点为zk,输出层期望值为tk

各神经元间连接权值用Wij和进行Vjk进行表示,其中:Wij为输入层的第i个神经元到隐含层的第j个神经元的权值,Vjk为隐含层的第j个神经元到输出层的第k个神经元的权值;隐含层神经元j的阈值用θj表示,输出层神经元k的阈值用表示;隐含层yj表示第j个神经元的输出,信号由隐含层传递到输出层,作为输出层的输入;而输出层zk表示第k个神经元的实际输出,tk表示期望输出结果;输入层到隐含层的学习率用α表示,隐含层到输出层的学习率用β表示。

进一步地,所述“将训练样本参数输入到所建立的多层神经网络模型,并在训练得出的网络误差小于第一预设误差时,停止训练,并保存神经网络模型对应的网络参数”包括以下步骤:

步骤S1:初始化网络参数;具体包括:

S11:使用随机值初始化网络参数,所述网络参数包括:权值矩阵Wij和Vjk,学习率α、β,阀值θj和动量项其中,0<α、β≤1且β>α;

S12:确定隐含层激励函数,函数f选择为:

γ是陡度因子,取值范围是0.35≤γ≤0.7;

S13:确定输出层激励函数,函数g选择为:

γ是陡度因子,取值范围是0.35≤γ≤0.7;

步骤S2:输入训练样本,开始迭代训练,并对输入样本参数进行归一化处理;

其中,隐含层第j个神经元输出可以通过以下方式实现:

输出层第k个神经元输出可以通过以下方式实现:

步骤S3:样本训练完毕后,计算网络误差E,计算公式如下:

步骤S4:判断网络误差E是否小于第一预设误差,若是则神经网络模型训练结束,进入步骤S7;否则进入步骤S5;

步骤S5:将误差E反向传播并且更新网络参数;具体包括:

S51:确定误差信号,具体公式如下:

输出层神经元误差信号:δk=(tk-zk)*g′(netk);

隐含层神经元误差信号:

隐含层松紧变量取值的变化如下:

输出层松紧变量τ取值的变化如下:

S52:将误差反向传播;具体包括:

更新动量项公式如下:

对隐含层到输出层的权值进行调整,公式如下:

对输入层到隐含层的权值进行调整,公式如下:

对输出层阈值进行调整,公式如下:

对隐含层阈值进行调整,公式如下:

对隐含层神经元学习率α进行调整,公式如下:

对输出层神经元学习率β进行调整,公式如下:

步骤S6:采用步骤S5更新后的网络参数vjk,wij,θj,α,β,再次执行步骤S2;直至计算出的网络误差E小于第一预设误差,进入步骤S7;

步骤S7:将待测样本输入神经网络模型,观察实际输出与期望输出的误差,若两者误差大于第二预设误差,则对隐含层神经元数目以及陡度因子γ进行调整,并重新执行步骤S1至步骤S6;

步骤S8:当多个待测样本输入神经网络模型后,所有待测样本对应的输出与期望输出的误差均小于第二预设误差时,测试训练结束,并保存网络参数,所述网络参数包括当前神经网络模型对应的权值矩阵Wij和Vjk,学习率α、β,阀值θj和动量项其中,0<α、β≤1且β>α。

进一步地,所述“神经网络模型根据待测用户对应的知识点的影响因子对待测用户是否掌握该知识点进行预测”具体包括:

隐含层第j个神经元输出:

输出层第k个神经元输出:

进一步地,所述影响因子包括用户所处的年级,所述方法还包括步骤:

当待测用户所处的年级为N,设置大于N到最高年级之间的全部知识点为未掌握;对于最低年级至年级N的每个知识点采用神经网络模型进行预测。

本发明通过提炼的影响因子和设计的多层神经网络模型,经线下训练后,保存收敛后的网络参数。在进行知识点摸底时,可以把待测用户的与待测知识点相关的影响因子输入到已训练好的神经网络模型中,通过算法计算直接摸底出用户对知识点的掌握情况,能够快速对用户知识点进行摸底。上述对知识点的摸底方法相较于原有做题的方式而言,大大缩短了摸底时长,提升了效率,有效增强了用户体验,具有广泛的市场前景。

附图说明

图1为多层神经网络模型的建模原理图;

图2为本发明一实施方式涉及的基于影响因子和神经网络的知识点摸底方法的流程图;

图3为本发明另一实施方式涉及的基于影响因子和神经网络的知识点摸底方法的流程图;

图4为本发明一实施方式涉及的基于影响因子和神经网络的知识点摸底方法的流程图。

具体实施方式

为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。

请参阅图2,本发明一实施方式所述的基于影响因子和神经网络的知识点摸底方法的流程图。所述方法包括以下步骤:

首先进入步骤S201对知识点的影响因子进行量化,并根据量化后的影响因子,建立多层神经网络模型。在本实施方式中,所述知识点的影响因子包括用户自身综合素质、用户家庭教育程度、用户学校教育程度、用户社会教育程度以及学科。

本发明是针对指定的学科知识进行摸底,因而“学科”的分类是知识点的影响因子之一,另外各个知识点的难易程度也不相同,因而“知识点”本身也是影响因子之一;用户自身综合素质对知识点摸底的影响因子包括学商、智商、性别等;用户家庭教育对知识点摸底的影响因子包括双亲是否健在、母亲对教育的态度、父亲对教育的态度、母亲文化程度、父亲文化程度、母亲职业、父亲职业等;用户学校教育对知识点摸底的影响因子包括:学校类型、当前就读年级、近几年期末考试成绩均值、在班级中的成绩排名等;用户社会教育对知识点摸底的影响因子包括生源地等。

为了便于处理,需要对上述知识点的影响因子进行量化,即将上述影响因子数据化,用不同的数值来对应不同的影响因子,以便进行后续处理。例如对“知识点”的量化,具体包括:首先对所有知识点进行分类,通常高年级的知识点比低年级更难掌握,高年级的知识点难度越高,因此将知识点量化值按最高年级到最低年级进行编号,越靠后的知识点取值越小。再比如影响因子用户学校教育程度中的学校类型这一项,在进行量化时包括将学校类型按照一级达标、二级达标、三级达标、其他等类型进行划分。再比如对影响因子生源地的划分,可以按照城市类别来划分,如一线城市、二线城市、三线城市等等。其他影响因子的分类可以根据实际需要同理可得,此处不再赘述。

影响因子量化完成后,就需要根据影响因子建立多层神经网络模型。请参阅图1,为多层神经网络模型的建模原理图。在本实施方式中,根据影响因子建立多层神经网络模型具体包括以下步骤:

输入层神经元个数为m个,m为知识点的影响因子个数,采用的是线性恒等激励函数,对应输入样本Xi(i=1,2,…,m)的维数为m,输入向量X=[x1,x2,…,xm],单个节点为xi

隐含层神经元个数为n个,采用的是单极S型激励函数f,对应输出样本Yj(j=1,2,…,n)的维数为n,隐含层神经元向量Y=[y1,y2,…,yn],单个节点为yj

输出层神经元个数为p个,采用的是线性传递激励函数g,对应输出样本Zk(k=1,2,…,p)的维数为p,输出层向量Z=[z1,z2,…,zp],单个节点为zk,输出层期望值为tk

各神经元间连接权值用Wij和进行Vjk进行表示,其中:Wij为输入层的第i个神经元到隐含层的第j个神经元的权值,Vjk为隐含层的第j个神经元到输出层的第k个神经元的权值;隐含层神经元j的阈值用θj表示,输出层神经元k的阈值用表示;隐含层yj表示第j个神经元的输出,信号由隐含层传递到输出层,作为输出层的输入;而输出层zk表示第k个神经元的实际输出,tk表示期望输出结果;输入层到隐含层的学习率用α表示,隐含层到输出层的学习率用β表示。学习率α、β表示阈值修正速度,所述阈值为神经网络模型的网络参数之一,学习率的值太大会导致网络动荡,太小又会使收敛速度降低。因而在本实施方式中,学习率α、β满足以下条件:0<α、β<=1。

而后进入步骤S202将训练样本参数输入到所建立的多层神经网络模型,并在训练得出的网络误差小于第一预设误差时,停止训练,并保存神经网络模型对应的网络参数;所述网络误差是指样本参数输入神经网络模型后的实际输出与期望输出的误差。请参阅图3,所述“将训练样本参数输入到所建立的多层神经网络模型,并在训练得出的网络误差小于第一预设误差时,停止训练,并保存神经网络模型对应的网络参数”包括以下步骤:

步骤S1:初始化网络参数;具体包括:

S11:使用随机值初始化网络参数,所述网络参数包括:权值矩阵Wij和Vjk,学习率α、β,阀值θj和动量项其中,0<α、β≤1且β>α;

S12:确定隐含层激励函数,函数f选择为:

γ是陡度因子,取值范围是0.35≤γ≤0.7;

S13:确定输出层激励函数,函数g选择为:

γ是陡度因子,取值范围是0.35≤γ≤0.7;

步骤S2:输入训练样本,对输入样本参数进行归一化处理。信号正向传递并计算模型各层输出,其中,

隐含层第j个神经元输出可以通过以下方式实现:

输出层第k个神经元输出可以通过以下方式实现:

步骤S3:计算网络误差E,计算公式如下:

步骤S4:判断网络误差E是否小于第一预设误差,若是则神经网络模型训练结束,进入步骤S7;否则进入步骤S5;

步骤S5:将误差E反向传播并且更新网络参数;具体包括:

S51:确定误差信号,具体公式如下:

输出层神经元误差信号:δk=(tk-zk)*g′(netk);

隐含层神经元误差信号:

隐含层松紧变量取值的变化如下:

输出层松紧变量τ取值的变化如下:

S52:将误差反向传播;具体包括:

更新动量项公式如下:

更新网络参数包括对隐含层到输出层的权值、输入层到隐含层的权值、输出层阈值、隐含层阈值、隐含层神经元学习率α、输出层神经元学习率β等网络参数进行调整,具体包括:

对隐含层到输出层的权值进行调整,公式如下:

对输入层到隐含层的权值进行调整,公式如下:

对输出层阈值进行调整,公式如下:

对隐含层阈值进行调整,公式如下:

对隐含层神经元学习率α进行调整,公式如下:

对输出层神经元学习率β进行调整,公式如下:

步骤S6:采用步骤S5更新后的网络参数vjk,wij,θj,α,β,再次执行步骤S2;直至计算出的网络误差E小于第一预设误差,训练结束;或者,在网络误差E小于第一预设误差时,还可以进入步骤S7;

步骤S7:将待测样本输入神经网络模型,观察实际输出与期望输出的误差,若两者误差大于第二预设误差,则需要思考网络模型设计,具体是对隐含层神经元数目以及陡度因子γ进行调整,并重新执行步骤S1至步骤S6;

步骤S8:当多个待测样本输入神经网络模型后,所有待测样本对应的输出与期望输出的误差均小于第二预设误差时,测试训练结束,并保存网络参数,所述网络参数包括当前神经网络模型对应的权值矩阵Wij和Vjk,学习率α、β,阀值θj和动量项其中,0<α、β≤1且β>α。

而后进入步骤S203根据所保存的网络参数对神经网络模型进行初始化,并将待测用户对应的知识点的影响因子输入到训练好的神经网络模型中。所述“根据所保存的网络参数对神经网络模型进行初始化”即将之前保存好的网络参数作为神经网络模型的各个网络参数的初始值。待测用户对应的知识点的影响因子可以在待测用户注册时对该用户的所有影响因子进行收集,作为网络输入的一部分。

而后进入步骤S204神经网络模型根据待测用户对应的知识点的影响因子对待测用户是否掌握该知识点进行预测,并保存预测结果。在本实施方式中,所述“神经网络模型根据待测用户对应的知识点的影响因子对待测用户是否掌握该知识点进行预测”具体包括:

隐含层第j个神经元输出:

输出层第k个神经元输出:

至此,通过提炼的影响因子和设计的多层神经网络模型,并将待测用户的影响因子输入至训练好的神经网络模型中,并通过相关算法计算即可摸底出用户对知识点的掌握情况,能够快速对用户知识点进行摸底。

请参阅图4,所述影响因子包括用户所处的年级,所述方法还包括步骤:当待测用户所处的年级为N,设置大于N到最高年级之间的全部知识点为未掌握;对于最低年级至年级N的每个知识点采用神经网络模型进行预测。为了加快神经网络模型快速预测出结果,减少不必要的计算,因而在本实施方式中,超过用户所处年级的知识点属于超纲范围,预测结果均列为待测用户未掌握该知识点,即只对最低年级至待测用户所处的年级的知识点进行摸底预测。完整的摸底预测流程如图4所示,包括以下步骤:

步骤S301:用户注册时收集所有影响因子作为网络输入的一部分;假设当前用户所处的年级为N,进入步骤S303:设置大于N到最高年级之间的全部知识点为未掌握;以及步骤S304:对最低年级到N的每个知识点都作归一化处理;

在步骤S304后可以进入步骤S305:根据训练好的网络参数对网络模型进行初始化;初始化的方法如步骤S203;

步骤S306:将每一个归一化后的知识点送入网络进行预测;预测的方法如步骤S204;

步骤S307:保存预测结果;该预测结果具体包括了以下内容:最低年级到N的每个知识点哪些是用户已掌握的,哪些是用户未掌握的;

步骤S308:合并预测结果;即将步骤S303与步骤S307所得到的知识点的掌握情况汇总合并,得到最终的预测结果,并将最终的预测结果输出。

本发明通过提炼的影响因子和设计的多层神经网络模型,经线下训练后,保存收敛后的网络参数。在进行知识点摸底时,可以把待测用户的与待测知识点相关的影响因子输入到已训练好的神经网络模型中,通过算法计算直接摸底出用户对知识点的掌握情况,能够快速对用户知识点进行摸底。上述对知识点的摸底方法相较于原有做题的方式而言,大大缩短了摸底时长,提升了效率,有效增强了用户体验,具有广泛的市场前景。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。

本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。

上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。

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