发明内容
有鉴于此,本申请提供了一种知识点预测方法、装置、设备及存储介质,以提高知识点预测结果的准确率。
为了实现上述目的,现提出的方案如下:
一种知识点预测方法,包括:
获取试题对应各个预置知识点的概率;
在所有的预置知识点中确定预设数量的候选知识点,其中,所述试题对应各个候选知识点的概率大于所述试题对应所有预置知识点中的非候选知识点的概率;
根据预置的知识图谱确定候选知识点之间的关联程度;所述知识图谱中的节点为知识点,所述知识点为所述预置知识点或非预置知识点;
若所述关联程度在预设范围内,根据所述试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为所述试题对应的知识点。
上述方法,优选的,所述根据预置的知识图谱确定候选知识点之间的关联程度,包括:
根据所述知识图谱中的知识点间的关联关系,在所述知识图谱中确定连通所述预设数量的候选知识点的至少一条路径;每一条路径中非候选知识点的数量小于或等于预设阈值;
根据各条路径上各个知识点的重要程度,以及各条路径上所有知识点间的关联关系确定所述预设数量的候选知识点之间的关联程度。
上述方法,优选的,所述根据各条路径上各个知识点的重要程度,以及各条路径上所有知识点间的关联关系确定所述预设数量的候选知识点之间的关联程度,包括:
对于每一条路径,获取该条路径上各个知识点的重要程度,以及该路径上所有知识点间的关联关系对应的分值;将获得的所有重要程度以及分值连续相乘,得到该条路径对应的所述预设数量的候选知识点之间的关联程度;
将各条路径对应的所述预设数量的候选知识点之间的关联程度的最大值作为所述预设数量的候选知识点之间的最终的关联程度。
上述方法,优选的,知识图谱中的知识点间的关联关系至少包括如下几种:
父子关系:表示知识点之间为整体和部分的关系;
依赖关系:表示一个知识点当前是否学习取决于另一个知识点是否学习过;
兄弟关系:表示两个知识点有共同的父知识点,但这两个知识点之间没有依赖关系;
应用关系:表示一个知识点是另一个知识点在实际生产环境的应用实例;
参考关系:表示两个知识点属于同一个领域,且两个知识点之间存在部分或全部相同的主题,但两个知识点之间非依赖关系、非兄弟关系、非父子关系;
游离关系:表示两个知识点属于不同的领域,但其中一个知识点能丰富另一个知识点的学习。
上述方法,优选的,还包括:
若所述关联程度不在所述预设范围内,在目标题库中查找所述试题的重题或相似题;
将所述重题或相似题对应的知识点确定为所述试题对应的知识点。
上述方法,优选的,所述获取试题对应各个预置知识点的概率,包括:
获取所述试题的文本特征,所述文本特征至少包括所述试题的题干的文本特征和所述试题对应的解析信息的文本特征;
根据所述文本特征确定所述试题对应各个预置知识点的概率。
上述方法,优选的,所述文本特征还包括如下至少一项:所述试题对应的答案的文本特征,所述试题的来源的文本特征,所述试题的类型的文本特征。
一种知识点预测装置,包括:
获取模块,用户获取试题对应各个预置知识点的概率;
候选知识点确定模块,用于在所有的预置知识点中确定预设数量的候选知识点,其中,所述试题对应各个候选知识点的概率大于所述试题对应所有预置知识点中的非候选知识点的概率;
关联程度确定模块,用于根据预置的知识图谱确定候选知识点之间的关联程度;所述知识图谱中的节点为知识点,所述知识点为所述预置知识点或非预置知识点;
知识点预测模块,用于若所述关联程度在预设范围内,根据所述试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为所述试题对应的知识点。
一种知识点预测设备,包括存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如上任一项所述的知识点预测方法的各个步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上任一项所述的知识点预测方法的各个步骤。
从上述的技术方案可以看出,本申请实施例提供的知识点预测方法、装置、设备及存储介质,获取试题对应各个预置知识点的概率;在所有的预置知识点中确定预设数量的候选知识点,其中,试题对应各个候选知识点的概率大于试题对应所有预置知识点中的非候选知识点的概率;根据预置的知识图谱确定候选知识点之间的关联程度;知识图谱中的节点为知识点,该知识点为预置知识点或非预置知识点;若关联程度在预设范围内,根据试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为试题对应的知识点。可见,本申请在得到试题对应各个预置知识点的概率后,不是直接根据概率确定试题对应的知识点,而是先根据概率选出多个候选知识点,根据知识图谱判断该多个候选知识点之间的关联程度,根据该关联程度来确定知识点是否在预设范围内,如果在,才根据概率确定试题对应的知识点,从而保证了试题对应知识点的预测结果的准确性。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的发明人研究发现,目前预测试题知识点的方法在利用分类算法对试题进行分类时,在得到试题对应各个知识点的概率后,直接根据概率确定试题对应的知识点,导致知识点预测结果的准确率低。
为了提高知识点预测的准确率,本申请的基本思想是在得到试题对应各个知识点的概率后,不是直接根据概率确定试题对应的知识点,而是先根据概率选出多个候选知识点,根据知识图谱判断该多个候选知识点之间的关联程度,根据该关联程度来确定试题对应各个知识点的概率是否合理,如果合理,再根据概率确定试题对应的知识点,从而保证了试题对应知识点的预测结果的准确性。
基于上述基本思想,本申请实施例提供的知识点预测方法的一种实现流程图如图1所示,可以包括:
步骤S101:获取试题对应各个预置知识点的概率。
这里的试题即是要预测知识点的试题,预测知识点就是要确定试题对应预置知识点中的哪个或哪几个知识点,即试题要考察哪个或哪几个知识点。
预置知识点可以是试题所属学科的知识体系中的最小单位的知识点,也可以是非最小单位的知识点,具体可以根据实际的教学需求确定。
可以采用预置的文本分类算法获取试题对应各个预置知识点的概率。该文本分类算法可以基于TextCNN模型实现,具体实现方式可以参看已有的方案,这里不再详述。除了可以基于TextCNN模型获取试题对应各个预置知识点的概率外,还可以使用其它神经网络模型来获取试题对应各个预置知识点的概率,具体选用哪种本申请不做具体限定,只要能获取试题对应各个预置知识点的概率即可。
步骤S102:在所有的预置知识点中确定预设数量的候选知识点,其中,试题对应各个候选知识点的概率大于试题对应所有预置知识点中的非候选知识点的概率。
现有技术中,在获取试题对应各个预置知识点的概率后,直接根据试题对应各个预置知识点概率,确定试题对应的知识点。而本申请则不同,本申请是根据试题对应各个预置知识点的概率,将各个预置知识点按照概率由大到小的顺序排序,选择排序最靠前的预设数量个预置知识点作为候选知识点。作为示例,预设数量可以为3,当然,预设数量也可以为其它值,比如,2、5等,本申请不做具体限定。可选的,可以根据预置知识点的数量确定预设数量的取值,比如,如果预置知识点的数量较多,预设数量的值可以大一些,如果预置知识点的数量较少,预设数量的值可以小一些。
步骤S103:根据预置的知识图谱确定候选知识点之间的关联程度;知识图谱中的节点为知识点,知识点为预置知识点或非预置知识点。
知识图谱是由试题所属学科的知识体系中的知识点构成的,因此,知识图谱中的节点为知识点,试题所属学科的知识体系中的知识点包括上述预置知识点和非预置知识点(即除了预置知识点以外的知识点),因此,知识图谱中的任意一个节点,要么属于预置知识点,要么属于非预置知识点。
知识图谱中记录有节点间的关联关系,可以根据知识图谱中与候选知识点直接或间接相关的知识点来确定候选知识点之间的关联程度。
本申请认为N个候选知识点之间的关联程度体现的是N个候选知识点间的“血缘关系”,也就是N个候选知识点间的关联关系的远近,关联程度值越大,说明血缘关系越近,认为知识点预测偏差越小,如果关联程度值越小,说明血缘关系越远,认为知识点预测偏差越大,N个候选知识点间的关联程度应该落入一个合理区间,如果N个候选知识点之间的最终的关联程度未落入合理的区间内,可以人工审查试题和知识点是否合理。
另一方面,N个候选知识点之间的关联程度可以应用在试题区分度判断上,N个候选知识点之间的关联程度越小,说明试题对知识点区分度越大,N个候选知识点之间的关联程度越大,说明试题对知识点区分度越小。
步骤S104:若关联程度在预设范围内,根据试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为试题对应的知识点。
关联程度在预设范围内,说明基于试题对应各个预置知识点的概率确定试题对应的知识点是合理的,可以根据试题对应各个预置知识点的概率确定试题对应的知识点,否则说明基于试题对应各个预置知识点的概率确定试题对应的知识点是不合理的,根据试题对应各个预置知识点的概率确定试题对应的知识点是不准确的。
可选的,在根据试题对应各个预置知识点的概率确定目标知识点时,可以将最大概率对应的预置知识点确定为目标知识点。此种情况下,目标知识点通常只有一个,但如果最大概率有两个或多个,即试题对应两个或多个预置知识点的概率均为最大概率,则目标知识点有两个或多个。
或者,
在根据试题对应各个预置知识点的概率确定目标知识点时,可以将大于阈值的概率对应的预置知识点确定为目标知识点。此种情况下,目标知识点的数量为至少一个,具体根据大于阈值的概率的数量确定,如果只有一个概率大于阈值,则目标知识点只有一个,如果有两个或多个概率大于阈值,则目标知识点有两个或多个。
或者,
在根据试题对应各个预置知识点的概率确定目标知识点时,可以将排序前M的概率对应的预置知识点确定为目标知识点,此种情况下,目标知识点的数量为M。
或者,
在根据试题对应各个预置知识点的概率确定目标知识点时,可以将排序前M的概率对应的预置知识点中,大于阈值的概率对应的预置知识点确定为目标知识点。此种情况下,目标知识点的数量小于或等于M。
本申请实施例提供的知识点预测方法,在得到试题对应各个预置知识点的概率后,不是直接根据概率确定试题对应的知识点,而是先根据概率选出多个候选知识点,根据知识图谱判断该多个候选知识点之间的关联程度,根据该关联程度来确定知识点是否在预设范围内,如果在,才根据概率确定试题对应的知识点,从而保证了试题对应知识点的预测结果的准确性。
在一可选的实施例中,上述根据预置的知识图谱确定候选知识点之间的关联程度的一种实现流程图如图2所示,可以包括:
步骤S201:根据知识图谱中的知识点间的关联关系,在知识图谱中确定连通上述预设数量的候选知识点的至少一条路径;每一条路径中非候选知识点的数量小于或等于预设阈值。
为便于叙述,将预设数量记为N,将一条路径中非候选知识点的数量记为F,预设阈值记为T,则F小于或等于T。上述至少一条路径中,每一条路径中的知识点的数量最大为N+T。
可选的,可以从N个候选知识点中选择一个候选知识点(该候选知识点可以是最大概率对应的知识点,也可以是其它知识点)作为起点知识点,从该起点知识点开始,选择连接该起点知识点的关系,从而跳转到一个新的知识点,然后,继续选择连接该新的知识点的新的关系,跳转到下一个知识点,依此类推,直至跳转到N个候选知识点中的最后一个候选知识点(对于每一条路径而言,最后一个候选知识点是指N个候选知识点中最后一个跳转到的候选知识点)。整个知识图谱中,连通N个候选知识点的路径会有多条,但本申请实施例中只选择知识点的数量小于或等于N+T的路径来判断N个候选知识点之间的关联程度,一方面减少了计算N个候选知识点之间的关联程度的计算量,另一方面,知识点的数量小于或等于N+T的路径更能准确反映N个候选知识点之间的关联程度。在减少计算量的同时保证了N个候选知识点之间的关联程度的准确性。
步骤S202:根据各条路径上各个知识点的重要程度,以及各条路径上所有知识点间的关联关系确定预设数量的候选知识点之间的关联程度。
知识点的重要程度可以是知识图谱中预先定义好的,或者,可以是根据知识图谱的拓扑结果计算得到的pageRank值,该pageRank值的计算可以采用已有的成熟技术,由于pageRank值的计算方法不是本申请的重点,这里不再详述。
在一可选的实施例中,上述根据各条路径上各个知识点的重要程度,以及各条路径上所有知识点间的关联关系确定预设数量的候选知识点之间的关联程度的一种实现方式可以为:
对于每一条路径,获取该条路径上各个知识点的重要程度,以及该路径上所有知识点间的关联关系对应的分值;将获得的所有重要程度以及分值连续相乘,得到该条路径对应的所述预设数量的候选知识点之间的关联程度。
本申请实施例中,知识点间的关联关系可以为多种关联关系中的一中,不同的关联关系对应的分值不同,或者,部分关联关系对应的分值相同。关联关系对应的分值可以是预先配置好的。
对于任意一条路径,假设该条路径上具有L1个知识点和L2个关联关系,则基于该条路径可以获得L1个重要程度值和L2个关联关系对应的分值,则该条路径对应的预设数量的候选知识点之间的关联程度为L1个重要程度与L2个分值的连乘,用公式表示为:
ρ=∏I(pi)*wj
其中,ρ表示该条路径对应的预设数量的候选知识点之间的关联程度;I(pi)表示该条路径中第i(i=1,2,3,……,L1)个知识点的重要程度;wj表示该条路径中第j(i=1,2,3,……,L2)个关联关系对应的分值。
将各条路径对应的预设数量的候选知识点之间的关联程度的最大值作为预设数量的候选知识点之间的最终的关联程度。
当在知识图谱中确定的连通上述预设数量的候选知识点的路径只有一条时,该条路径对应的预设数量的候选知识点之间的关联程度即为预设数量的候选知识点之间的最终的关联程度。
当在知识图谱中确定的连通上述预设数量的候选知识点的路径有至少两条时,根据关联程度大小,选择最大关联程度作为预设数量的候选知识点之间的最终的关联程度。
在一可选的实施例中,知识图谱中的知识点间的关联关系知识可以包括如下几种:
父子关系,依赖关系,兄弟关系,应用关系,参考关系和游离关系;知识图中任意具有关联关系的两个知识点间的关联关系为上述几种关系中的一种;其中,
父子关系:表示知识点之间为整体和部分的关系,即一个知识点可以由一个或多个知识点组成,这个由一个或多个知识点组成的复合知识点称为父知识点,该一个或多个知识点为子知识点。如图3所示,为本申请实施例提供的具有父子关系的知识点的一种示例图,该示例中,“大数据概率”属于父知识点,“大数据概念”、“大数据来源”和“大数据特征”属于子知识点,也就是说,“大数据概率”与“大数据概念”这两个知识点间为父子关系,“大数据概率”与“大数据来源”这两个知识点间为父子关系,“大数据概率”与“大数据特征”这两个知识点间也为父子关系。
依赖关系:表示一个知识点当前是否学习取决于另一个知识点是否学习过,或者说,前一个知识点是后一个知识点的预备知识,反映了知识点内容之间前后相继的一种支撑关系。比如,学习可视化工具前,应先掌握可视化概念,学习可视化过程前,应先学会可视化工具,学习后面知识点的前提是必须要学习它的先驱知识点,相对兄弟关系而言,它们的学习是有先后顺序的,学习者在学习过程中需要严格按照知识点的顺序来学习,否则达不到系统掌握知识的目的。如图4所示,为本申请实施例提供的具有依赖关系的知识点的一种示例图,该示例中,因此,“可视化工具”和“可视化概念”这两个知识点为依赖关系,“可视化过程”和“可视化工具”这两个知识点间为依赖关系。
兄弟关系:表示两个知识点有共同的父知识点,但这两个知识点之间没有依赖关系。比如,在机器学习中,“支持向量机(SVM)”、“决策树”和“K-近邻”三个知识点是并列关系,独立掌握某个知识点,不受其它知识的影响。这些知识点位于同一个层次上,它们是同级别的,学习时无先后顺序,知识点间无必然联系,学习人员可以根据需求自主选择学习次序。如图5所示,为本申请实施例提供的具有兄弟关系的知识点的一种示例图,该示例中,“SVM”和“决策树”这个两个知识点间为兄弟关系,“决策树”和“K-近邻”这个两个知识点间为兄弟关系,当然,“SVM”和“K-近邻”这个两个知识点间也为兄弟关系。
应用关系:表示一个知识点是另一个知识点在实际生产环境的应用实例。应用是表达当前知识点具有的应用方式和场景,是某个对应的应用型知识点的支撑和条件,是一种自上而下的顺序关系。比如,“云计算应用案例”这个知识点是对“云计算”这个知识点的应用。如图6所示,为本申请实施例提供的具有应用关系的知识点的一种示例图。
参考关系:表示两个知识点属于同一个领域,且两个知识点之间存在部分或全部相同的主题,但两个知识点之间非依赖关系、非兄弟关系、非父子关系。比如,“开放域关系抽取”和“开放域事件抽取”这两个知识点,并不是完全不相关,但也不是依赖或者父子关系,也不是兄弟关系,它们有共同交叉的部分。如图7所示,为本申请实施例提供的具有参考关系的知识点的一种示例图。
游离关系:表示两个知识点属于不同的领域,但其中一个知识点能丰富另一个知识点的学习。游离关系类似于参考关系,但具有有了关系的两个知识点又属于不同的知识体系。比如,类图的学习需要借助一部分可视化的概念,但类图和可视化又是两个知识体系的概念,其中,类图是C++中的概念,而可视化是大数据中的概念。如图8所示,为本申请实施例提供的具有游离关系的知识点的一种示例图。
如图9所示,为本申请实施例提供的知识图谱的一种示例图中,该示例中,A邻域的知识点包括:a’,a,b,c’,c,c”,d;B领域的知识点包括:a”和f,C领域的知识点包括:e。其中,知识点a’和a之间为参考关系,知识点a和a”之间为游离关系,知识点a和b之间为依赖关系。知识点b和知识点c’,c,c”之间为父子关系,知识点c’,c,c”之间为兄弟关系,知识点c’和e之间为应用关系,知识点c和d之间为应用关系,知识点c”和f之间为应用关系。
在实际应用中,可以以章/节标题作为知识点,比如,按课程的章内容拆分,得到多个章级别的知识点,每个章级别的知识点可以再向下细分,得到节级别的知识点,然后,将节级别的知识点再向下细分,得到小节级别的知识点(比如,节中的理论、原理、概念、定义等)。如图10所示,为本申请实施例提供的知识图谱的一种示例图,该示例中,以章/节作为知识点。该示例中,“第1章”和“第2章”这两个知识点属于兄弟关系,“第2章”和“第3章”这两个知识点属于依赖关系,“第1章”这个知识点和“第1节”、“第2节”、“第3节”这三个知识点之间均为父子关系,“第1节”这个知识点和“第1小节”、“第2小节”、“第3小节”这三个知识点之间也均为父子关系,“第2小节”和“第3小节”这两个知识点间为应用关系。图10中的各个节点可以替换为章节对应的标题内容,比如,如果教材的第2章的标题是“分支和循环”,则可以将“第2章”替换为“分支和循环”。
图10作为示例,仅示出了同一个领域的知识点之间的关联关系,在实际应用中,还会有不同领域的知识点间的关联关系。比如图8所示的具有游离关系的知识点。
作为示例,父子关系对应的分值可以为1,依赖关系对应的分值可以为0.9,兄弟关系对应的分值可以为0.8,应用关系对应的分值可以为0.7,参考关系对应的分值可以为0.6,游离关系对应的分值可以为0.5。基于此,上述预设范围可以为[0.1,1],即如果预设数量的候选知识点之间的最终的关联程度在[0.1,1]内,说明N个候选知识点属于同一个知识点体系,知识点预测合理,反之,认为知识点预测不合理,比如,可能是试题信息超纲。
上述关联关系对应的分值只是一种示例性说明,并不构成对本申请方案的限定,本申请中的各种关联关系对应的分值还可以是其它取值,比如,父子关系对应的分值可以为0.5,依赖关系对应的分值可以为0.3,兄弟关系对应的分值可以为0.1,应用关系对应的分值可以为0.05,参考关系对应的分值可以为0.03,游离关系对应的分值可以为0.02。
在一可选的实施例中,本申请实施例提供的知识点预测方法还可以包括:
若候选知识点间的关联程度不在预设范围内,在目标题库中查找试题的重题或相似题。
本申请中,候选知识点间的关联程度不在预设范围内时,说明利用试题对应各个预置知识点的概率确定试题对应的知识点是不合理的,此时,不再利用试题对应各个预置知识点的概率确定试题对应的知识点,而是在目标题库中查找试题的重题或相似题。
在目标题库中查找试题的重题的方法可以包括:根据与试题的题型对应的判断准则查找重题,具体可以为:
如果试题为选择题,则对于目标题库中的任一选择题,若该选择题的题干与试题的题干完全相同,且超过预定比例(比如50%)的选项也一样,则认为该选择题是试题的重题。
如果试题为填空题,则对于目标题库中的任一填空题,若该填空题与试题完全相同,则认为该填空题是试题的重题。
如果试题为简答题,则对于目标题库中的任一简答题,若该简答题的题干与试题的题干相同,且问题也相同,则认为该简单题是试题的重题。
本申请实施例中,查找相似题的方法可以为:获取试题的文本特征;对于目标题库中的任一题,根据该题的文本特征和试题的文本特征计算该题和试题的相似度,如果相似度大于相似度阈值,则认为该题为试题的相似题,否则认为不是相似题。
在一可选的实施例中,可以先查找试题的重题,如果查找到重题,则将重题对应的知识点作为试题的知识点,无需再查找相似度,如果未查找到重题,则在题库中查找相似题,并将查找到的相似题的知识点作为试题的知识点。
将找到的重提或相似题对应的知识点确定为试题的知识点。
由于目标题库中的试题所对应的知识点是已知且准确的,因此,基于本申请的方案,在利用试题对应各个预置知识点的概率确定试题对应的知识点是不合理时,也能准确获取试题对应的知识点。
在一可选的实施例中,上述获取试题对应各个预置知识点的概率的过程可以包括:
获取试题的文本特征,该文本特征至少可以包括:试题的题干的文本特征和试题对应的解析信息的文本特征。
一道题目通常涉及到的概念多种多样,因此,可以从多种维度获取信息,如表1所示,为一道题涉及到的多个维度的信息的示例。
表1
本示例中,试题的文本特征至少包含题干和试题对应的解析这两个维度的文本特征。
根据文本特征确定试题对应各个预置知识点的概率。
可以将文本特征输入预先训练好的文本分类模型,得到试题对应各个预置知识点的概率。
可选的,可以将各个维度的文本特征进行拼接后,输入文本分类模型,进而得到试题对应各个预置知识点的概率。或者,可以将各个维度的文本特征相加后,输入文本分类模型,进而得到试题对应各个预置知识点的概率。
为了进一步提高确定试题知识点的准确率,文本特征进一步还可以包括:试题对应的答案的文本特征,试题的来源的文本特征,试题的类型的文本特征等等。其中,试题来源可以包括但不限于以下几种:课程题库,考试题库,自测题库等。需要说明的是,这里的各种题库中试题的知识点是未知的。
与方法实施例相对应,本申请实施例还提供一种知识点预测装置,本申请实施例提供的知识点预测装置的一种结构示意图如图11所示,可以包括:
获取模块1101,候选知识点确定模块1102,关联程度确定模块1103和知识点预测模块1104;其中,
获取模块1101用户获取试题对应各个预置知识点的概率;
候选知识点确定模块1102用于在所有的预置知识点中确定预设数量的候选知识点,其中,所述试题对应各个候选知识点的概率大于所述试题对应所有预置知识点中的非候选知识点的概率;
关联程度确定模块103用于根据预置的知识图谱确定候选知识点之间的关联程度;所述知识图谱中的节点为知识点,所述知识点为所述预置知识点或非预置知识点;
知识点预测模块1104用于若所述关联程度在预设范围内,根据所述试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为所述试题对应的知识点。
本申请实施例提供的知识点预测装置,在得到试题对应各个预置知识点的概率后,不是直接根据概率确定试题对应的知识点,而是先根据概率选出多个候选知识点,根据知识图谱判断该多个候选知识点之间的关联程度,根据该关联程度来确定知识点是否在预设范围内,如果在,才根据概率确定试题对应的知识点,从而保证了试题对应知识点的预测结果的准确性。
在一可选的实施例中,关联程度确定模块103可以包括:
路径选择模块,用于根据所述知识图谱中的知识点间的关联关系,在所述知识图谱中确定连通所述预设数量的候选知识点的至少一条路径;每一条路径中非候选知识点的数量小于或等于预设阈值;
第一确定模块,用于根据各条路径上各个知识点的重要程度,以及各条路径上所有知识点间的关联关系确定所述预设数量的候选知识点之间的关联程度。
在一可选的实施例中,第一确定模块具体可以用于:
对于每一条路径,获取该条路径上各个知识点的重要程度,以及该路径上所有知识点间的关联关系对应的分值;将获得的所有重要程度以及分值连续相乘,得到该条路径对应的所述预设数量的候选知识点之间的关联程度;
将各条路径对应的所述预设数量的候选知识点之间的关联程度的最大值作为所述预设数量的候选知识点之间的最终的关联程度。
在一可选的实施例中,知识图谱中的知识点间的关联关系至少包括如下几种:
父子关系:表示知识点之间为整体和部分的关系;
依赖关系:表示一个知识点当前是否学习取决于另一个知识点是否学习过;
兄弟关系:表示两个知识点有共同的父知识点,但这两个知识点之间没有依赖关系;
应用关系:表示一个知识点是另一个知识点在实际生产环境的应用实例;
参考关系:表示两个知识点属于同一个领域,且两个知识点之间存在部分或全部相同的主题,但两个知识点之间非依赖关系、非兄弟关系、非父子关系;
游离关系:表示两个知识点属于不同的领域,但其中一个知识点能丰富另一个知识点的学习。
在一可选的实施例中,知识点预测模块1104还可以用于:
若所述关联程度不在所述预设范围内,在目标题库中查找所述试题的重题或相似题;
将所述重题或相似题对应的知识点确定为所述试题对应的知识点。
在一可选的实施例中,获取模块1101可以包括:
文本特征获取模块,用于获取所述试题的文本特征,所述文本特征至少包括所述试题的题干的文本特征和所述试题对应的解析信息的文本特征;
概率获取模块,用于根据所述文本特征确定所述试题对应各个预置知识点的概率。
在一可选的实施例中,所述文本特征还包括如下至少一项:所述试题对应的答案的文本特征,所述试题的来源的文本特征,所述试题的类型的文本特征。
本申请实施例提供知识点预测装置可应用于知识点预测设备,如PC终端、云平台、服务器及服务器集群等。可选的,图12示出了知识点预测设备的硬件结构框图,参照图12,知识点预测设备的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;
在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
获取试题对应各个预置知识点的概率;
在所有的预置知识点中确定预设数量的候选知识点,其中,所述试题对应各个候选知识点的概率大于所述试题对应所有预置知识点中的非候选知识点的概率;
根据预置的知识图谱确定候选知识点之间的关联程度;所述知识图谱中的节点为知识点,所述知识点为所述预置知识点或非预置知识点;
若所述关联程度在预设范围内,根据所述试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为所述试题对应的知识点。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还提供一种存储介质,该存储介质可存储有适于处理器执行的程序,所述程序用于:
获取试题对应各个预置知识点的概率;
在所有的预置知识点中确定预设数量的候选知识点,其中,所述试题对应各个候选知识点的概率大于所述试题对应所有预置知识点中的非候选知识点的概率;
根据预置的知识图谱确定候选知识点之间的关联程度;所述知识图谱中的节点为知识点,所述知识点为所述预置知识点或非预置知识点;
若所述关联程度在预设范围内,根据所述试题对应各个预置知识点的概率,在所有预置知识点中确定目标知识点,作为所述试题对应的知识点。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。