CN113051886B - 一种试题查重方法、装置、存储介质及设备 - Google Patents
一种试题查重方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN113051886B CN113051886B CN202110319525.1A CN202110319525A CN113051886B CN 113051886 B CN113051886 B CN 113051886B CN 202110319525 A CN202110319525 A CN 202110319525A CN 113051886 B CN113051886 B CN 113051886B
- Authority
- CN
- China
- Prior art keywords
- test question
- question
- questions
- test
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 757
- 238000000034 method Methods 0.000 title claims abstract description 78
- 239000013598 vector Substances 0.000 claims abstract description 114
- 230000011218 segmentation Effects 0.000 claims description 25
- 238000013135 deep learning Methods 0.000 claims description 9
- 238000012552 review Methods 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000005303 weighing Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 22
- 238000004422 calculation algorithm Methods 0.000 description 13
- 239000000126 substance Substances 0.000 description 12
- HEMHJVSKTPXQMS-UHFFFAOYSA-M Sodium hydroxide Chemical compound [OH-].[Na+] HEMHJVSKTPXQMS-UHFFFAOYSA-M 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 238000010276 construction Methods 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 5
- 238000012512 characterization method Methods 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 229910002566 KAl(SO4)2·12H2O Inorganic materials 0.000 description 1
- 229940037003 alum Drugs 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000004816 latex Substances 0.000 description 1
- 229920000126 latex Polymers 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/319—Inverted lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Tourism & Hospitality (AREA)
- Mathematical Physics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Human Computer Interaction (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- General Business, Economics & Management (AREA)
- Software Systems (AREA)
- Electrically Operated Instructional Devices (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种试题查重方法、装置、存储介质及设备,该方法包括:首先,获取待查重的目标试题的隐向量;其中,隐向量用于表征目标试题的语义信息,然后,利用预先构建的HNSW试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合;接着,根据初选重复试题集合中的试题与目标试题的相似度,从初选重复试题集合中确定目标试题对应的重复试题。可见,由于本申请是基于表征试题语义信息的隐向量进行查重,不仅能够支持部分文档更新后的查重,还能够提高查重结果的准确性。同时,利用HNSW试题查重模型进行查重,也能够进一步提高试题查重速度和效率,得到准确性更高的试题查重结果。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种试题查重方法、装置、存储介质及设备。
背景技术
随着人工智能(Artificial Intelligence,检测AI)技术的不断突破和各种智能终端设备的日益普及,传统教育行业已悄然发生改变,新兴的AI+教育得到了迅猛的发展。而在AI+教育领域中,实现对学生的错题进行举一反三、错题再练,已成为行业刚需。因此,在试题库日益积累试题的过程中,如何在试题检索时,既能找到符合用户需求的相似试题,又能及时筛选出重复的试题并将其删除,以提升整个试题库的质量,就显得尤为重要,这也是业界的一个研究热点。
现有的试题查重方法通常有两种:一种是利用倒排索引的方式进行查重的方法,虽然该方法具有较快的搜索速度,但存在以下三个缺点:一是不支持部分文档更新时的查重;二是如果要实现新的文档被搜索,则需要更新整个倒排索引,这限制了索引包含的数据量和索引更新的频次;三是不支持基于试题语义的查重。而另一种常用的试题查重方法则是利用Simhash算法进行查重的方法,该方法也存在以下两个缺点:一是受限于该算法本身仅能适用于长文本的查重,如新闻、博客等,而对于一道教学题目(如数学题或物理题)来说,其长度通常远小于新闻的长度,导致在查重精度上表现较差;二是该算法天然存在一些算法上的缺点,比如当对试题编码时遇到哈希值(hash)冲突时也不好解决,也会导致查重结果的准确性较低。可见,前述两种查重方法均会存在的问题是:当试题查重的数据量过大时,会导致整个查重速度变过慢,且查重的准确性不高。
发明内容
本申请实施例的主要目的在于提供一种试题查重方法、装置、存储介质及设备,能够更加快速且准确地查询出重复试题。
本申请实施例提供了一种试题查重方法,包括:
获取待查重的目标试题的隐向量;所述隐向量用于表征所述目标试题的语义信息;
利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合;
根据所述初选重复试题集合中的试题与所述目标试题的相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题。
一种可能的实现方式中,所述获取待查重的目标试题的隐向量,包括:
获取待查重的目标试题,并对所述目标试题进行预处理,得到预处理后的目标试题;
对所述预处理后的目标试题进行分词,得到分词后的目标试题;
利用深度学习网络对所述分词后的目标试题进行编码,以确定出所述分词后的目标试题的隐向量,作为所述目标试题的隐向量。
一种可能的实现方式中,所述利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合,包括:
计算所述试题库中的试题与所述目标试题之间的题目长度的差值;
当所述差值满足预设条件时,利用预先构建的试题查重模型,根据所述目标试题的隐向量与所述试题的隐向量之间的相似度,确定所述试题是否为所述目标试题的初选重复试题;并将确定出的所述目标试题的所有初选重复试题组成集合。
一种可能的实现方式中,所述根据所述初选重复试题集合中的试题与所述目标试题的相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题,包括:
计算所述初选重复试题集合中的每一试题与所述目标试题的隐向量之间的第一相似度;
计算所述初选重复试题集合中的每一试题与所述目标试题的结构组合之间的第二相似度;
根据所述第一相似度和所述第二相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题。
一种可能的实现方式中,所述计算所述初选重复试题集合中的每一试题与所述目标试题的结构组合之间的第二相似度,包括:
当所述目标试题不属于典型选择题时,计算所述初选重复试题集合中的每一试题的题面和选项,与所述目标试题的题面和选项的不同组合之间的相似度,并将其中最高的相似度作为第二相似度;
或者,当所述目标试题属于典型选择题时,计算所述初选重复试题集合中的每一试题的题干与所述目标试题的题干之间的相似度,以及计算所述初选重复试题集合中的每一试题的选项与所述目标试题的选项之间的相似度,并将其中最低的相似度作为第二相似度。
一种可能的实现方式中,所述方法还包括:
从所述试题库中删除所述目标试题对应的重复试题。
本申请实施例还提供了一种试题查重装置,包括:
获取单元,用于获取待查重的目标试题的隐向量;所述隐向量用于表征所述目标试题的语义信息;
选取单元,用于利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合;
确定单元,用于根据所述初选重复试题集合中的试题与所述目标试题的相似度;从所述初选重复试题集合中确定所述目标试题对应的重复试题。
一种可能的实现方式中,所述获取单元包括:
获取子单元,用于获取待查重的目标试题,并对所述目标试题进行预处理,得到预处理后的目标试题;
分词子单元,用于对所述预处理后的目标试题进行分词,得到分词后的目标试题;
编码子单元,用于利用深度学习网络对所述分词后的目标试题进行编码,以确定出所述分词后的目标试题的隐向量,作为所述目标试题的隐向量。
一种可能的实现方式中,所述选取单元包括:
第一计算子单元,用于计算所述试题库中的试题与所述目标试题之间的题目长度的差值;
选取子单元,用于当所述差值满足预设条件时,利用预先构建的试题查重模型,根据所述目标试题的隐向量与所述试题的隐向量之间的相似度,确定所述试题是否为所述目标试题的初选重复试题;并将确定出的所述目标试题的所有初选重复试题组成集合。
一种可能的实现方式中,所述确定单元包括:
第二计算子单元,用于计算所述初选重复试题集合中的每一试题与所述目标试题的隐向量之间的第一相似度;
第三计算子单元,用于计算所述初选重复试题集合中的每一试题与所述目标试题的结构组合之间的第二相似度;
确定子单元,用于根据所述第一相似度和所述第二相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题。
一种可能的实现方式中,所述第三计算子单元具体用于:
当所述目标试题不属于典型选择题时,计算所述初选重复试题集合中的每一试题的题面和选项,与所述目标试题的题面和选项的不同组合之间的相似度,并将其中最高的相似度作为第二相似度;
或者,当所述目标试题属于典型选择题时,计算所述初选重复试题集合中的每一试题的题干与所述目标试题的题干之间的相似度,以及计算所述初选重复试题集合中的每一试题的选项与所述目标试题的选项之间的相似度,并将其中最低的相似度作为第二相似度。
一种可能的实现方式中,所述装置还包括:
删除单元,用于从所述试题库中删除所述目标试题对应的重复试题。
本申请实施例还提供了一种试题查重设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述试题查重方法中的任意一种实现方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述试题查重方法中的任意一种实现方式。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述试题查重方法中的任意一种实现方式。
本申请实施例提供的一种试题查重方法、装置、存储介质及设备,首先,获取待查重的目标试题的隐向量;其中,隐向量用于表征目标试题的语义信息,然后,利用预先构建的试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合;接着,根据初选重复试题集合中的试题与目标试题的相似度,从初选重复试题集合中确定目标试题对应的重复试题。可见,由于本申请实施例是基于表征试题语义信息的隐向量进行查重,即使在试题部分文档进行更新时,也能够支持试题的查重,并且也能够提高查重结果的准确性。同时,利用试题查重模型(如根据试题库中试题的隐向量构建的HNSW模型)进行查重,还能够进一步提高试题查重速度和效率,得到准确性更高的试题查重结果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种试题查重方法的流程示意图;
图2为本申请实施例提供的确定分词后的目标试题的隐向量的示意图;
图3为本申请实施例提供的计算初选重复试题集合中的试题与目标试题的相似度的示意图;
图4为本申请实施例提供的一种试题查重装置的组成示意图。
具体实施方式
在一些试题查重方法中,通常是利用倒排索引的方式进行查重,或者是利用Simhash算法进行查重,但这种查重方法在试题查重的数据量过大时,均会导致查重速度变过慢且查重的准确性不高的问题。
具体来讲,在利用倒排索引的方式进行试题查重的过程中,首先需要构造分词器,用以对试题库中的每道试题进行分词,然后,对于全量的已经分好词的文本进行构建倒排索引库,再以每道新题为搜索的query进行同样的分词进行查找。虽然该方法具有较快的搜索速度,但存在以下三个缺点:一是不支持部分文档更新时的查重;二是如果要实现新的文档被搜索,则需要更新整个倒排索引,这限制了索引包含的数据量和索引更新的频次;三是不支持基于试题语义的查重,这样因为而在实际场景中,有很多用例不仅仅是完全的字面重复,同时也存在很多语义重复的问题,特别是对于教育试题库的试题来说,此类问题尤其严重,比如,化学学科中的水和H2O,虽然字面不是重复的,但是对应表达的语义却是一致的,对于这种情况,利用倒排索引的方式进行查重,是无法得到准确的查重结果的。
而在利用Simhash算法进行查重的过程中,首先是对试题库中的每一试题进行分词并计算其对应的哈希码(hashcode),然后在进行查重时,计算每道新题和试题库中所有试题的海明距离,因此,此类查重方法比较适用于长文本的查重。并且,也存在以下两个缺点:一是受限于Simhash算法本身仅能适用于长文本的查重,如新闻、博客等,而对于一道教学题目(如数学题或物理题)来说,其长度通常远小于新闻的长度,导致在查重精度上表现较差;二是该算法天然存在一些算法上的缺点,比如当对试题编码时遇到哈希值(hash)冲突时也不好解决,也会导致查重结果的准确性较低。
为解决上述缺陷,本申请实施例提供了一种试题查重方法,首先,获取待查重的目标试题的隐向量;其中,隐向量用于表征目标试题的语义信息,然后,利用预先构建的试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合;接着,根据初选重复试题集合中的试题与目标试题的相似度,从初选重复试题集合中确定目标试题对应的重复试题。可见,由于本申请实施例是基于表征试题语义信息的隐向量进行查重,即使在试题部分文档进行更新时,也能够支持试题的查重,并且也能够提高查重结果的准确性。同时,利用试题查重模型(如根据试题库中试题的隐向量构建的HNSW模型)进行查重,还能够进一步提高试题查重速度和效率,得到准确性更高的试题查重结果。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
第一实施例
参见图1,为本实施例提供的一种试题查重方法的流程示意图,该方法包括以下步骤:
S101:获取待查重的目标试题的隐向量;其中,隐向量用于表征目标试题的语义信息。
在本实施例中,将采用本实施例实现查重的任一试题定义为目标试题。并且,本实施例不限制目标试题所属的语种,比如,目标试题可以是中文试题或英文试题等;本实施例也不限制目标试题的长度,比如,目标试题可以是句子试题、也可以是篇章试题;本实施例也不限制目标试题的领域,比如,目标试题可以是数学题或化学题等;本实施例也不限制目标试题的类型,比如,目标试题可以是选择题或填空题等。
为了能够更加快速且准确地查询出目标试题对应的重复试题。在获取待查重的目标试题后,进一步可以对目标试题进行数据处理,将其编码成一个表征目标试题的语义信息的多维空间向量,此处将其定义为目标试题的隐向量。
举例说明:假设目标试题为函数f(x)=ax+b,则在对其进行数据处理后,可将其编码成一个表征其语义信息的n维隐向量α。又假设目标试题为函数g(x)=ax+b,则在对其进行数据处理后,可将其编码成一个表征其语义信息的n维隐向量β。并且由于函数f(x)=ax+b和函数g(x)=ax+b表征的语义信息是一致的,所以隐向量α和隐向量β之间的相似度也是非常高,接近于同一隐向量。
在本实施例的一种可能的实现方式中,本步骤S101中的“获取待查重的目标试题的隐向量”的具体实现过程可以包括下述步骤A1-A3:
步骤A1:获取待查重的目标试题,并对所述目标试题进行预处理,得到预处理后的目标试题。
在本实现方式中,在获取到的待查重的目标试题后,为了提高查重速率和准确率,首先需要对目标试题进行预处理,去除目标试题的无效词汇,得到预处理后的目标试题,用以执行后续步骤A2。
具体来讲,首先,需要对目标试题的原始文本进行超文本标记语言(Hyper TextMarkup Language,简称HTML)无效标签的过滤,例如,由于<div>、<p>等HTML标签对试题文本查重没有额外的信息,所以还可以在查重之前将这类标签过滤掉;其次,需要利用无效词构建停用词表,用以对目标试题中的无效词汇进行过滤,其中,无效词指的是“以下”、“的”等无实际意义的常用词;最后,需要将目标试题中的公式和专业词汇进行归一化处理,例如,对于X2,既可以将其写成X<sup>2的HTML形式的表达,也可以将其写成X^{2}的latex形式的表达,因此,为提高查重准确率,需要将目标试题中的类似文本进行归一化处理。
步骤A2:对预处理后的目标试题进行分词,得到分词后的目标试题。
在本实现方式中,通过步骤A1得到预处理后的目标试题后,进一步可以利用现有或未来出现的分词方法,对预处理后的目标试题进行分词处理,如可以采用如下分词过程:首先构建有向无环图,然后采用动态规划查找最大概率路径,接着,再找出基于词频的最大切分组合,对目标试题进行分词处理,得到分词后的目标试题,用以执行后续步骤A3。
需要说明的是,为了进一步提高查重结果的准确性,本实施例所使用的分词的扩展词典,更多的涉及到了教育领域的专业术语。因此,本实施例需要先提取出每个学科(如数学、化学、物理学等)的学科词典,再将这些学科词典和现有的通用开源词典融合起来,作为分词所依据的扩展词典。
其中,本申请构建每个学科(如数学、化学、物理学等)的学科词典的步骤包括:首先,使用N元语法的语言模型(N-gram),统计出同一学科中所有相邻的字同时出现的次数,然后,基于这些统计的次数,由人工进行二次校验,过滤掉无效的词语,得到特定的专业词汇并构成学科词典。
举例说明:在物理学科中,可以使用3元语法的语言模型(3-gram),统计出该学科中所有相邻的3个字同时出现的次数,当统计出“加速度”这三个字同时出现的频率相对于其他学科要高出很多,再经由人工判断可知,“加速度”属于物理学科中特定的专业词汇,可用于构建物理学科对应的学科词典。
还需要说明的是,在构建每个学科(如数学、化学、物理学等)的学科词典时,不同于对普通文本的处理方式,由于每个学科都有不同学科特性的专业词语,针对此类特殊的学科背景,本申请在构建科词典时,在利用传统的N-gram进行分词的基础上,还提出以下两个构建规则,用以提高学科词典的构建速率。
(1)利用N-gram对非字符级的文本分词的规则
可以理解的是,在类似数学学科的科目中,试题中通常会包含中大量的非字符级的文本(如数字),如果仍利用传统的N-gram进行分词,将得到很多诸如“1、75,368”等的无效词,这些词对于构建数学学科的学科词典是无意义的。因此,需要将此类无意义的数字等词进行提前规约处理,如,可以基于正则的方式,将所有的数字规约成“NUM”的占位符进行表示。同理,对于诸如“f(x)”、“g(x)”等表示函数的字符串,也可以利用“FUN”这样的占位符来表示。
(2)利用N-gram对字符级的文本分词的规则
可以理解的是,在类似化学学科的科目中,大部分是化学表达式的题目,例如,NaOH、CO等。因此,对于化学学科,可以使用字符集语言模型N-gram,提取化学学科中的关键词作为专业词汇,用以构建化学学科对应的学科词典。
可见,对于不同的学科,可能存在不同的构建学科词典的方式,实际构建过程中,可以根据具体的学科属性来选择合适的构建方式。
步骤A3:利用深度学习网络对分词后的目标试题进行编码,以确定出分词后的目标试题的隐向量,作为目标试题的隐向量。
需要说明的是,由于传统的文档编码是通过一种无监督的方式,即,先使用word2vec的技术对单个词进行向量化,然后再将一个文档中的每个词对应的向量加权平均得到相应的文档向量的表示,导致这种方式存在两个缺点:一是无监督任务需要大量的学习样本,而大部分场景下是没有那么多学习样本的,从而导致编码结果不准确;二是相对于有监督的方式来说,无监督任务学习的语义信息更弱,不利于对试题进行编码处理来得到表征其语义信息的向量。
因此,为了能够更充分的表达试题的语义信息,可以把相同的题目或者相似的题目的试题映射到一个高维空间中并利用近似的多维向量进行表示,用以对目标试题进行查重。
具体来讲,在本实现方式中,在通过步骤A2得到分词后的目标试题后,进一步可以使用有监督的方式,利用多任务学习的方式,利用深度学习网络预测出目标试题的知识点、考点、题型等各类信息的表征向量,并使得该深度学习网络能够学习到试题与其各类信息之间对应的关系,具体实现原理图如图2所示。
在图2中,X表示通过步骤A2得到的分词后的目标试题的文本,f(0)表示word2vec算法;D表示在预测目标试题的知识点、考点、题型等各类信息时所采用的共享深度学习网络,具体网络结构可根据实际情况进行设定,本申请实施例对此不进行限定,如可以采用文本分类模型textCNN网络等;f(1)、f(2)、…、f(n)分别表示n个不同全连接网络,用以分类输出表征目标试题的知识点、考点、题型等各类信息的隐向量z1、z2、…、zn;y1、y2、…、yn分别表示隐向量z1、z2、…、zn在经过softmax函数后对目标试题的知识点、考点、题型等各类不同信息的表征向量的预测结果。
其中,需要说明的是,由于在利用深度学习网络对分词后的目标试题进行处理后得到z1、z2、…、zn分别包含了目标试题的题目信息和题目的不同类型属性(如知识点、考点、题型)的标签信息;因此,在将z1、z2…、zn进行加权求和处理后,可以得到表征目标试题的语义信息的隐向量。如经过将z1、z2…、zn求平均来计算目标试题的隐向量的公式如下:
其中,e表示目标试题的隐向量;zi表示由第i个全连接网络输出的表征目标试题的第i类信息的隐向量。而且,需要说明的是,z1、z2、…、zi、…、zn的维度是一致的,均是根据实际情况进行预先设定的,如可以均设定为128维等,具体维数本申请实施例不进行限定。
举例说明:如图2所示,假设z2为表示由第2个全连接网络输出的表征目标试题的题型的128维的隐向量,又假设题型的种类为四种,则y2的维度为4维,由此,在编码过程中,需要将128维的z2经过softmax函数后转换成表征目标试题的题型的4维概率向量y2,其中,y2中的每维向量值代表了每一类题型对应的概率值,该概率值表征了目标试题属于该题型的可能性,概率值越大,表明目标试题属于对应题型的可能性越高,反之,则表明目标试题属于对应题型的可能性越低。
S102:利用预先构建的试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合。
在本实施例中,为了能够从试题库中快速且准确地查询出目标试题对应的重复试题,预先根据试题库中各个试题的隐向量构建了HNSW(Hierarchcal Navigable SmallWorld graphs)模型,作为试题查重模型,相对于传统的倒排索引,该模型能够极大的提升试题检索效率。该试题查重模型的具体构建过程与现有的HNSW模型构建过程一致,在此不再赘述。其中,各个试题的隐向量的获取方式可参照上述步骤A1-A3的介绍,仅是将其中的目标试题依次替换为试题库中各个试题即可,详细获取过程在此不再赘述。
在此基础上,在通过步骤S101获取到待查重的目标试题的隐向量后,进一步可以预先构建的试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合。其中,预设初选条件指的是预先设置的试题库中能够作为组成初选重复试题集合的试题需要满足的条件,比如,可以按序依次从试题库中选择出与目标试题的隐向量之间的余弦相似度最高的前2道试题,组成初选重复试题集合;或者,也可以按序依次从试题库中选择出与目标试题的隐向量之间的余弦相似度均超过0.7的试题,组成初选重复试题集合等,具体的预设初选条件可根据实际情况进行设置,本申请实施例对比不进行限制。
但由于HNSW试题查重模型的每一层的搜索过程中,都需要进行大量的无效比较,因此,为了提高试题的搜索速度,可根据目标试题的题目长度,有选择的进行试题搜索,具体的,一种可选的实现方式是,本步骤S102“利用预先构建的试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合”的具体实现过程可以包括下述步骤B1-B2:
步骤B1:计算试题库中的试题与目标试题之间的题目长度的差值。
由于通常情况下相同的试题往往有相差不大的题目长度,因此,可以充分利用试题的文本长度信息来减少大量的无效检索及对比次数,也就是说,若两道试题的题目长度相差越大,则越应该是无效对比,可以将其忽略不计,即二者基本不可能是重复试题,无需进行对比。具体的,在本实现方式中,首先,计算试题库中的试题与目标试题之间的题目长度的差值,用以执行后续步骤B2。例如,假设目标试题的题目长度为l1,而试题库中的某道试题的题目长度为l2,则二者之间的差值即为|l1-l2|。
步骤B2:当差值满足预设条件时,利用预先构建的试题查重模型,根据目标试题的隐向量与试题的隐向量之间的相似度,确定试题是否为目标试题的初选重复试题;并将确定出的目标试题的所有初选重复试题组成集合。
在本实现方式中,通过步骤B1计算出试题库中的试题与目标试题之间的题目长度的差值后,进一步的,可以通过下述公式判断该差值是否满足预设条件,进而判断出是否需要将试题库中的该对应试题与目标试题进行对比,以确定其是否为目标试题的所有初选重复试题,具体判断公式如下:
其中,1和0分别表示需要将试题库中的对应试题与目标试题进行对比以及不需要将试题库中的对应试题与目标试题进行对比;l1和l2分别表示目标试题的题目的长度以及试题库中的对应试题题目的长度;a表示可将试题库中的对应试题与目标试题进行对比时,二者题目长度的最大出差值,且a的取值可根据实际情况和经验值来确定,本申请实施例对其具体取值进行限定,如可以将a取值为5等;b表示概率值,通过调整此概率值来控制是否需要将试题库中的对应试题与目标试题进行对比,具体的,可按照固定步长调整b的取值来尽可能少的从试题库中筛选出需要与目标试题进行对比的试题,进而提升模型的检索效率。
举例说明:假设目标试题的题目长度l1为10,试题库中的第i道试题的题目长度l2为12,a取值为5,b取值为0.7,则通过上述公式(2)可以判断出需要将目标试题与第i道试题进行对比,即,上述公式(2)中的是成立的,也就是/>是成立的,取值为1,表示需要将试题库中的第i道试题与目标试题进行对比。
进一步的,当判断出试题库中的试题与目标试题之间的题目长度的差值满足预设条件时,可以利用预先构建的试题查重模型,根据目标试题的隐向量与试题的隐向量之间的余弦相似度,确定出该试题是否为目标试题的初选重复试题。同理,采用相同的判断方式,可以从题库中确定出所有满足预设条件的目标试题的初选重复试题,组成初选重复试题集合,用以执行后续步骤S103。
S103:根据初选重复试题集合中的试题与目标试题的相似度,从初选重复试题集合中确定目标试题对应的重复试题。
在本实施例中,通过步骤S102得到目标试题的初选重复试题集合后,为了进一步提高查重结果的准确性,还需要进一步通过后续步骤C1-C3,计算出表征初选重复试题集合中的试题与目标试题之间的隐向量关联关系相似性和试题的各个结构组合(如选择题题面和选项的不同组合)关联关系相似性的深层次的语义相似度(即步骤C3中的“最终相似度”),而不仅是余弦相似度等浅层次的相似度,从而可以根据初选重复试题集合中的试题与目标试题之间的深层次的语义相似度,确定出目标试题对应的重复试题。比如,可以将初选重复试题集合中与目标试题之间的深层次的语义相似度最高的试题作为目标试题对应的重复试题等,或者,也可以将初选重复试题集合中与目标试题之间的深层次的语义相似度高于预设阈值(阈值的取值可根据实际情况进行设定,如设定0.8等)的试题均作为目标试题对应的重复试题等,具体判断方式可根据实际情况进行限定,本申请对此不进行限定。
在本实施例的一种可能的实现方式中,本步骤S103的实现过程具体可以包括下述步骤C1-C3:
步骤C1:计算初选重复试题集合中的每一试题与目标试题的隐向量之间的第一相似度。
由于对于试题文本,有相当一部分的题目信息所用的是关键词来表示的,例如,在物理学科中,文字词语“加速度”和字母“a”在同场景下表示的是同一个意思(即同一语义),但对于字母“a”来说,有时表示的是“加速度”,有时也可能表示的仅仅是一个普通的字符,因此,直接将“a”和“加速度”判定为同一关键词,可能会造成判定错误。又例如,在数学学科中,函数“f(x)=x+2”和函数“g(x)=x+2”实则表达的是同一个函数,即,表征的语义信息是一致的,而这类不可穷举的示例也是不可能直接通过文本规约器来实现的。
因此,本申请实施例提出采用端到端的逐对训练计算两道试题相似度的模型,其中,两道试题相似度指的是两道试题表达相同含义的概率。具体训练过程与现有过程一致,在此不再赘述。然后,再利用该模型计算初出选重复试题集合中的每一试题与目标试题的隐向量关联关系之间的相似度,此处将其定义为第一相似度,用以通过执行后续步骤C3,构成对应试题与目标试题之间的语义相似度(即步骤C3中的“最终相似度”)。
具体来讲,可先将目标试题与初选重复试题集合中的某一道试题分别定义为X1和X2,然后可通过如图3的左侧图所示的计算过程,计算出二者隐向量之间的第一相似度,用以表征二者隐向量关联关系的相似性。具体的,首先将X1和X2的分别通过TextCNN编码器,获得X1的隐向量h1和X2的隐向量h2,图3中的W表示对X1和X2进行编码的TextCNN模型共享的参数矩阵。然后,通过向量的融合操作,计算h1和h2之差(即|h1-h2|)以及将h1和h2进行点乘(即h1*h2)后,再与h1和h2进行拼接,得到拼接后的向量[h1,h2,|h1-h2|,h1*h2]。接着,再将拼接后的向量[h1,h2,|h1-h2|,h1*h2]输入全连接层后通过sigmoid函数确定出第一相似度s1。
步骤C2:计算初选重复试题集合中的每一试题与目标试题的结构组合之间的第二相似度。
由于在诸如化学学科中,通常情况下会有诸多化学式和化学名称表示的是同一含义,需要通过预设的规则对这些专业词汇进行归一化。例如,“NaOH”和“氢氧化钠”表示的统一含义,可以将二者归一化为“NaOH”;又例如,明矾和KAl(SO4)2·12H2O也具有相同的化学含义。也需要将二者进行归一化处理。因此,在计算初选重复试题集合中的每一试题与目标试题的之间的相似度时,可以先将二者中的词语进行归一化处理,如可以利用预先整合出的各个学科的归一化词典,对初选重复试题集合中的每一试题与目标试题进行归一化处理等。
然后,在此基础上,再考虑到目标试题和初选重复试题集合中的每一试题的不同结构的多种情况,其中,试题结构指的是组成试题的各个组成部分。比如,对于由一个问题和一个答案组成的一道问答型的试题,其对应的试题结构就是一个问题和一个答案;或者,对于由一个问题和4个选项组成的一道选择型的试题,其对应的试题结构就是一个问题和4个选项。而目标试题和初选重复试题集合中的每一试题的不同结构的多种情况指的是目标试题和初选重复试题集合中的每一试题中各个组成部分的不同排列组合情况。比如,当目标试题和初选重复试题集合中的试题均为选择题时,二者可能仅具有相同的选择题目,而选项顺序却是不同的;或者说,当目标试题和初选重复试题集合中的试题均为一道大题目,但二者对应的小题的顺序可能是不同的等。
对此,为了提高查重结果的准确性,本申请实施例需要计算出初选重复试题集合中的每一试题与目标试题的多种结构组合之间的相似度,并从中选择出最大相似度作为初选重复试题集合中对应试题与目标试题的结构组合之间的相似度,此处将其定义为第二相似度(表征了对应试题和目标试题的各个结构组合(如选择题题面和选项的不同组合)关联关系相似性),用以通过执行后续步骤C3,构成对应试题与目标试题之间的语义相似度(即步骤C3中的“最终相似度”)。
具体来讲,以目标试题和初选重复试题集合中的某一道试题均为选择题为例,计算二者之间的第二相似度的公式如下:
SimScore1=Max{Sim1,Sim2,Sim3,...} (3)
其中,SimScore1表示目标试题与初选重复试题集合中的某一道试题的结构组合之间的第二相似度;Sim1表示目标试题的题面与初选重复试题集合中的某一道试题的题面之间的相似度,其中,题面指的是试题的题目(即标题,如选择题中的问题),题干指的是题面(即题目)的主干(即主要题意),而选择题的选项指的是选择题中问题的候选答案,从选项中可以选择出问题的答案;Sim2表示目标试题的题面与初选重复试题集合中的某一道试题的题面和选项的组合之间的相似度;Sim3表示目标试题的题面和选项的组合与初选重复试题集合中的某一道试题的题面之间相似度;依次类推,进而可以将这多种结构组合(即题面和选项的不同组合)中最大的相似度,作为目标试题与初选重复试题集合中的某一道试题的结构组合之间的第二相似度。
例如,仍可先将目标试题与初选重复试题集合中的某一道试题分别定义为X1和X2,然后可通过如图3的右侧图所示的计算过程,计算出二者之间的第二相似度,具体的,首先利用文本规约器将X1和X2中的词语进行归一化处理,然后利用上述公式(3)对X1和X2分别进行多结构组合的相似度计算,即,通过题面比较、选项比较等,确定出X1和X2的多种结构组合中最大的相似度s2(即上述公式(3)中的SimScore1),即第二相似度s2。
需要说明的是,一种可选的实现方式是,本步骤C2的实现过程具体可以包括:当目标试题不属于典型选择题时,计算初选重复试题集合中的每一试题的题面和选项,与目标试题的题面和选项的不同组合之间的相似度,并将其中最高的相似度作为第二相似度;其中,典型选择题指的是题面中包含能够明显表征出其为选择题的经典表述的试题。例如,对于题面中包含“下列说法正确的是()”这样能够明显表征出其为选择题的经典表述的试题,就可以称为典型选择题。
或者,当目标试题属于典型选择题时,计算初选重复试题集合中的每一试题的题干与目标试题的题干之间的相似度,以及计算初选重复试题集合中的每一试题的选项与目标试题的选项之间的相似度,并将其中最低的相似度作为第二相似度。
具体来讲,在本实现方式中,当目标试题属于典型选择题时,如果仍是按照上述计算第二相似度的方式,直接选取相似度最大的试题是不准确的,这是因为典型的选择题的题面通常是“下列说法正确的是()”这样的典型描述,如果仍是按照上述计算第二相似度的方式,直接选取相似度最大的试题是不准确的,将选择出很多题面相同的典型选择题都是重复试题,这显然是错误的查重结果。对此,本申请实施例采用的方式是,预先构建一个“易错题库”,其中包含类似上述题面是“下列说法正确的是()”的典型选择题等易错题,即,通过上述公式(3)无法确定的重复试题的易错试题,用以在计算第二相似度的过程中做后处理操作。即,若上述通过上述公式(3)从初选重复试题集合中的确定的试题和目标试题都符合此“易错题库”中的易错题类型(如都属于题面是“下列说法正确的是()”的典型选择题),则需要进一步计算从初选重复试题集合中的确定的试题的题干和目标试题的题干之间的相似度,以及计算初选重复试题集合中的每一试题的选项与目标试题的选项之间的相似度,并将其中最低的相似度作为第二相似度,具体计算公式如下:
SimScore2=Min{Sim题干,Sim选项} (4)
其中,SimScore2表示目标试题与初选重复试题集合中的对应试题之间的第二相似度;Sim题干表示目标试题的题干与初选重复试题集合中的对应试题的题干之间的相似度;Sim选项表示目标试题的选项与初选重复试题集合中的对应试题的选项之间的相似度。
步骤C3:根据第一相似度和第二相似度,从初选重复试题集合中确定目标试题对应的重复试题。
在通过上述步骤C1和C2分别确定出第一相似度和第二相似度后,进一步可以按照预设规则,对二者进行处理,以根据处理结果,从初选重复试题集合中确定目标试题对应的重复试题。其中,预设规则可根据实际情况设定,本申请实施例对此不进行限定,比如,预设规则可以对初选重复试题集合中同一试题的第一相似度和第二相似度进行加权求和,然后可以将得到的加权求和结果作为该试题与目标试题之间的最终相似度,进而可以根据初选重复试题集合中每一试题各自与目标试题之间的最终相似度,最终确定出目标试题对应的重复试题。
比如,可以从试题库中选择出与目标试题之间的最终相似度最高的试题,作为目标试题对应的重复试题;或者,可以按序依次从试题库中选择出与目标试题之间的最终相似度最高的前2道试题,都作为目标试题对应的重复试题;或者,也可按序依次从试题库中选择出与目标试题之间的最终相似度均超过0.8的试题,都作为目标试题对应的重复试题等,具体的选择方式可根据实际情况进行设置,本申请实施例对比不进行限制。
进一步的,在确定出目标试题对应的重复试题后,一种可选的实现方式是,可以从试题库中删除目标试题对应的重复试题,用以更新该试题库,然后,再重新提取新一道待查重的目标试题,并用以重复执行上述步骤S101-S103,直到试题库中所有试题均进行了查重处理后,即可实现对整个试题库的试题质量的提升,进而降低了试题库维护成本,也减少了用户使用试题库查询试题的时间,即,既能使得用户快速从试题库中找到符合其需求的相似试题,也避免了查询出重复的试题,从而提高了用户的学习效率,进而提高了用户体验。
综上,本实施例提供的一种试题查重方法,首先,获取待查重的目标试题的隐向量;其中,隐向量用于表征目标试题的语义信息,然后,利用预先构建的试题查重模型,根据目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成目标试题的初选重复试题集合;接着,根据初选重复试题集合中的试题与目标试题的相似度,从初选重复试题集合中确定目标试题对应的重复试题。可见,由于本申请实施例是基于表征试题语义信息的隐向量进行查重,即使在试题部分文档进行更新时,也能够支持试题的查重,并且也能够提高查重结果的准确性。同时,利用试题查重模型(如根据试题库中试题的隐向量构建的HNSW模型)进行查重,还能够进一步提高试题查重速度和效率,得到准确性更高的试题查重结果。
第二实施例
本实施例将对一种试题查重装置进行介绍,相关内容请参见上述方法实施例。
参见图4,为本实施例提供的一种试题查重装置的组成示意图,该装置400包括:
获取单元401,用于获取待查重的目标试题的隐向量;所述隐向量用于表征所述目标试题的语义信息;
选取单元402,用于利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合;
确定单元403,用于根据所述初选重复试题集合中的试题与所述目标试题的相似度;从所述初选重复试题集合中确定所述目标试题对应的重复试题。
在本实施例的一种实现方式中,所述获取单元401包括:
获取子单元,用于获取待查重的目标试题,并对所述目标试题进行预处理,得到预处理后的目标试题;
分词子单元,用于对所述预处理后的目标试题进行分词,得到分词后的目标试题;
编码子单元,用于利用深度学习网络对所述分词后的目标试题进行编码,以确定出所述分词后的目标试题的隐向量,作为所述目标试题的隐向量。
在本实施例的一种实现方式中,所述选取单元402包括:
第一计算子单元,用于计算所述试题库中的试题与所述目标试题之间的题目长度的差值;
选取子单元,用于当所述差值满足预设条件时,利用预先构建的试题查重模型,根据所述目标试题的隐向量与所述试题的隐向量之间的相似度,确定所述试题是否为所述目标试题的初选重复试题;并将确定出的所述目标试题的所有初选重复试题组成集合。
在本实施例的一种实现方式中,所述确定单元403包括:
第二计算子单元,用于计算所述初选重复试题集合中的每一试题与所述目标试题的隐向量之间的第一相似度;
第三计算子单元,用于计算所述初选重复试题集合中的每一试题与所述目标试题的结构组合之间的第二相似度;
确定子单元,用于根据所述第一相似度和所述第二相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题。
在本实施例的一种实现方式中,所述第三计算子单元具体用于:
当所述目标试题不属于典型选择题时,计算所述初选重复试题集合中的每一试题的题面和选项,与所述目标试题的题面和选项的不同组合之间的相似度,并将其中最高的相似度作为第二相似度;
或者,当所述目标试题属于典型选择题时,计算所述初选重复试题集合中的每一试题的题干与所述目标试题的题干之间的相似度,以及计算所述初选重复试题集合中的每一试题的选项与所述目标试题的选项之间的相似度,并将其中最低的相似度作为第二相似度。
在本实施例的一种实现方式中,所述装置还包括:
删除单元,用于从所述试题库中删除所述目标试题对应的重复试题。
进一步地,本申请实施例还提供了一种试题查重设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述试题查重方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述试题查重方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述试题查重方法的任一种实现方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种试题查重方法,其特征在于,包括:
获取待查重的目标试题的隐向量;所述隐向量用于表征所述目标试题的语义信息;所述隐向量是对所述目标试题进行分词及编码得到的;
利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合;根据所述初选重复试题集合中的试题与所述目标试题的相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题;
其中,所述利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合,包括:
计算所述试题库中的试题与所述目标试题之间的题目长度的差值;
当所述差值满足预设条件时,利用预先构建的试题查重模型,根据所述目标试题的隐向量与所述试题的隐向量之间的相似度,确定所述试题是否为所述目标试题的初选重复试题;并将确定出的所述目标试题的所有初选重复试题组成集合。
2.根据权利要求1所述的方法,其特征在于,所述获取待查重的目标试题的隐向量,包括:
获取待查重的目标试题,并对所述目标试题进行预处理,得到预处理后的目标试题;
对所述预处理后的目标试题进行分词,得到分词后的目标试题;
利用深度学习网络对所述分词后的目标试题进行编码,以确定出所述分词后的目标试题的隐向量,作为所述目标试题的隐向量。
3.根据权利要求1所述的方法,其特征在于,所述根据所述初选重复试题集合中的试题与所述目标试题的相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题,包括:
计算所述初选重复试题集合中的每一试题与所述目标试题的隐向量之间的第一相似度;
计算所述初选重复试题集合中的每一试题与所述目标试题的结构组合之间的第二相似度;
根据所述第一相似度和所述第二相似度,从所述初选重复试题集合中确定所述目标试题对应的重复试题。
4.根据权利要求3所述的方法,其特征在于,所述计算所述初选重复试题集合中的每一试题与所述目标试题的结构组合之间的第二相似度,包括:
当所述目标试题不属于典型选择题时,计算所述初选重复试题集合中的每一试题的题面和选项,与所述目标试题的题面和选项的不同组合之间的相似度,并将其中最高的相似度作为第二相似度;
或者,当所述目标试题属于典型选择题时,计算所述初选重复试题集合中的每一试题的题干与所述目标试题的题干之间的相似度,以及计算所述初选重复试题集合中的每一试题的选项与所述目标试题的选项之间的相似度,并将其中最低的相似度作为第二相似度。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
从所述试题库中删除所述目标试题对应的重复试题。
6.一种试题查重装置,其特征在于,包括:
获取单元,用于获取待查重的目标试题的隐向量;所述隐向量用于表征所述目标试题的语义信息;所述隐向量是对所述目标试题进行分词及编码得到的;
选取单元,用于利用预先构建的试题查重模型,根据所述目标试题的隐向量,从试题库中选取满足预设初选条件的试题,组成所述目标试题的初选重复试题集合;
确定单元,用于根据所述初选重复试题集合中的试题与所述目标试题的相似度;从所述初选重复试题集合中确定所述目标试题对应的重复试题;
所述选取单元包括:
第一计算子单元,用于计算所述试题库中的试题与所述目标试题之间的题目长度的差值;
选取子单元,用于当所述差值满足预设条件时,利用预先构建的试题查重模型,根据所述目标试题的隐向量与所述试题的隐向量之间的相似度,确定所述试题是否为所述目标试题的初选重复试题;并将确定出的所述目标试题的所有初选重复试题组成集合。
7.一种试题查重设备,其特征在于,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-5任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110319525.1A CN113051886B (zh) | 2021-03-25 | 2021-03-25 | 一种试题查重方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110319525.1A CN113051886B (zh) | 2021-03-25 | 2021-03-25 | 一种试题查重方法、装置、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113051886A CN113051886A (zh) | 2021-06-29 |
CN113051886B true CN113051886B (zh) | 2023-12-01 |
Family
ID=76515174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110319525.1A Active CN113051886B (zh) | 2021-03-25 | 2021-03-25 | 一种试题查重方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113051886B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373594A (zh) * | 2015-10-23 | 2016-03-02 | 广东小天才科技有限公司 | 一种筛查题库中重复试题的方法及装置 |
WO2016179938A1 (zh) * | 2015-05-14 | 2016-11-17 | 百度在线网络技术(北京)有限公司 | 题目推荐方法和题目推荐装置 |
CN106326417A (zh) * | 2016-08-24 | 2017-01-11 | 冯玉国 | 一种试题数据处理方法及系统 |
CN107977347A (zh) * | 2017-12-04 | 2018-05-01 | 海南云江科技有限公司 | 一种题目去重方法和计算设备 |
CN109086313A (zh) * | 2018-06-27 | 2018-12-25 | 马赫 | 一种基于逆文本相似度进行试题命制排重方法 |
CN111241239A (zh) * | 2020-01-07 | 2020-06-05 | 科大讯飞股份有限公司 | 重题检测方法、相关设备及可读存储介质 |
-
2021
- 2021-03-25 CN CN202110319525.1A patent/CN113051886B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016179938A1 (zh) * | 2015-05-14 | 2016-11-17 | 百度在线网络技术(北京)有限公司 | 题目推荐方法和题目推荐装置 |
CN105373594A (zh) * | 2015-10-23 | 2016-03-02 | 广东小天才科技有限公司 | 一种筛查题库中重复试题的方法及装置 |
CN106326417A (zh) * | 2016-08-24 | 2017-01-11 | 冯玉国 | 一种试题数据处理方法及系统 |
CN107977347A (zh) * | 2017-12-04 | 2018-05-01 | 海南云江科技有限公司 | 一种题目去重方法和计算设备 |
CN109086313A (zh) * | 2018-06-27 | 2018-12-25 | 马赫 | 一种基于逆文本相似度进行试题命制排重方法 |
CN111241239A (zh) * | 2020-01-07 | 2020-06-05 | 科大讯飞股份有限公司 | 重题检测方法、相关设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
Simhash算法在试题查重中的应用;冉崇善等;《软件导刊》;第17卷(第2期);151-154 * |
Also Published As
Publication number | Publication date |
---|---|
CN113051886A (zh) | 2021-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230100376A1 (en) | Text sentence processing method and apparatus, computer device, and storage medium | |
WO2023065544A1 (zh) | 意图分类方法、装置、电子设备及计算机可读存储介质 | |
CN108984526B (zh) | 一种基于深度学习的文档主题向量抽取方法 | |
CN111738003B (zh) | 命名实体识别模型训练方法、命名实体识别方法和介质 | |
CN111738004A (zh) | 一种命名实体识别模型的训练方法及命名实体识别的方法 | |
CN111931506B (zh) | 一种基于图信息增强的实体关系抽取方法 | |
CN111310471A (zh) | 一种基于bblc模型的旅游命名实体识别方法 | |
CN113392209B (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN113591483A (zh) | 一种基于序列标注的文档级事件论元抽取方法 | |
CN112052684A (zh) | 电力计量的命名实体识别方法、装置、设备和存储介质 | |
CN114896388A (zh) | 一种基于混合注意力的层级多标签文本分类方法 | |
CN115081437B (zh) | 基于语言学特征对比学习的机器生成文本检测方法及系统 | |
CN110276396B (zh) | 基于物体显著性和跨模态融合特征的图片描述生成方法 | |
CN113255320A (zh) | 基于句法树和图注意力机制的实体关系抽取方法及装置 | |
CN111563143A (zh) | 一种新词的确定方法及装置 | |
CN113673254A (zh) | 基于相似度保持的知识蒸馏的立场检测方法 | |
CN115759119B (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
CN110263343A (zh) | 基于短语向量的关键词抽取方法及系统 | |
CN113515632A (zh) | 基于图路径知识萃取的文本分类方法 | |
CN116383399A (zh) | 一种事件舆情风险预测方法及系统 | |
CN114676346A (zh) | 新闻事件处理方法、装置、计算机设备和存储介质 | |
CN113806528A (zh) | 一种基于bert模型的话题检测方法、设备及存储介质 | |
CN113486143A (zh) | 一种基于多层级文本表示及模型融合的用户画像生成方法 | |
CN116415593B (zh) | 一种研究前沿识别方法、系统、电子设备及存储介质 | |
CN113051886B (zh) | 一种试题查重方法、装置、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |