发明内容
为此,本发明实施例提供一种基于CO-MIRT算法模型的测评方法,以解 决现有技术中存在的无法兼顾测量误差、测量题量和待测知识点数量之间的平 衡,导致测评内容繁杂、测评效率和准确度较差的问题。
为了实现上述目的,本发明实施例提供如下技术方案:
第一方面,本发明实施例提供一种基于CO-MIRT算法模型的测评方法, 包括:获得测评事件的基本参数信息;将所述基本参数信息编制为知识点层级 集合和试题信息集合;根据所述知识点层级集合和所述试题信息集合设置相应 的试题ID列表、学生答案列表;在目标对象完成答题后,采用预设的CO-MIRT 算法模型基于输入的试题ID列表、学生答案列表进行测评分析,输出测评分 析结果。
进一步的,所述基本参数信息包括:包含多级别知识点的知识图谱、待测 知识点集合、试题池、试题参数;其中,所述试题池中的每道题目至少测量一 项待测知识点;所述试题参数包括试题Q矩阵参数、区分度参数以及难度参 数中的至少一种。
进一步的,所述知识图谱的底层知识点、所述待测知识点集合以及试题矩 阵参数所包含的知识点内容一致。
进一步的,所述知识点层级集合是对所述三维知识图谱中的每一层知识点 及所述每一层知识点的下属知识点绘制为邻接矩阵,并按照层级顺序进行排 放;所述试题信息集合中的试题Q矩阵、区分度、难度按照试题ID进行排序。
进一步的,所述试题ID列表记录当前目标对象所答过的所有试题的ID; 所述答案列表记录当前目标对象对每一道题目的答对或答错的结果。
进一步的,所述CO-MIRT算法模型包括:基于邻接矩阵而构建的前馈层、 针对单层知识点而构建的全连接层、接入预设的MIRT模型的输出层以及基于 预设算法设计的控制层。
进一步的,所述CO-MIRT算法模型还包括基于预设算法设计的伸缩层。
第二方面,本发明实施例还提供一种基于CO-MIRT算法模型的测评装置, 包括:参数信息获得单元,用于获得测评事件的基本参数信息;参数信息编制 单元,用于将所述基本参数信息编制为知识点层级集合和试题信息集合;设置 列表单元,用于根据知识点层级集合和所述试题信息集合,设置试题ID列表、 学生答案列表;测评分析单元,用于在目标对象完成答题后,采用预设的CO-MIRT算法模型基于输入的试题ID列表、学生答案列表进行测评分析,输 出测评分析结果。
进一步的,所述基本参数信息包括:包含多级别知识点的知识图谱、待测 知识点集合、试题池、试题参数;其中,所述试题池中的每道题目至少测量一 项待测知识点;所述试题参数包括试题Q矩阵参数、区分度参数以及难度参 数中的至少一种。
进一步的,所述知识图谱的底层知识点、所述待测知识点集合以及试题Q 矩阵参数所包含的知识点内容一致。
进一步的,所述知识点层级集合是对所述知识图谱中的每一层知识点及所 述每一层知识点的下属知识点绘制为邻接矩阵,并按照层级顺序进行排放;所 述试题信息集合中的试题Q矩阵、区分度、难度按照试题ID进行排序。
进一步的,所述试题ID列表记录当前目标对象所答过的所有试题的ID; 所述答案列表记录当前目标对象对每一道题目的答对或答错的结果。
进一步的,所述CO-MIRT算法模型包括:基于邻接矩阵而构建的前馈层、 针对单层知识点而构建的全连接层、接入预设的MIRT模型的输出层以及基于 预设算法设计的控制层。
进一步的,所述CO-MIRT算法模型还包括基于预设算法设计的伸缩层。
第三方面,本发明实施例还提供了一种电子设备,包括:处理器和存储器; 其中,所述存储器,用于存储基于CO-MIRT算法模型的测评方法的程序,该 电子设备通电并通过所述处理器运行该基于CO-MIRT算法模型的测评方法的 程序后,执行上述所述的任意一项所述的基于CO-MIRT算法模型的测评方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机 存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述 基于CO-MIRT算法模型的测评方法中任一项所述的方法。
采用本发明所述的基于CO-MIRT算法模型的测评方法,能够兼顾测量误 差、测量题量和待测知识点数量之间的平衡,简化了测评内容,提高了事件测 评效率,能够实现测评效果的高度精准化,从而有效提升用户的使用体验。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由 本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的 实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
下面基于本发明所述的一种基于CO-MIRT算法模型的测评方法,对其实 施例进行详细描述。如图1所示,其为本发明实施例提供的一种基于CO-MIRT 算法模型的测评方法的流程图,具体实现过程包括以下步骤:
步骤S101:获得测评事件的基本参数信息。
具体的,所述基本参数信息包括:包含多级别知识点的知识图谱、待测知 识点集合、试题池、试题参数等。其中,所述试题池中的每道题目至少测量一 项待测知识点;所述试题参数包括试题Q矩阵参数、区分度参数以及难度参 数等中的至少一种。需要说明的是,在具体实施过程中,所述知识图谱的底层 知识点、所述待测知识点集合以及试题Q矩阵参数所包含的知识点内容一致。
步骤S102:将所述基本参数信息编制为知识点层级集合和试题信息集合。
在步骤S101中获得测评事件的基本参数信息之后,在本步骤中可进一步 对所述基本参数信息进行编制,获得相应的知识点层级集合和试题信息集合。
具体的,所述知识点层级集合是对所述三维知识图谱中的每一层知识点及 所述每一层知识点的下属知识点绘制为邻接矩阵,并按照层级顺序进行排放; 所述试题信息集合中的试题Q矩阵、区分度、难度按照试题ID进行排序。其 中,邻接矩阵的尺寸如下:[num_parents,num_child];num_parents表示父级 知识点数量,num_child表示子级知识点数量,若父级知识点与子级知识点之 间存在关系,则标记为1,否则记为0;初始邻接矩阵计为[1,num_child],其 中num_child为第一层知识点的数量。
步骤S103:根据所述知识点层级集合和所述试题信息集合设置相应的试 题ID列表、学生答案列表。
在步骤S102中编制知识点层级集合和试题信息集合之后,在本步骤中可 设置相应的试题ID列表、学生答案列表。
在本发明实施例中,由于测评事件采取的是自适应测验的策略,因此,初 始题目设置为考察某一项待测知识点、难度接近为0的题目。进一步的,根据 所述知识点层级集合和所述试题信息集合设置相应的试题ID列表、学生答案 列表。其中,所述试题ID列表记录当前目标对象所答过的所有试题的ID;所 述答案列表记录当前目标对象对每一道题目的答对或答错的结果,比如记为1 或0。
步骤S104:在目标对象完成答题后,采用预设的CO-MIRT算法模型基于 输入的试题ID列表、学生答案列表进行测评分析,输出测评分析结果。
在步骤S103中获得所述试题ID列表和所述学生答案列表之后,在本步 骤中可将所述试题ID列表和所述学生答案列表输入到预设的CO-MIRT算法 模型,基于CO-MIRT算法模型进行测评分析。
在本发明实施例中,CO-MIRT(cooperative multiple item response theory;协作式的多维项目反应理论)算法模型,是利用深度学***衡问题。其中,所 述CO-MIRT算法模型包括:基于邻接矩阵而构建的前馈层、针对单层知识点 而构建的全连接层、接入预设的MIRT模型的输出层。需要说明的是,由于考 虑到在题目数量较少的条件下,会出现两种相互矛盾的问题,即:使用梯度下 降法来完成参数估计可以提高运算速度,但容易造成输出结果走向极端值,因 此在CO-MIRT算法模型中基于预设算法设计了控制层,以防止上述情况的出 现;然而,在具体实施过程中,控制了极端值却会造成处于数据分布两侧(通 常代表成绩较优或较差的目标对象)的数值被严重压缩,因此为了弥补控制层 造成的后果,通过利用历史数据的价值并基于预设算法设计了伸缩层,以求实 现测评效果的高度精准化。需要说明的是,所述目标对象是指测评事件中针对 的学生。
关于前馈层,由于目标对象(比如学生)在各细分级知识点下的表现情况 并不是完全独立的,而是存在一定的数学关系的,这种关系从纵向来说可划分 子级与父级知识点之间的关系,从横向上来说可以划分为子级知识点与其兄弟 知识点之间的关系。需采用数学关系表示如下,其中chilren表示子级知识点 的水平,parents表示父级知识点的水平,w表示权重,b表示偏置项:
children=f(parents,w,b);children=g(children,w,b)。
基于上述理论假设,基于预设算法能够根据知识图谱中的父子关系而绘制 了邻接矩阵(又称A矩阵)的图式,并在此基础上完成CO-MIRT算法模型构 建。假设,前馈层共存在L层,L={l1,l2,...,ls}ls表示L层中的第s层。 其中,第ls-1层是第ls层的父节点,第ls层是第ls-1层的子节点。第ls层的矩阵 尺寸为m*n,其中m是父节点的知识点数量,n是子节点的知识点数量。若第 m个父节点与第n个子节点之间存在关系,则标记为1,否则标记为0。theta 表示目标对象的能力值,thetas表示当前目标对象的第s层能力向量(注:此 处的s与知识图谱中的s是同一含义)。具体数学关系在此不再详细赘述。
关于全连接层,全连接层是针对前馈层中的每一层输出进行全连接计算的 过程。其中,w表示权重,b表示偏置项,thetas表示当前学生的第ls层的的能 力向量。w和b的初始化是随机给定的,经由梯度下降法计算而得,thetas是 由前馈层计算而得。需要说明的是,针对底层知识点(即知识图谱的最底层的 知识点)的全连接层输出是我们所期望获得的学生的能力估值。
具体数学关系如下:
权重计算算法为:weights=softmax(weights);
能力计算算法为:thetas=thetas-1οweights+betas;
能力激活算法为:thetas=tanh(thetas);thetac=thetac。
其中,c表示底层知识点,不参与激活。
关于输出层,输出层是为了将全连接层的最后一层的输出(目标对象能力 的估值)与试题参数(Q矩阵、区分度a、难度b)相结合构成logit,从而完 成损失函数的计算。其中,c表示知识图谱中的底层知识点,j表示第j道题目, qj表示第j道题目的Q矩阵,aj表示第j道题目的区分度,bj表示第j道题目的 难度。具体数学关系在此不再详细列举。
关于控制层,控制层的目的是为了防止输出结果出现极端值。在少量题目 的条件下,梯度下降法会造成thetac(c表示知识图谱的最底层)走向极端值, 经过实验表明使用tanh会有效的抑制这一点,然而tanh的值域为(-1,1),事实 上会对成绩较优或较差的目标对象产生“抛弃”。因此,基于预设的算法设计 了控制层,综合考虑tanh和非tanh的结果以控制输出结果。
具体数学关系如下:
控制向量,其中k表示底层知识点的数量:
control=[w1,w2,...,wk];其中k表示底层知识点的数量;
control=sigmoid(control);控制计算为:
thetac=tanh(thetac)·control+thetac·(1-control)。
关于伸缩层,伸缩层的目的是为了弥补控制层所造成的目标对象能力向量 被挤压的问题而设计的。伸缩层的主要逻辑是通过矩阵相乘的方式,将thetac (矩阵尺寸为1*k,k表示底层知识点的数量)压缩成thetatotal(thetatotal是一个 数值,表示目标对象在该学科上的整体能力)。然后,依据比如联考大数据等 历史资料,预先修订关于thetatotal的常模(围绕各校各年级),并产品运营的方 式引导目标对象填写其在年级中所处的水平,从而获取thetapre(thetapre表示先 验能力)。最后,我们通过计算thetatotal和thetapre的均方误差来达到伸缩的目 的。
具体数学关系如下:
误差计算:
punish_total=(thetatotal-thetapre)2
另外,需要说明的是关于损失函数与惩罚项,损失函数采取业界常用的交 叉熵损失函数,惩罚项是对thetac的l2正则化,以及上述误差计算公式的输出 结果。
在具体实施过程中,所述的采用预设的CO-MIRT算法模型基于输入的试 题ID列表、学生答案列表进行测评分析的具体实现过程可以包括如下部分: 第一步,若初始目标对象能力为0,完成前馈层计算任务(即与知识点层级集 合中的邻接矩阵进行计算),其中,在每一层前馈层中都进行一次全连接层的 计算;第二步,完成前馈层计算后,完成两层全连接层的计算,其中在最后一 层全连接层中进行控制层的计算,记为theta,即对目标对象能力的估算值; 第三步,对全连接层的输出结果,进行输出层的计算(题目信息来自所述试题 信息集合);第四步,对输出层的结果构建交叉熵损失函数,并添加惩罚项(包 括伸缩层的计算和theta的正则化);第五步,使用梯度下降法进行迭代计算; 第六步,根据试题ID列表进行试题矩阵(即Q矩阵)的累加计算,明确累加 最小值所对应的知识点,并选择考察该知识点、且fisher信息量(使用theta) 最大的题目,作为下一道考察题目,并重复第一步至第六步运算过程,直到达 到规定题目数量(即简化测评内容)。
采用本发明所述的基于CO-MIRT算法模型的测评方法,能够兼顾测量误 差、测量题量和待测知识点数量之间的平衡,简化了测评内容,提高了事件测 评效率,能够实现测评效果的高度精准化,从而有效提升用户的使用体验。
与上述提供的一种基于CO-MIRT算法模型的测评方法相对应,本发明还 提供一种基于CO-MIRT算法模型的测评装置。由于该装置的实施例相似于上 述方法实施例,所以描述的比较简单,相关之处请参见上述方法实施例部分的 说明即可,下面描述的基于CO-MIRT算法模型的测评装置的实施例仅是示意 性的。请参考图2所示,其为本发明实施例提供的一种基于CO-MIRT算法模 型的测评装置的示意图。
本发明所述的一种基于CO-MIRT算法模型的测评装置包括如下部分:
参数信息获得单元201,用于获得测评事件的基本参数信息。
参数信息编制单元202,用于将所述基本参数信息编制为知识点层级集合 和试题信息集合。
设置列表单元203,用于根据知识点层级集合和所述试题信息集合,设置 试题ID列表、学生答案列表。
测评分析单元204,用于在目标对象完成答题后,采用预设的CO-MIRT 算法模型基于输入的试题ID列表、学生答案列表进行测评分析,输出测评分 析结果。
采用本发明所述的基于CO-MIRT算法模型的测评装置,能够兼顾测量误 差、测量题量和待测知识点数量之间的平衡,简化了测评内容,提高了事件测 评效率,能够实现测评效果的高度精准化,从而有效提升用户的使用体验。
与上述提供的基于CO-MIRT算法模型的测评方法相对应,本发明还提供 一种电子设备。由于该电子设备的实施例相似于上述方法实施例,所以描述的 比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的电子 设备仅是示意性的。如图3所示,其为本发明实施例提供的一种电子设备的示 意图。
该电子设备具体包括:处理器301和存储器302;其中,存储器302用于 运行一个或多个程序指令,用于存储基于CO-MIRT算法模型的测评方法的程 序,该服务器通电并通过所述处理器301运行该基于CO-MIRT算法模型的测 评方法的程序后,执行上述任意一项所述的基于CO-MIRT算法模型的测评方 法。
与上述提供的一种基于CO-MIRT算法模型的测评方法相对应,本发明还 提供一种计算机存储介质。由于该计算机存储介质的实施例相似于上述方法实 施例,所以描述的比较简单,相关之处请参见上述方法实施例部分的说明即可, 下面描述的计算机存储介质仅是示意性的。
所述计算机存储介质中包含一个或多个程序指令,所述一个或多个程序指 令用于执行上述所述的基于CO-MIRT算法模型的测评方法。
在本发明实施例中,处理器或处理器模块可以是一种集成电路芯片,具有 信号的处理能力。处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit, 简称ASIC)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通 用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本 发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或 者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存 储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄 存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件 完成上述方法的步骤。
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或 可包括易失性和非易失性存储器两者。
其中,非易失性存储器可以是只读存储器(Read-Only Memory,简称 ROM)、可编程只读存储器(Programmable ROM,简称PROM)、可擦除可编 程只读存储器(Erasable PROM,简称EPROM)、电可擦除可编程只读存储器 (Electrically EPROM,简称EEPROM)或闪存。
易失性存储器可以是随机存取存储器(Random Access Memory,简称 RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的 RAM可用,例如静态随机存取存储器(Static RAM,简称SRAM)、动态随机 存取存储器(Dynamic RAM,简称DRAM)、同步动态随机存取存储器 (Synchronous DRAM,简称SDRAM)、双倍数据速率同步动态随机存取存储 器(Double Data Rate SDRAM,简称DDRSDRAM)、增强型同步动态随机存 取存储器(Enhanced SDRAM,简称ESDRAM)、同步连接动态随机存取存储 器(Synch link DRAM,简称SLDRAM)和直接内存总线随机存取存储器(Direct Ram bus RAM,简称DRRAM)。
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类 型的存储器。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描 述的功能可以用硬件与软件组合来实现。当应用软件时,可以将相应功能存储 在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进 行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括 便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通 用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了 进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已, 并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的 任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。