第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 知识点检测方法 装置 设备及可读存储介质与流程

知识点检测方法 装置 设备及可读存储介质与流程

时间:2019-11-30 13:47:23

相关推荐

知识点检测方法 装置 设备及可读存储介质与流程

本申请涉及信息处理技术领域,更具体地说,涉及一种知识点检测方法、装置、设备及可读存储介质。

背景技术:

因材施教一直是教学领域所追求的目标,在教学试题评阅过程中,如果能对学生的薄弱环节补充特定习题,将更有针对性。传统教学模式依赖于老师对学生在不同知识点下的掌握程度进行捕捉,但有限的时间和精力决定了无法将该方法应用于每个学生。

因此,如何自动检测试题的考察知识点成为亟待解决的技术问题。

技术实现要素:

有鉴于此,本申请提供了一种知识点检测方法、装置、设备及可读存储介质,用于。

为了实现上述目的,现提出的方案如下:

一种知识点检测方法,包括:

获取试题的题目,以及所述试题的m个正确答案和n个错误答案;

将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

根据各个句对的特征信息得到所述试题对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

上述方法,优选的,所述根据各个句对的特征信息得到所述试题对应的知识点,包括:

对每一个第一类文本中的各个词,以及每一个第二类文本中的各个词分别进行编码,得到各个第一类文本中的各个词的第一类编码,以及各个第二类文本中各个词的第一类编码;

利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码,得到所述试题对应的知识点;所述知识点检测模型被配置为:至少对所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码进行特征提取,对提取的特征信息进行处理,得到所述试题对应的知识点的内部状态表示。

上述方法,优选的,所述至少对所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码进行特征提取,包括:

对应每一个句对,根据该句对中的第一类文本中的各个词的第一类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对中的第二类文本中各个词的第一类编码获得该句对中的第二类文本中的各个词的第二隐层向量表达;

对应第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

上述方法,优选的,所述根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示,包括:

根据该词的第一隐层向量表达和该句对的第二类文本中的各个词的第二隐层向量表达,计算该词在该句对的第二类文本中的各个词上的交互式注意力权重;

根据该词在该句对的第二类文本中的各个词上的交互式注意力权重,将该句对的第二类文本中的各个词的第二隐层向量表达进行加权处理,得到该句对的第二类文本在该词的注意力下的加权表示。

上述方法,优选的,所述基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息,包括:

将该句对的第二类文本在该词的注意力下的加权表示和该词的第一隐层向量表达构成该词在该句对中的向量表示;

将该句对中的第一类文本的各个词在该句对中的向量表示构成的该句对中的第一类文本的向量表示,转换为目标维度的向量表示作为该句对的特征信息。

上述方法,优选的,在利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对的第二类文本中各个词的第一类编码,得到该试题对应的知识点之前,还包括:

对所述各个句对中的第一类文本和第二类文本中词的每个字符分别进行编码;

所述利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对的第二类文本中各个词的第一类编码,得到该试题对应的知识点,包括:

利用预置的知识点检测模型处理所述各个句对中的第一类文本中的各个词的第一类编码和每个词中的各个字符的编码,所述各个句对的第二类文本中各个词的第一类编码和每个词中的各个字符的编码,得到该试题对应的知识点;所述知识点检测模型被配置为:对所述各个句对中的第一类文本和所述各个句对的第二类文本中的每个词的各个字符的编码进行处理,得到所述各个句对中的各个词的第二类编码;对所述各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及该句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,对提取的特征信息进行处理,得到该试题对应的知识点的内部状态表示。

上述方法,优选的,所述对所述各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及所述各个句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,包括:

对应每个一句对,根据该句对中的第一类文本中的各个词的第一类编码和第二类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对的第二类文本中各个词的第一类编码和第二类编码获得该句对的第二类文本中的各个词的第二隐层向量表达;

对应该句对中的第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

上述方法,优选的,还包括:

在题库中查找句对的特征信息与所述各个句对的特征信息匹配的试题作为相似试题;

输出所述相似试题。

上述方法,优选的,所述知识点检测模型通过标注有第3级知识点的题库数据训练得到。

一种知识点检测装置,包括:

题目获取模块,用于获取试题题目,以及所述试题的m个正确答案和n个错误答案;

文本获取模块,用于将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

检测模块,用于根据各个句对的特征信息得到所述句对对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

上述装置,优选的,所述检测模块包括:

词编码模块,用于对每一个第一类文本中的各个词,以及每一个第二类文本中的各个词分别进行编码,得到各个第一类文本中的各个词的第一类编码,以及各个第二类文本中各个词的第一类编码;

预测模块,用于利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码,得到所述试题对应的知识点;所述知识点检测模型被配置为:至少对所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码进行特征提取,对提取的特征信息进行处理,得到所述试题对应的知识点的内部状态表示。

上述装置,优选的,所述预测模块包括:

第一隐层向量获取模块,用于对应每一个句对,根据该句对中的第一类文本中的各个词的第一类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对中的第二类文本中各个词的第一类编码获得该句对中的第二类文本中的各个词的第二隐层向量表达;

第一加权表示获取模块,用于对应第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

第一特征信息获取模块,用于基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

上述装置,优选的,所述第一加权表示获取模块包括:

权重计算模块,用于根据该词的第一隐层向量表达和该句对的第二类文本中的各个词的第二隐层向量表达,计算该词在该句对的第二类文本中的各个词上的交互式注意力权重;

加权处理模块,用于根据该词在该句对的第二类文本中的各个词上的交互式注意力权重,将该句对的第二类文本中的各个词的第二隐层向量表达进行加权处理,得到该句对的第二类文本在该词的注意力下的加权表示。

上述装置,优选的,所述第一特征信息获取模块包括:

组合模块,用于将该句对的第二类文本在该词的注意力下的加权表示和该词的第一隐层向量表达构成该词在该句对中的向量表示;

转换模块,用于将该句对中的第一类文本的各个词在该句对中的向量表示构成的该句对中的第一类文本的向量表示,转换为目标维度的向量表示作为该句对的特征信息。

上述装置,优选的,所述知识点检测装置还包括:

字符编码模块,用于对所述各个句对中的第一类文本和第二类文本中词的每个字符分别进行编码;

相应的,所述预测模块具体可以用于:利用预置的知识点检测模型处理所述各个句对中的第一类文本中的各个词的第一类编码和每个词中的各个字符的编码,所述各个句对的第二类文本中各个词的第一类编码和每个词中的各个字符的编码,得到该试题对应的知识点;所述知识点检测模型被配置为:对所述各个句对中的第一类文本和所述各个句对的第二类文本中的每个词的各个字符的编码进行处理,得到所述各个句对中的各个词的第二类编码;对所述各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及该句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,对提取的特征信息进行处理,得到该试题对应的知识点的内部状态表示。

上述装置,优选的,所述预测模块具体包括:

第二隐层向量获取模块,用于对应每个一句对,根据该句对中的第一类文本中的各个词的第一类编码和第二类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对的第二类文本中各个词的第一类编码和第二类编码获得该句对的第二类文本中的各个词的第二隐层向量表达;

第二加权表示获取模块,用于对应第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

第二特征信息获取模块,用于基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

上述装置,优选的,所述知识点检测装置还包括:

查找模块,用于在题库中查找句对的特征信息与所述各个句对的特征信息匹配的试题作为相似试题;

输出模块,用于输出所述相似试题。

一种知识点检测设备,包括存储器和处理器;

所述存储器,用于存储程序;

所述处理器,用于执行所述程序,实现如上任一项所述的知识点检测方法的各个步骤。

一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上中任一项所述的知识点检测方法的各个步骤。

从上述的技术方案可以看出,本申请实施例提供的知识点检测方法、装置、设备及可读存储介质,获取试题题目,以及试题的m个正确答案和n个错误答案;将各个正确答案分别与题目组合得到m个第一类文本,将各个错误答案分别与题目组合得到n个第二类文本;将对于m个第一类文本中的每一个第一类文本,将该第一类文本分别与每一个第二类文本构成一个句对,根据各个句对的表征第一类文本和第二类文本差异的特征信息得到试题对应的知识点。提供了一种高效、准确的知识点自动检测方案。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例公开的知识点检测方法的一种实现流程图;

图2为本申请实施例公开的至少对各个句对中的第一类文本中的各个词的第一类编码,以及各个句对中的第二类文本中各个词的第一类编码进行特征提取的一种实现流程图;

图3为本申请实施例公开的知识点检测装置的一种结构示意图;

图4为本申请实施例公开的知识点检测设备的硬件结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,应用于文本分类的解决方案主要有以下几种:基于词袋的词向量表达法、基于卷积神经网络的方法和基于递归神经网络的方法等。但发明人研究发现,这些方法均旨在处理单句的分类问题,对于多句的分类只是通过简单的向量拼接法实现,没有多句之间的交互。而在考试题目上,知识点往往取决于正确/错误答案之间的差异信息,如,teach/teaches考察知识点为动词的第三人称形式,而teach/teacher考察的则为动词词根和名词的区别;因此如果缺少了正确/错误答案之间的差异信息,便无法正确判别考察的知识点。

基于以上研究内容,本申请实施例提供的知识点检测方法的一种实现流程图如图1所示,可以包括:

步骤s11:获取试题的题目,以及该试题的m个正确答案和n个错误答案。m和n均为正整数。

一个试题包括题目和答案两部分,而答案又分为正确答案和错误答案。例如,一个试题为:annoften____metostudyenglish.a.teachb.teachesc.teachsd.teaching。则该试题的题目为“annoften____metostudyenglish.”,该试题的正确答案只有一个,即teaches,该试题的错误答案有三个,分别为:teach、teachs和teaching。

这里只是以选择题为例进行示例性说明,除了选择题,这里的试题还可以是其它类型的试题,如填空题,此时的错误答案为答题人针对试题给出的错误答案。

步骤s12:将各个正确答案分别与题目组合得到m个第一类文本,将各个错误答案分别与题目组合得到n个第二类文本。

本申请实施例中,对于m个正确答案中的每一个正确答案,将该正确答案与题目组合,得到该正确答案对应的第一类文本,则m个正确答案共得到m个第一类文本;同理,对于n个错误答案中的每一个错误答案,将该错误答案与题目组合,得到该错误答案对应的第二类文本,则n个错误答案共得到n个第二类文本。

以上述选择题为例,由于上述选择题只有一个正确答案,所有只得到一个第一类文本。将三个错误答案分别与题目组合,得到三个第二类文本。具体的:

将正确答案teaches与题目组合,得到第一类文本为:annoftenteachesmetostudyenglish.

将错误答案teach与题目组合,得到的第二类文本为:annoftenteachmetostudyenglish.

将错误答案teachs与题目组合,得到的第二类文本为:annoftenteachsmetostudyenglish.

将错误答案teaching与题目组合,得到的第二类文本为:annoftenteachingmetostudyenglish.

步骤s13:根据各个句对的特征信息得到试题对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

在得到第一类文本和第二类文本后,利用第一类文本和第二类文本构建句对,其中,一个第一类文本和一个第二类文本构成一个句对,则m个第一类文本和n个第二类文本一共可以构建m*n个句对。

以前述选择题为例,共构建三个句对:

(annoftenteachesmetostudyenglish.annoftenteachmetostudyenglish.)

(annoftenteachesmetostudyenglish.annoftenteachsmetostudyenglish.)

(annoftenteachesmetostudyenglish.annoftenteachingmetostudyenglish.)

本申请实施例中,对于每一个句对,从该句对中提取表征第一类文本和第二类文本的差异的特征信息,基于该特征信息预测试题对应的知识点。不同的句对中的句子的差异不同,不同差异所体现的知识点也可能不同。因此,根据各个句对的特征信息得到的试题对应的知识点可能会有多个,即基于每个试题可以预测出至少一个知识点。

本申请实施例公开的知识点检测方法,获取试题的题目,以及试题的m个正确答案和n个错误答案;将各个正确答案分别与题目组合得到m个第一类文本,将各个错误答案分别与题目组合得到n个第二类文本;对于m个第一类文本中的每一个第一类文本,将该第一类文本分别与每一个第二类文本构成一个句对,根据各个句对的表征第一类文本和第二类文本差异的特征信息得到试题对应的知识点。提供了一种高效、准确的知识点自动检测方案。

在一可选的实施例中,上述根据各个句对的特征信息得到试题对应的知识点的一种实现方式可以为:

对每一个第一类文本中的各个词,以及每一个第二类文本中的各个词分别进行编码,得到各个第一类文本中的各个词的第一类编码,以及各个第二类文本中各个词的第一类编码。

本申请实施例中,不管是第一类文本还是第二类文本,均进行词级编码。

具体的,

对于任意一个第一类文本,对该第一类文本中的每个词分别进行编码,得到该第一类文本中的各个词的第一类编码。

对于任意一个第二类文本,对该第二类文本中的每个词分别进行编码,得到该第二文本中的各个词的第一类编码。

可选的,可以利用预先训练好的考虑上下文的语言模型对第一类文本中的各个词分别进行处理,得到第一类文本中各个词的第一类编码,利用上述考虑上下文的语言模型对第二类文本中的各个词分别进行处理,得到第二类文本中各个词的第一类编码。

可选的,上述考虑上下文的语言模型可以由一层卷积神经网络(convolutionalneuralnetwork,cnn)层和两层双向长短记忆网络(bi-directionallongshort-termmemory,bilstm)层构成,该考虑上下文的语言模型可以在十亿级超大通用语料上训练得到。相比于传统的全局词向量表示模型(globalvectorsforwordrepresentation,glove)编码,该考虑上下文的语言模型的编码能随着上下文的不同而发生改变,更加适用于知识点检测,尤其适用于语法类题型的场景。以分别对applepen和applephone中的单词进行编码为例,本申请中考虑上下文的语言模型与glove模型的最大区别在于,考虑上下文的语言模型在分别对applepen和applephone中的单词进行编码时,apple的编码结果会不一样,而glove模型分别对applepen和applephone中的单词进行编码时,apple的编码结果是相同的。

利用预置的知识点检测模型至少处理各个句对中的第一类文本中的各个词的第一类编码,以及各个句对中的第二类文本中各个词的第一类编码,得到试题对应的知识点;

其中,知识点检测模型被配置为:至少对各个句对中的第一类文本中的各个词的第一类编码,以及各个句对中的第二类文本中各个词的第一类编码进行特征提取,对提取的特征信息进行处理,得到试题对应的知识点的内部状态表示。

本申请实施例中,知识点检测模型和上述考虑上下文的语言模型是相互独立的两个模型,即该两个模型的训练过程是相互独立的。

知识点检测模型可以利用标注有知识点的题库数据训练得到。该题库数据中可以包括多种类型的样本试题,且每个样本试题均标注有至少一个知识点。

具体在对知识点检测模型进行训练时,对于每一个样本试题:

获取该样本试题的题目,以及该样本试题的m个正确答案和n个错误答案。

将该样本试题的各个正确答案分别与该样本试题的题目组合得到对应该样本试题的m个第一类文本,将该样本试题的各个错误答案分别与该样本试题的题目组合得到对应该样本试题的n个第二类文本。

将对应该样本试题的m个第一类文本,以及n个第二类文本中的各个词分别进行编码,得到各个词的第一类编码。

将对应该样本试题的各个句对中的第一类文本中的各个词的第一类编码,以及第二类文本中的各个词的第一类编码输入知识点检测模型,得到该样本试题对应的知识点预测结果;每个句对包括对应该样本试题的一个第一类样本和一个第二类样本。

利用损失函数对知识点预测结果和该样本试题标记的知识点进行处理,根据处理结果对知识点检测模型的参数进行更新。

在一可选的实施例中,上述至少对各个句对中的第一类文本中的各个词的第一类编码,以及各个句对中的第二类文本中各个词的第一类编码进行特征提取的一种实现流程图如图2所示,可以包括:

步骤s21:对应每一个句对(为便于叙述,记为s),根据该句对s中的第一类文本(为便于叙述,记为s1)中的各个词的第一类编码获得该第一类文本s1中的各个词的第一隐层向量表达(为便于叙述,将第一类文本s1中的第i(i=1,2,……)个词的第一隐层向量表达记为h(s1,i)),根据该句对s中的第二类文本(为便于叙述,记为s2)中各个词的第一类编码获得该第二类文本s2中的各个词的第二隐层向量表达(为便于叙述,将第二类文本s2中的第j(j=1,2,……)个词的第一隐层向量表达记为h(s1,j))。

可选的,可以利用一层双向长短记忆网络bilstm对第一类文本s1中的第i个词的第一类编码进行处理,得到第一类文本s1中的第i个词的第一隐层向量表达,利用该一层双向长短记忆网络对第二类文本s2中的各第j个词的第一类编码进行处理,得到第二类文本s2中的第j个词的第二隐层向量表达。

步骤s22:对应第一类文本s1中的每个词,根据该词的第一隐层向量表达,以及第二类文本s2中的各个词的第二隐层向量表达,计算该句对s的第二类文本s2在该词的注意力下的加权表示。换句话说,对应第一类文本s1中的第i个词,根据该第i个词的第一隐层向量表达,以及第二类文本s2中的各个词的第二隐层向量表达,计算该第二类文本s2在该第i个词的注意力下的加权表示。

具体的,可以根据第一类文本s1中的第i个词的第一隐层向量表达和该句对s中的第二类文本s2中第j个词的第二隐层向量表达,计算第一类文本s1中第i个词在第二类文本s2中第j个词上的交互式注意力权重(为便于叙述,记为aij)。

可选的,可以通过如下方式计算第一类文本s1中第i个词在第二类文本s2中第j个词上的交互式注意力权重:

其中,f(h(s1,i),h(s2,j))表示计算第一类文本s1中的第i个词与第二类文本s2中的第j个词的相似度。h(s2,t)表示第二类文本s2中的第t个词的第二隐藏向量表达。

第一类文本s1中的第i个词与第二类文本s2中的第j个词的相似度的计算方式有多种:

方式一:

方式二:ws1为知识点检测模型中的参数,通过对知识点检测模型进行训练得到。

方式三:ws1为知识点检测模型中的参数,通过对知识点检测模型进行训练得到,表示将拼接在一起。

方式四:vs1,ws1和us1均为知识点检测模型中的参数,通过对知识点检测模型进行训练得到。

本申请实施例中,优选的计算方式为方式一,即通过计算余弦相似度来度量两个向量之间的相似度。

根据第一类文本s1中第i个词在第二类文本s2中的各个词上的交互式注意力权重,将第二类文本s2中的各个词的第二隐层向量表达进行加权处理,得到该句对s的第二类文本s2在第一类文本s1中的第i个词的注意力下的加权表示(为便于叙述,记为h("s1,i))。第二类文本s2在第一类文本s1中的第i个词的注意力下的加权表示h"(s1,i)用公式可以表示为:

h"(s1,i)=∑jaij*h(s2,j)

步骤s23:基于该句对s的第二类文本s2在第一类文本s1中的第i个词的注意力下的加权表示得到该句对的特征信息。

可选的,可以将该句对s的第二类文本s2在第一类文本s1中的第i个词的注意力下的加权表示和第一类文本s1中的第i个词的第一隐层向量表达构成第一类文本s1中的第i个词在该句对s中的向量表示。

具体的,可以将第二类文本s2在第一类文本s1中的第i个词的注意力下的加权表示与第一类文本s1中的第i个词的第一隐藏向量表达拼接在一起,得到第一类文本s1中的第i个词在该句对s中的向量表示(为便于叙述,记为hi"),用公式可以表示为:

h"i=concat(h(s1,i),h"((s1,i)))

句对s中的第一类文本s1中的各个词在该句对s中的向量表示构成第一类文本s1的向量表示(为便于叙述,记为h),即h由hi"拼接构成。此时,该第一类文本s1的向量表示h已经捕捉到了句对s中第一类文本s1和第二类文本s2的差异信息。将第一类文本s1的向量表示h转换为目标维度的向量表示,该目标维度的向量表示即为句对s的特征信息。将第一类文本s1的向量表示转换为目标维度的向量表示的过程实际是进行高层语义的知识点建模的过程。

可选的,可以利用两层bilstm对第一类文本s1的向量表示进行处理,该两层bilstm中的第二层bilstm输出的隐层状态向量即为目标维度的向量表示。

在得到句对s的特征信息,即目标维度的向量表示后,就可以根据句对s的特征信息进行知识点预测了。具体的,由前述内容可知,由一个试题可以得到m*n个句对,假设每个句对的目标维度的向量表示为l维的向量,则m*n个句对的目标维度的向量表示构成一个m*n*l维的向量表示,而要进行知识点预测,需要将m*n*l维的向量表示进行降维,得到知识点个数(假设为k)维度的向量。可以将m*n*l维的向量乘以一个(m*n*l)*k维的矩阵(该矩阵的行数为m*n*l,列数为k),得到k维向量。基于该k维向量预测试题对应的各个知识点。

上述实施例中,均是基于直接对词进行编码进行知识点预测。发明人研究发现,如果引入字符级编码,则可以进一步提高知识点预测的准确度。根据语种不同,字符的定义也不同,例如,若试题是英语试题,则每个英文字母为一个字符,若试题为中文试题,则每个字为一个字符。

具体的,在利用预置的知识点检测模型至少处理各个句对中的第一类文本中的各个词的第一类编码,以及各个句对的第二类文本中各个词的第一类编码,得到该句对对应的知识点之前,还可以包括:

对各个句对中的第一类文本和第二类文本中的词中的每个字符分别进行编码。也就是说,对于每一个句对,除了对该句对中的第一类文本中的各个词进行第一类编码外,还对该句对中的第一类文本中的词中的字符进行编码,同理,除了对该句对中的第二类文本中的各个词进行第一类编码外,还对该句对中的第二类文本中的词中的字符进行编码。

具体的,对句对s中的第一类文本s1中第i个词中的各个字符分别进行编码,得到该第i个词中的各个字符的编码,同理,对句对s中的第二类文本s2中第j个词中的各个字符分别进行编码,得到该第j个词中的各个字符的编码。

相应的,利用预置的知识点检测模型至少处理各个句对中的第一类文本中的各个词的第一类编码,以及各个句对的第二类文本中各个词的第一类编码,得到该句对对应的知识点的另一种实现方式可以为:

利用预置的知识点检测模型处理各个句对中的第一类文本中的各个词的第一类编码和该句对中的第一类文本中每个词的各个字符的编码,以及该句对的第二类文本中各个词的第一类编码和该句对中第二类文本中每个词的各个字符的编码,得到试题对应的知识点;

其中,知识点检测模型被配置为:对各个句对中的第一类文本和各个句对的第二类文本中的每个词的各个字符的编码进行处理,得到该句对中的各个词的第二类编码;对各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及各个句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,对提取的特征信息进行处理,得到试题对应的知识点的内部状态表示。

具体的,知识点检测模型对句对中的第一类文本中的第i个词中的各个字符的编码,得到该第i个词的第二类编码;同理,知识点检测模型对句对中的第二类文本中的第j个词中的各个字符的编码进行处理,得到该第j个词的第二类编码。

本申请实施例中,输入知识点检测模型的除了包括各个词的第一类编码外,还包括各个词中的字符的编码,对应每个一个词,知识点检测模型还对该词中的各个字符的编码进行处理,得到该词的第二类编码。也就是说,本申请实施例中,对应每一个词,该词都有两种编码,一种是直接对词本身进行编码,得到该词的第一类编码,如前所述,该种编码可以由知识点检测模型之外的语言模型编码得到;另一种是先对该词中的各个字符进行编码(该字符级编码也可以由知识点检测模型之外的编码模型编码得到),然后由知识点检测模型对该词中的各个字符的编码再进行编码,得到该词的第二类编码。具体的,可以由知识点检测模型中的卷积神经网络层对该词中的各个字符的编码进行编码,得到该词的第二类编码。通过对词的字符的编码进行再编码,使得每个词的变形(如,apples和apple;like和liked等)能够得到很好的区分,而这些变形往往是题目的考点所在。

在引入字符级编码后,上述对各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及各个句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,可以包括:

对应每一个句对,根据该句对中的第一类文本中的各个词的第一类编码和第二类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对的第二类文本中各个词的第一类编码和第二类编码获得该句对的第二类文本中的各个词的第二隐层向量表达。

可选的,对应每一个词,可以将该词的第一类编码和第二类编码拼接在一起作为该词的最终编码,对该词的最终编码进行处理,得到该词的隐层向量表达。具体的,将句对s中的第一类文本s1中第i个词的第一类编码和该第i个词的第二类编码拼接在一起,得到该第i个词的最终编码,同理,将句对s中的第二类文本s2中第j个词的第一类编码和该第j个词的第二类编码拼接在一起,得到该第j个词的最终编码。

对第i个词的最终编码进行处理,得到该第i个词的第一隐层向量表达,对第j个词的最终编码进行处理,得到该第j个词的第二隐层向量表达。

对应该句对中的第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示。具体计算过程可以参看前述实施例,这里不再赘述。

基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。具体实现过程可以参看前述实施例,这里不再赘述。

在引入字符级编码的情况下,在对知识点检测模型进行训练时,对于每一个样本试题:

获取该样本试题的题目,以及该样本试题的m个正确答案和n个错误答案。

将该样本试题的各个正确答案分别与该样本试题的题目组合得到对应该样本试题的m个第一类文本,将该样本试题的各个错误答案分别与该样本试题的题目组合得到对应该样本试题的n个第二类文本。

将对应该样本试题的m个第一类文本,以及n个第二类文本中的各个词分别进行编码,得到各个词的第一类编码。将第一类文本和第二类文本中的各个词中的各个字符分别进行编码,得到各个字符的编码;

将对应该样本试题的各个句对中的第一类文本中的各个词的第一类编码和词中的字符的编码,以及第二类文本中的各个词的第一类编码和词中的字符的编码输入知识点检测模型,得到该样本试题对应的知识点预测结果;每个句对包括对应该样本试题的一个第一类样本和一个第二类样本。

利用损失函数对知识点预测结果和该样本试题标记的知识点进行处理,根据处理结果对知识点检测模型的参数进行更新。

进一步的,除了预测得到试题(为便于叙述,记为t1)对应的知识点以外,还可以推荐与试题t1具有相同或相似知识点的试题,即推荐与试题t1相似的试题(为便于叙述,记为t2)。

可选的,可以在题库中查找句对的特征信息与试题t1的各个句对的特征信息匹配的试题t2作为相似试题;输出该相似试题。具体的,

可以将试题t1的各个句对的特征信息进行拼接,得到试题t1的综合特征信息,在题库中查找综合特征信息与试题t1的综合特征信息匹配的试题t2作为相似试题。特征信息通常是用向量表征的,因此,可以通过计算向量相似度的方式判断综合特征信息是否匹配。向量相似度越高,向量所表征的特征信息的匹配度越高。如果相似试题有多个,可以全部输出,或者,按照相似度由高到低的顺序,仅选择预设数量的相似试题输出。

或者,

也可以不将各个句对的特征信息进行拼接,而是针对每个一句对的特征信息,在题库中查找与该句对的特征信息匹配的试题作为相似试题。此时,针对每个句对的特征信息,均可以推荐相似试题。

另外,发明人研究发现,学生习题的编写遵循着固有的一套知识体系,该知识体系分为多个层级,知识点随着层级的增加逐渐细化,以英语语法知识点为例,例如,“inorderto的用法--不定式的常用结构--不定式的用法和意义--动词不定式--非谓语动词--语法知识”就是6级知识点“inorderto的用法”对应到根节点(即1级知识点“语法知识”)的路径。在对题库数据中的样本试题进行知识点标注时,虽然愈加精细的知识点标注能带来更多的信息量,但随之也造成了标注工作量的指数级增长,6级知识点共有1000多种知识点,想要老师从这1000多种知识点中选出试题对应的知识点标签,工作量无疑是巨大的。而3级知识点仅有130多种知识点,在这个层级上进行知识点标注就容易多了。但带来的问题就是相比于6级知识点,3级知识点缺少了很多信息量,因而,如果是完全基于知识点进行相似题推荐,这种信息量的缺失会导致推荐粒度过于粗糙。但本申请实施例公开的知识点检测模型,在以知识点为拟合目标的同时,用于预测知识点的特征信息中还包含了原始的语义信息,而3级知识点以下大部分是根据语义进行细分,因此,采用3级知识点进行标注,能够在基本不影响相似题推荐效果的前提下显著减少标注工作量。也就是说,本申请实施例中,知识点检测模型通过标注有第3级知识点的题库数据训练得到。

本申请实施例提供的知识点检测方法,从试题的实际的考察意图(词的变形、语义、差异)出发并进行构思,知识点检测结果符合实际应用场景,可以高效、准确地获得知识点检测结果。

与方法实施例相对应,本申请实施例还提供一种知识点检测装置,本申请实施例提供的知识点检测装置的一种结构示意图如图3所示,可以包括:

题目获取模块31,文本获取模块32和检测模块33;其中

题目获取模块31用于获取试题题目,以及所述试题的m个正确答案和n个错误答案。

文本获取模块32用于将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

检测模块33用于根据各个句对的特征信息得到所述句对对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

本申请实施例提供的知识点检测装置,获取试题题目,以及试题的m个正确答案和n个错误答案;将各个正确答案分别与题目组合得到m个第一类文本,将各个错误答案分别与题目组合得到n个第二类文本;将对于m个第一类文本中的每一个第一类文本,将该第一类文本分别与每一个第二类文本构成一个句对,根据各个句对的表征第一类文本和第二类文本差异的特征信息得到试题对应的知识点。提供了一种高效、准确的知识点自动检测方案。

可选的,检测模块33可以包括:

词编码模块,用于对每一个第一类文本中的各个词,以及每一个第二类文本中的各个词分别进行编码,得到各个第一类文本中的各个词的第一类编码,以及各个第二类文本中各个词的第一类编码;

预测模块,用于利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码,得到所述试题对应的知识点;所述知识点检测模型被配置为:至少对所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码进行特征提取,对提取的特征信息进行处理,得到所述试题对应的知识点的内部状态表示。

可选的,预测模块可以包括:

第一隐层向量获取模块,用于对应每一个句对,根据该句对中的第一类文本中的各个词的第一类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对中的第二类文本中各个词的第一类编码获得该句对中的第二类文本中的各个词的第二隐层向量表达;

第一加权表示获取模块,用于对应第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

第一特征信息获取模块,用于基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

可选的,第一加权表示获取模块可以包括:

权重计算模块,用于根据该词的第一隐层向量表达和该句对的第二类文本中的各个词的第二隐层向量表达,计算该词在该句对的第二类文本中的各个词上的交互式注意力权重;

加权处理模块,用于根据该词在该句对的第二类文本中的各个词上的交互式注意力权重,将该句对的第二类文本中的各个词的第二隐层向量表达进行加权处理,得到该句对的第二类文本在该词的注意力下的加权表示。

可选的,第一特征信息获取模块可以包括:

组合模块,用于将该句对的第二类文本在该词的注意力下的加权表示和该词的第一隐层向量表达构成该词在该句对中的向量表示;

转换模块,用于将该句对中的第一类文本的各个词在该句对中的向量表示构成的该句对中的第一类文本的向量表示,转换为目标维度的向量表示作为该句对的特征信息。

可选的,知识点检测装置还可以包括:

字符编码模块,用于对所述各个句对中的第一类文本和第二类文本中词的每个字符分别进行编码;

相应的,预测模块具体可以用于:利用预置的知识点检测模型处理所述各个句对中的第一类文本中的各个词的第一类编码和每个词中的各个字符的编码,以及所述各个句对的第二类文本中各个词的第一类编码和每个词中的各个字符的编码,得到该试题对应的知识点;所述知识点检测模型被配置为:对所述各个句对中的第一类文本和所述各个句对的第二类文本中的每个词的各个字符的编码进行处理,得到所述各个句对中的各个词的第二类编码;对所述各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及该句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,对提取的特征信息进行处理,得到该试题对应的知识点的内部状态表示。

可选的,预测模块具体可以包括:

第二隐层向量获取模块,用于对应每个一句对,根据该句对中的第一类文本中的各个词的第一类编码和第二类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对的第二类文本中各个词的第一类编码和第二类编码获得该句对的第二类文本中的各个词的第二隐层向量表达;

第二加权表示获取模块,用于对应第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

第二特征信息获取模块,用于基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

可选的,知识点检测装置还可以包括:

查找模块,用于在题库中查找句对的特征信息与所述各个句对的特征信息匹配的试题作为相似试题;

输出模块,用于输出所述相似试题。

本申请实施例提供的知识点检测装置可应用于知识点检测设备,如pc终端、云平台、服务器及服务器集群等。可选的,图4示出了知识点检测设备的硬件结构框图,参照图4,知识点检测设备的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;

在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;

处理器1可能是一个中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;

存储器3可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;

其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:

获取试题的题目,以及所述试题的m个正确答案和n个错误答案;

将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

根据各个句对的特征信息得到所述试题对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

可选的,所述程序的细化功能和扩展功能可参照上文描述。

本申请实施例还提供一种存储介质,该存储介质可存储有适于处理器执行的程序,所述程序用于:

获取试题的题目,以及所述试题的m个正确答案和n个错误答案;

将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

根据各个句对的特征信息得到所述试题对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

可选的,所述程序的细化功能和扩展功能可参照上文描述。

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

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

技术特征:

1.一种知识点检测方法,其特征在于,包括:

获取试题的题目,以及所述试题的m个正确答案和n个错误答案;

将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

根据各个句对的特征信息得到所述试题对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

2.根据权利要求1所述的方法,其特征在于,所述根据各个句对的特征信息得到所述试题对应的知识点,包括:

对每一个第一类文本中的各个词,以及每一个第二类文本中的各个词分别进行编码,得到各个第一类文本中的各个词的第一类编码,以及各个第二类文本中各个词的第一类编码;

利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码,得到所述试题对应的知识点;所述知识点检测模型被配置为:至少对所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码进行特征提取,对提取的特征信息进行处理,得到所述试题对应的知识点的内部状态表示。

3.根据权利要求2所述的方法,其特征在于,所述至少对所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对中的第二类文本中各个词的第一类编码进行特征提取,包括:

对应每一个句对,根据该句对中的第一类文本中的各个词的第一类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对中的第二类文本中各个词的第一类编码获得该句对中的第二类文本中的各个词的第二隐层向量表达;

对应第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

4.根据权利要求3所述的方法,其特征在于,所述根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示,包括:

根据该词的第一隐层向量表达和该句对的第二类文本中的各个词的第二隐层向量表达,计算该词在该句对的第二类文本中的各个词上的交互式注意力权重;

根据该词在该句对的第二类文本中的各个词上的交互式注意力权重,将该句对的第二类文本中的各个词的第二隐层向量表达进行加权处理,得到该句对的第二类文本在该词的注意力下的加权表示。

5.根据权利要求3所述的方法,其特征在于,所述基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息,包括:

将该句对的第二类文本在该词的注意力下的加权表示和该词的第一隐层向量表达构成该词在该句对中的向量表示;

将该句对中的第一类文本的各个词在该句对中的向量表示构成的该句对中的第一类文本的向量表示,转换为目标维度的向量表示作为该句对的特征信息。

6.根据权利要求2-5任意一项所述的方法,其特征在于,在利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对的第二类文本中各个词的第一类编码,得到该试题对应的知识点之前,还包括:

对所述各个句对中的第一类文本和第二类文本中的词中的每个字符分别进行编码;

所述利用预置的知识点检测模型至少处理所述各个句对中的第一类文本中的各个词的第一类编码,以及所述各个句对的第二类文本中各个词的第一类编码,得到该试题对应的知识点,包括:

利用预置的知识点检测模型处理所述各个句对中的第一类文本中的各个词的第一类编码和每个词中的各个字符的编码,以及所述各个句对的第二类文本中各个词的第一类编码和每个词中的各个字符的编码,得到该试题对应的知识点;所述知识点检测模型被配置为:对所述各个句对中的第一类文本和所述各个句对的第二类文本中的每个词的各个字符的编码进行处理,得到所述各个句对中的各个词的第二类编码;对所述各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及该句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,对提取的特征信息进行处理,得到该试题对应的知识点的内部状态表示。

7.根据权利要求6所述的方法,其特征在于,所述对所述各个句对中的第一类文本中的各个词的第一类编码和第二类编码,以及所述各个句对的第二类文本中各个词的第一类编码和第二类编码进行特征提取,包括:

对应每个一句对,根据该句对中的第一类文本中的各个词的第一类编码和第二类编码获得该句对中的第一类文本中的各个词的第一隐层向量表达,根据该句对的第二类文本中各个词的第一类编码和第二类编码获得该句对的第二类文本中的各个词的第二隐层向量表达;

对应该句对中的第一类文本中的每个词,根据该词的第一隐层向量表达,以及该句对的第二类文本中的各个词的第二隐层向量表达,计算该句对的第二类文本在该词的注意力下的加权表示;

基于该句对的第二类文本在该词的注意力下的加权表示得到该句对的特征信息。

8.根据权利要求1所述的方法,其特征在于,还包括:

在题库中查找句对的特征信息与所述各个句对的特征信息匹配的试题作为相似试题;

输出所述相似试题。

9.根据权利要求2-5任意一项所述的方法,其特征在于,所述知识点检测模型通过标注有第3级知识点的题库数据训练得到。

10.一种知识点检测装置,其特征在于,包括:

题目获取模块,用于获取试题题目,以及所述试题的m个正确答案和n个错误答案;

文本获取模块,用于将各个正确答案分别与所述题目组合得到m个第一类文本,将各个错误答案分别与所述题目组合得到n个第二类文本;

检测模块,用于根据各个句对的特征信息得到所述句对对应的知识点;其中,每个句对包括一个第一类文本以及一个第二类文本;每个句对的特征信息表征该句对中的第一类文本和第二类文本的差异。

11.一种知识点检测设备,其特征在于,包括存储器和处理器;

所述存储器,用于存储程序;

所述处理器,用于执行所述程序,实现如权利要求1-9中任一项所述的知识点检测方法的各个步骤。

12.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-9中任一项所述的知识点检测方法的各个步骤。

技术总结

本申请实施例公开了一种知识点检测方法、装置、设备及可读存储介质,获取试题题目,以及试题的M个正确答案和N个错误答案;将各个正确答案分别与题目组合得到M个第一类文本,将各个错误答案分别与题目组合得到N个第二类文本;对于M个第一类文本中的每一个第一类文本,将该第一类文本分别与每一个第二类文本构成一个句对,根据各个句对的表征第一类文本和第二类文本差异的特征信息得到试题对应的知识点。提供了一种高效、准确的知识点自动检测方案。

技术研发人员:李松;汪洋;付瑞吉;王士进;魏思

受保护的技术使用者:科大讯飞股份有限公司

技术研发日:.11.08

技术公布日:.02.28

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。