CN115905500B - 问答对数据的生成方法及装置 - Google Patents
问答对数据的生成方法及装置 Download PDFInfo
- Publication number
- CN115905500B CN115905500B CN202310072288.2A CN202310072288A CN115905500B CN 115905500 B CN115905500 B CN 115905500B CN 202310072288 A CN202310072288 A CN 202310072288A CN 115905500 B CN115905500 B CN 115905500B
- Authority
- CN
- China
- Prior art keywords
- answer
- question
- sample
- data
- text
- 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
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明提供一种问答对数据的生成方法及装置,涉及计算机技术领域。其中,该方法包括:对第一文本进行答案抽取,获取第一答案;基于第一答案和第一文本,生成第一问题以及包括第一答案和第一问题的候选问答对数据;将第一文本和第一问题输入训练好的过滤器模型,获取第二答案;基于第一答案和第二答案,处理候选问答对数据。本发明提供的问答对数据的生成方法及装置,通过抽取第一文本中的第一答案,根据第一答案和第一文本生成第一答案对应的第一问题,根据第一文本和第一问题生成第一问题对应的第二答案,通过同一第一问题对应的第二答案对该第一问题对应的第一答案的修正,能得到质量更高的问答对数据。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种问答对数据的生成方法及装置。
背景技术
问答对数据的生成主要包括三个下游任务:答案抽取任务、问题生成任务和自然语言理解任务。
答案抽取任务一般采用命名实体识别的方法,或者基于BERT(来自变换器的双向编码器表征量,Bidirectional Encoder Representations from Transformers)模型根据输入的文本,预测可能的答案在文本中的头、尾位置。
对于问题生成任务,针对中文文本常可以采用ERNIE(文心)等预训练模型并结合提示学习的方法;针对英文等文本常可以采用T5等大规模预训练语言模型。
自然语言理解任务可以分为很多子任务,问答对数据的生成中一般为在文本中根据问题找到相应的答案的位置。通常可以基于BERT, RoBERTa或XLNet等模型实现。
但现有问答对数据的生成方法生成的答案一般比较短和直接,不利于生成比较复杂以及更有价值的问题对。因此,现有问答对数据的生成方法存在生成的问答对数据的质量较差的不足。
发明内容
本发明提供一种问答对数据的生成方法及装置,用以解决现有技术中生成的问答对数据的质量较差的缺陷,实现生成更高质量的问答对数据。
本发明提供一种问答对数据的生成方法,包括:
对第一文本进行答案抽取,获取第一答案;
基于所述第一答案和所述第一文本,生成第一问题以及包括所述第一答案和所述第一问题的候选问答对数据;
将所述第一文本和所述第一问题输入训练好的过滤器模型,获取第二答案;
基于所述第一答案和所述第二答案,处理所述候选问答对数据。
根据本发明提供的一种问答对数据的生成方法,所述基于所述第一答案和所述第二答案,处理所述候选问答对数据,包括:
在所述第一答案和所述第二答案的交集不为空集的情况下,将所述问答对数据中的所述第一答案,更新为所述第一答案和所述第二答案的并集。
根据本发明提供的一种问答对数据的生成方法,所述基于所述第一答案和所述第二答案,处理所述候选问答对数据,还包括:
在所述第一答案和所述第二答案的交集为空集的情况下,丢弃所述候选问答对数据。
根据本发明提供的一种问答对数据的生成方法,所述对第一文本进行答案抽取,获取第一答案,包括:
将所述第一文本输入答案生成器模型,获取第三答案,并对所述第一文本进行命名实体识别,获取所述第一文本中的命名实体;
基于所述第一文本中的命名实体处理所述第三答案,获取所述第一答案。
根据本发明提供的一种问答对数据的生成方法,所述基于所述第一文本中的命名实体处理所述第三答案,获取所述第一答案,包括:
在所述第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全所述第三答案中的命名实体;
在补全后的所述第三答案中的第一词语与所述第一文本中的第二词语的词性不同的情况下,将补全后的所述第三答案确定为所述第一答案;
其中,所述第一词语为补全后的所述第三答案中的最后一个词语;所述第二词语为所述第一文本中所述第一词语之后的第一个词语。
根据本发明提供的一种问答对数据的生成方法,所述在所述第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全所述第三答案中的命名实体之后,还包括:
在所述第一词语与所述第二词语的词性相同的情况下,将所述第二词语添加至补全后的所述第三答案中,得到所述第一答案。
根据本发明提供的一种问答对数据的生成方法,所述将所述第一文本和所述第一问题输入训练好的过滤器模型,获取第二答案之前,还包括:
将样本文本数据分为N份样本数据;
对第i份所述样本数据,执行以下处理:
对所述样本数据进行答案抽取,获取第一样本答案;
基于所述第一样本答案和第i份所述样本数据,生成第一样本问题以及包括所述第一样本答案和所述第一样本问题的样本问答对数据;
将第i份所述样本数据和所述第一样本问题输入过滤器模型,获取第二样本答案;
在所述第一样本答案和所述第二样本答案的交集不为空集的情况下,将所述样本问答对数据中的所述第一样本答案,更新为所述第一样本答案和所述第二样本答案的并集;
基于第i份所述样本数据和更新后的所述样本问答对数据,更新所述过滤器模型;
其中,N为正整数;i为正整数,1≤i≤N;更新后的所述过滤器模型,用于处理第(i+1)份所述样本数据。
本发明还提供一种问答对数据的生成装置,包括:
抽取模块,用于对第一文本进行答案抽取,获取第一答案;
生成模块,用于基于所述第一答案和所述第一文本,生成第一问题以及包括所述第一答案和所述第一问题的候选问答对数据;
获取模块,用于将所述第一文本和所述第一问题输入训练好的过滤器模型,获取第二答案;
处理模块,用于基于所述第一答案和所述第二答案,处理所述候选问答对数据。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述问答对数据的生成方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述问答对数据的生成方法的步骤。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述问答对数据的生成方法的步骤。
本发明提供的问答对数据的生成方法及装置,通过抽取第一文本中的第一答案,根据第一答案和第一文本生成第一答案对应的第一问题,根据第一文本和第一问题生成第一问题对应的第二答案,基于同一第一问题对应的第一答案和第二答案,获取问答对中该第一问题对应的最终答案,通过同一第一问题对应的第二答案对该第一问题对应的第一答案的修正,能得到质量更高的问答对数据。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的问答对数据的生成方法的流程示意图;
图2是本发明提供的问答对数据的生成方法中过滤器模型的训练过程示意图;
图3是本发明提供的问答对数据的生成装置的结构示意图;
图4是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1至图4描述本发明的问答对数据的生成方法及装置。
图1是本发明提供的问答对数据的生成方法的流程示意图之一。如图1所示,本发明实施例提供的问答对数据的生成方法的执行主体可以为问答对数据的生成装置,该方法包括:步骤101、步骤102、步骤103和步骤104。
步骤101、对第一文本进行答案抽取,获取第一答案。
具体地,可以采用任一种答案抽取方法,根据输入的第一文本,自动生成适合的答案。上述生成的答案,为第一答案。第一答案的数量可以为一个或多个。
可选地,上述答案抽取方法,可以包括命名实体识别的方法和基于预训练语言模型的答案抽取方法中的至少一种。
可选地,上述预训练语言模型可以包括但不限于BERT模型或者BERT-wwm模型等。
可选地,可以基于自然语言理解数据集,对上述预训练语言模型进行训练,得到用于进行的答案抽取的答案生成器模型。
可选地,上述自然语言理解数据集可以包括但不限于SquaD或CMRC2018等。
可选地,可以基于上述自然语言理解数据集,形成文本-答案的第一数据对作为第一训练数据。第一训练数据,可以用于得到训练好的答案生成器模型。
可选地,答案生成器模型可以对第一训练数据中的文本进行以下处理:在文本编码后经过模型后将最后一层参数连接到一个线性的二分类判别器,0代表该字符将不作为答案,1代表该字符将作为答案,将真实作为答案的位置相同处理并取交叉熵作为损失函数,使用Adam优化算法进行神经网络的反向传播学习。可以理解的是,损失函数可以根据实际需要选择,不限于交叉熵。可以理解的是,优化算法可以根据实际需要选择,不限于Adam优化算法。可以理解的是,神经网络的学习方式可以根据实际需要选择,不限于反向传播学习。
可选地,训练好的答案生成器模型可以先利用测试集进行测试。可以将测试集中的测试数据输入该答案生成器模型,并接入前述二分类判别器,抽取连续标记为1且数量大于或等于数量阈值的字符作为答案。
可以理解的是,连续标记为1且数量小于数量阈值的字符,表示答案过短,则丢弃,不作为答案。数量阈值可以根据实际需求预先确定。对于数量阈值的具体值,本发明实施例不进行具体限定。示例性地,数量阈值可以为3或5等。
可选地,可以将第一答案保存为列表,形成扩展答案列表。
步骤102、基于第一答案和第一文本,生成第一问题以及包括第一答案和第一问题的候选问答对数据。
可选地,可以基于第一文本和每一第一答案,根据任一种问题生成方法,生成该第一答案对应的第一问题。
可选地,上述问题生成方法,可以包括基于预训练语言模型的问题生成方法。
可选地,上述预训练语言模型可以包括但不限于ERNIE模型、Mengzi模型或T5模型等。
每一第一答案和该第一答案对应的第一问题,可以形成一个问题-答案对(简称“问答对”)。因此,候选问答对数据可以包括一个或多个问答对。候选问答对数据包括的问答对的数量,与步骤101中获得的第一答案的数量相同。
可选地,可以基于自然语言理解数据集,对上述预训练语言模型进行训练,得到用于进行的问题生成的问题生成器模型。
可选地,上述自然语言理解数据集可以包括但不限于SquaD或CMRC2018等。
可选地,可以基于上述自然语言理解数据集,形成文本-答案-问题的第二数据对作为第二训练数据。第二训练数据,可以用于得到训练好的问题生成器模型。可以将第二数据对中的文本和问题作为样本数据,将该第二数据对中的问题作为样本数据对应的标签,训练上述预训练语言模型,从而得到训练好的问题生成器模型。
可选地,可以基于每一第二数据对和通顺的自然语言模板,生成一个第二训练数据。通过该自然语言模板对预训练语言模型进行相应的提示学习,微调预训练语言模型生成大规模预训练语言模型。
可选地,自然语言模板可以如下所示:
‘文本:<具体文本1><s><标记的答案></s><剩余文本>,问题:<相关问题>’。
示例性地,根据“我爱北京XX乡”这个待训练语句,即第二数据对中的文本,通过上述一系列处理步骤,根据自然语言模板,生成如下第二训练数据:
“文本:我爱<s>北京XX乡</s>。问题:这句话中,我爱什么?”
可以将第一文本和每一第一答案,输入训练好的问题生成器模型,获得该问题生成器模型输出的该第一答案对应的第一问题。
步骤103、将第一文本和第一问题输入训练好的过滤器模型,获取第二答案。
具体地,过滤器模型,是用于实现自然语言理解的模型。该过滤器模型,是基于样本数据和样本数据对应的标签进行训练后得到的。
可选地,该过滤器模型,可以基于预训练语言模型进行进一步训练后得到。上述预训练语言模型,可以包括但不限于PERT(PRE-TRAINING BERT WITH PERMUTED LANGUAGEMODEL)模型、BERT模型、 RoBERTa模型或XLNet模型等。
可以将第一文本和每一第一问题输入训练好的过滤器模型,该过滤器模型对第一文本和该第一问题的进行自然语言理解处理,从第一文本中提取中该第一问题的答案,作为该第一问题对应的第二答案。
步骤104、基于第一答案和第二答案,处理候选问答对数据。
具体地,对于候选问答对数据中每一问答对,可以根据该问答对中的第一问题对应的第二答案,对该问答对中的第一答案进行修正,即可以通过对比该第一答案和该第二答案,确定是否保留或者重新处理该问答对。
可选地,根据该问答对中第一问题对应的第二答案,对该问答对中的第一答案进行修正,可以包括在该第二答案和该第一答案包括相同的词的情况下,将该问答对中的第一答案,修正为该第二答案和第一答案中字数较多的一个。
可选地,根据该问答对中第一问题对应的第二答案,对该问答对中的第一答案进行修正,可以包括在该第二答案和该第一答案包括相同的词的情况下,将该问答对中的第一答案,修正为合并该第二答案和该第一答案得到的新答案。
本发明实施例通过抽取第一文本中的第一答案,根据第一答案和第一文本生成第一答案对应的第一问题,根据第一文本和第一问题生成第一问题对应的第二答案,基于同一第一问题对应的第一答案和第二答案,获取问答对中该第一问题对应的最终答案,通过同一第一问题对应的第二答案对该第一问题对应的第一答案的修正,能得到质量更高的问答对数据。
基于上述任一实施例的内容,基于第一答案和第二答案,处理候选问答对数据,包括:在第一答案和第二答案的交集不为空集的情况下,将问答对数据中的第一答案,更新为第一答案和第二答案的并集。
具体地,对于每一候选问答对数据,可以获取该候选问答对数据中第一问题对应的第一答案和该第一问题对应的第二答案的交集。
该第一问题对应的第一答案和该第一问题的交集不为空集,说明该第一问题对应的第一答案和该第一问题对应的第二答案具有相关性。在交集不为空集的情况下,可以将该第一答案和该第二答案进行合并,即获取该第一答案和该第二答案的并集,作为该第一问题对应的最终答案,将包括该第一问题的问答对中的答案,由第一答案更新为该最终答案。
可以理解的是,交集不为空集的情况,包括该第一答案和该第二答案完全相同的情况。
可选地,获取该第一答案和该第二答案的并集,可以包括:取两答案在第一文本中起始点位置数值较小的作为新答案的起始点位置,取两答案在第一文本中结束点位置数值较大的作为新答案的结束点位置,形成新答案。起始点位置数值,可以用起始点位置是第一文本的第几个字表示;结束点位置数值,可以用结束点位置是第一文本的第几个字表示。
示例性地,第一文本为“山西省的省会是太原市”,第一问题为“山西省的省会是哪里”,第一问题对应的第一答案为“太原”,第一问题对应的第二答案为“太原市”;第一答案和第二答案的交集为“太原”,不为空集;第一答案在第一文本中起始点位置数值和结束点位置数值分别为8和9,第二答案在第一文本中起始点位置数值和结束点位置数值分别为8和10,因而该第一答案和该第二答案的并集的起始点位置数值和结束点位置数值分别为8和10,该第一答案和该第二答案的并集为“太原市”。
示例性地,第一文本为“W国最大的瀑布位于X省Y市Z县”,第一问题为“W国最大的瀑布位于哪里”,第一问题对应的第一答案为“X省Y市”,第一问题对应的第二答案为“Y市Z县”,第一答案在第一文本中起始点位置数值和结束点位置数值分别为10和13,第二答案在第一文本中起始点位置数值和结束点位置数值分别为12和15,因而该第一答案和该第二答案的并集的起始点位置数值和结束点位置数值分别为10和15,该第一答案和该第二答案的并集为“X省Y市Z县”。
本发明实施例通过在第一答案和第二答案的交集不为空集的情况下,将问答对数据中的第一答案,更新为第一答案和第二答案的并集,对问答对数据中的答案进行筛选和过滤,能提高问答对数据的生成质量。
基于上述任一实施例的内容,基于第一答案和第二答案,处理候选问答对数据,还包括:在第一答案和第二答案的交集为空集的情况下,丢弃候选问答对数据。
具体地,对于每一候选问答对数据,可以获取该候选问答对数据中第一问题对应的第一答案和该第一问题对应的第二答案的交集。该第一问题对应的第一答案和该第一问题的交集为空集,说明该第一问题对应的第一答案和该第一问题对应的第二答案完全没有相关性,可以丢弃该问答对候选问答对数据。
本发明实施例在第一答案和第二答案的交集为空集的情况下,丢弃候选问答对数据,对问答对数据中的答案进行筛选和过滤,能提高问答对数据的生成质量。
基于上述任一实施例的内容,对第一文本进行答案抽取,获取第一答案,包括:将第一文本输入答案生成器模型,获取第三答案,并对第一文本进行命名实体识别,获取第一文本中的命名实体。
具体地,可以将第一文本输入训练好的答案生成器模型,答案生成器模型对该第一文本进行编码,用0或1标记第一文本中的每个字(或字符),抽取连续标记为1且数量大于或等于数量阈值的字符作为第三答案。其中,0代表该字符将不作为答案,1代表该字符将作为答案。
可以理解的是,连续标记为1且数量小于数量阈值的字符,表示答案过短,则丢弃,不作为答案。数量阈值可以根据实际需求预先确定。对于数量阈值的具体值,本发明实施例不进行具体限定。示例性地,数量阈值可以为3或5等。
可以基于任一种命名实体识别的方法,识别出第一文本中的命名实体。对于具体采用的命名实体识别的方法,本发明实施例不进行具体限定。
基于第一文本中的命名实体处理第三答案,获取第一答案。
具体地,获取第三答案和第一文本中的命名实体之后,可以基于第一文本中的命名实体补全第三答案中的命名实体,获取第一答案。
示例性地,第一文本为“北京是中国的首都”,通过命名实体识别的方法,可以识别出[‘北京’,‘中国’,‘首都’]三个命名实体。在答案生成器模型抽取的第三答案为“国的首”的情况下,可以自动将“国的首”中不完整的命名实体补全,得到第一答案为“中国的首都”。
本发明实施例通过将命名实体识别的方法和基于预训练语言模型的方法结合,抽取答案,能克服传统方法答案比较短和直接的不足,得到的第一答案的质量和长度均有一定保证,有利于后续生成更高质量的问答对数据,从而能提高生成的问答对数据的质量。
基于上述任一实施例的内容,基于第一文本中的命名实体处理第三答案,获取第一答案,包括:在第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全第三答案中的命名实体。
具体地,可以先判断第三答案中是否存在不完整的命名实体。不完整的命名实体一般会出现在第三答案的开头和结尾部分。
若存在,则可以基于第一文本中的命名实体,将上述不完整的命名实体补充完整。
在补全后的第三答案中的第一词语与第一文本中的第二词语的词性不同的情况下,将补全后的第三答案确定为第一答案;其中,第一词语为补全后的第三答案中的最后一个词语;第二词语为第一文本中第一词语之后的第一个词语。
具体地,获取第三答案中最后一个词语的词性,以及获取第一文本中该最后一个词语之后的第一个词语词性。
在上述两个词语的词性不同的情况下,不进行扩展,将补全后的第三答案确定为第一答案。
可选地,在第一词语的词性为不能作为不适合作为结尾的词性的情况下,也不进行扩展,直接将补全后的第三答案确定为第一答案。不适合作为结尾的词性可以包括但不限于副词、介词和连词等。
本发明实施例通过将命名实体识别的方法和基于预训练语言模型的方法结合,抽取答案,利用命名实体识别的结果对答案生成器模型输出的结果进行补全,能得到更高质量的第一答案,有利于后续生成更高质量的问答对数据,从而能提高生成的问答对数据的质量。
基于上述任一实施例的内容,在第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全第三答案中的命名实体之后,还包括:在第一词语与第二词语的词性相同的情况下,将第二词语添加至补全后的第三答案中,得到第一答案。
具体地,获取第三答案中最后一个词语的词性,以及获取第一文本中该最后一个词语之后的第一个词语词性之后,在上述两个词语的词性相同的情况下,对补全后的第三答案进行扩展,即将第二词语合并至补全后的第三答案中,得到第一答案。
示例性地,第一文本为“我爱北京XX乡”,第三答案为“北京”,第一词语为“北京”,第二词语为“XX乡”。由于词语“北京”和“XX乡”的词性相同,均为名词,且第三答案中的命名实体完整,除了可以将“北京”作为第一答案之外,还可以扩展“北京XX乡”也作为第一答案。
本发明实施例通过在第一词语与第二词语的词性相同的情况下,将第二词语添加至补全后的第三答案中,得到第一答案,能获得数量更多的更高质量的第一答案,有利于后续生成更高质量的问答对数据,从而能提高生成的问答对数据质量。
基于上述任一实施例的内容,将第一文本和第一问题输入训练好的过滤器模型,获取第二答案之前,还包括:将样本文本数据分为N份样本数据。其中,N为正整数。
具体地,样本文本数据可以为大规模原始语料。样本文本数据可以为多种类型、多种话题且知识信息丰富的高质量语料。
可选地,可以通过爬取中外文互联网文本语料数据,包括各种百科的数据等,获取样本文本数据。
可选地,可以对爬取到的文本数据进行预处理,统一文本的数据结构,形成知识丰富的高质量的文本数据,作为样本文本数据。
可选地,预处理可以包括数据清洗、规范化、结构化处理和分段等中的至少一种处理方式。
可选地,数据清洗,可以用于去除乱码文本和广告等无关内容。
可选地,规范化可以用于统一文本的数据结构。示例性地,可以通过规范化将都爬取到的数据处理为json格式的文档。
可以将样本文本数据分为N份大小接近的样本数据,即任一份样本数据的数据量均大于第一数据量阈值且小于第二数据量阈值。其中,第二数据量阈值与第一数据量阈值之差小于或等于第三数据量阈值。
第一数据量阈值可以根据样本文本数据的总数据量和N等实际情况预先确定。对于第一数据量阈值的具体值,本发明实施例不进行具体限定。
第二数据量阈值可以根据样本文本数据的总数据量和N等实际情况预先确定。对于第二数据量阈值的具体值,本发明实施例不进行具体限定。
第三数据量阈值可以根据样本文本数据的总数据量和N等实际情况预先确定。对于第三数据量阈值的具体值,本发明实施例不进行具体限定。第三数据量阈值可以为一个较小的数,例如第二数据量阈值的5%或10%等。
对第i份样本数据,执行以下处理:
对样本数据进行答案抽取,获取第一样本答案;
基于第一样本答案和第i份样本数据,生成第一样本问题以及包括第一样本答案和第一样本问题的样本问答对数据;
将第i份样本数据和第一样本问题输入过滤器模型,获取第二样本答案;
在第一样本答案和第二样本答案的交集不为空集的情况下,将样本问答对数据中的第一样本答案,更新为第一样本答案和第二样本答案的并集;
基于第i份样本数据和更新后的样本问答对数据,更新过滤器模型;
其中, i为正整数,1≤i≤N;更新后的过滤器模型,用于处理第(i+1)份样本数据。
具体地,对于每一份样本数据,可以执行与第一文本相同的问答对数据的生成方法,得到样本问答对数据。
上述与第一文本相同的问答对数据的生成方法,可以包括以下步骤:
对样本数据进行答案抽取,获取第一样本答案;
基于第一样本答案和第i份样本数据,生成第一样本问题以及包括第一样本答案和第一样本问题的样本问答对数据;
将第i份样本数据和第一样本问题输入过滤器模型,获取第二样本答案;
在第一样本答案和第二样本答案的交集不为空集的情况下,将样本问答对数据中的第一样本答案,更新为第一样本答案和第二样本答案的并集;在第一样本答案和第二样本答案的交集为空集的情况下,丢弃样本问答对数据。
通过上述步骤,可以将更新后的样本问答对数据确定为基于第i份样本数据生成的问答对数据,即更新后的样本问答对数据为第i份样本数据最终生成的问答对数据。
基于第i份样本数据和上述更新后的样本问答对数据,对过滤器模型重新进行训练,以提高过滤器模型回答问题的能力。基于第i份样本数据微调后的过滤器模型,可以用于获取第(i+1)份样本数据生成的问答对数据。
通过上述过程,可以对过滤器模型进行滚雪球式的训练,避免传统的一次完整的“预训练-微调”没有利用问题生成器模型的有用数据的缺点,从而可以利用问题生成器模型的有用数据,不断提高过滤器模型回答问题的能力,从而不断提高下一轮问答对数据的生成质量。
上述过滤器模型的训练过程,可以如图2所示。如图2所示,可以将大语料库中的全部语料作为将样本文本数据;将样本文本数据分为大小相近的N份样本数据,分别记为样本数据1、……、样本数据N。由于过滤器模型存在迭代更新,处理样本数据1、……、样本数据N的过滤器模型,可以分别记为过滤器模型1、……、过滤器模型N。答案生成器模型、问题生成器模型和过滤器模型1,均可以基于公开数据训练得到。公开数据可以为自然语言理解数据集,例如SquaD或CMRC2018等。基于过滤器模型1得到的高质量问答对,可以记为产出数据1。可以基于上述公开数据和产出数据1,训练过滤器模型1,更新过滤器模型1,作为过滤器模型2。依此类推,可以得到过滤器模型N。通过上述滚雪球式的不断更新,可以提高过滤器模型得到的问答对的质量,相较于之前的过滤器模型,后面的过滤器模型可以得到更高质量问答对。
本发明实施例通过迭代训练过滤器模型,能提高过滤器模型回答问题的能力和数据生成的质量,从而能提高生成的问答对数据质量。
下面对本发明提供的问答对数据的生成装置进行描述,下文描述的问答对数据的生成装置与上文描述的问答对数据的生成方法可相互对应参照。
图3是本发明提供的问答对数据的生成装置的结构示意图。基于上述任一实施例的内容,如图3所示,问答对数据的生成装置包括:抽取模块301、生成模块302、获取模块303和处理模块304,其中:
抽取模块301,用于对第一文本进行答案抽取,获取第一答案;
生成模块302,用于基于第一答案和第一文本,生成第一问题以及包括第一答案和第一问题的候选问答对数据;
获取模块303,用于将第一文本和第一问题输入训练好的过滤器模型,获取第二答案;
处理模块304,用于基于第一答案和第二答案,处理候选问答对数据。
具体地,抽取模块301、生成模块302、获取模块303和处理模块304可以顺次电连接。
抽取模块301可以采用任一种答案抽取方法,根据输入的第一文本,自动生成适合的答案。上述生成的答案,为第一答案。
生成模块302可以基于第一文本和每一第一答案,根据任一种问题生成方法,生成该第一答案对应的第一问题。
获取模块303可以将第一文本和每一第一问题输入训练好的过滤器模型,该过滤器模型对第一文本和该第一问题的进行自然语言理解处理,从第一文本中提取中该第一问题的答案,作为该第一问题对应的第二答案。
对于候选问答对数据中每一问答对,处理模块304可以根据该问答对中的第一问题对应的第二答案,对该问答对中的第一答案进行修正,即可以通过对比该第一答案和该第二答案,确定是否保留或者重新处理该问答对。
可选地,处理模块304,可以具体用于在第一答案和第二答案的交集不为空集的情况下,将问答对数据中的第一答案,更新为第一答案和第二答案的并集。
可选地,处理模块304,还可以具体用于在第一答案和第二答案的交集为空集的情况下,丢弃候选问答对数据。
可选地,抽取模块301,可以包括:
第一获取单元,用于将第一文本输入答案生成器模型,获取第三答案,并对第一文本进行命名实体识别,获取第一文本中的命名实体;
第二获取单元,用于基于第一文本中的命名实体处理第三答案,获取第一答案。
可选地,第二获取单元,可以包括:
补全子单元,用于在第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全第三答案中的命名实体;
确定子单元,用于在补全后的第三答案中的第一词语与第一文本中的第二词语的词性不同的情况下,将补全后的第三答案确定为第一答案;
其中,第一词语为补全后的第三答案中的最后一个词语;第二词语为第一文本中第一词语之后的第一个词语。
可选地,第二获取单元,还可以包括:
扩展子单元,用于在第一词语与第二词语的词性相同的情况下,将第二词语添加至补全后的第三答案中,得到第一答案。
可选地,该问答对数据的生成装置,还可以包括:
切分模块,用于将样本文本数据分为N份样本数据;
训练模块,用于对第i份样本数据,执行以下处理:
对样本数据进行答案抽取,获取第一样本答案;
基于第一样本答案和第i份样本数据,生成第一样本问题以及包括第一样本答案和第一样本问题的样本问答对数据;
将第i份样本数据和第一样本问题输入过滤器模型,获取第二样本答案;
在第一样本答案和第二样本答案的交集不为空集的情况下,将样本问答对数据中的第一样本答案,更新为第一样本答案和第二样本答案的并集;
基于第i份样本数据和更新后的样本问答对数据,更新过滤器模型;
其中,N为正整数;i为正整数,1≤i≤N;更新后的过滤器模型,用于处理第(i+1)份样本数据。
本发明实施例提供的问答对数据的生成装置,用于执行本发明上述问答对数据的生成方法,其实施方式与本发明提供的问答对数据的生成方法的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
该问答对数据的生成装置用于前述各实施例的问答对数据的生成方法。因此,在前述各实施例中的问答对数据的生成方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。
本发明实施例通过抽取第一文本中的第一答案,根据第一答案和第一文本生成第一答案对应的第一问题,根据第一文本和第一问题生成第一问题对应的第二答案,基于同一第一问题对应的第一答案和第二答案,获取问答对中该第一问题对应的最终答案,通过同一第一问题对应的第二答案对该第一问题对应的第一答案的修正,能得到质量更高的问答对数据。
图4是本发明提供的电子设备的结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行问答对数据的生成方法,该方法包括:对第一文本进行答案抽取,获取第一答案;基于第一答案和第一文本,生成第一问题以及包括第一答案和第一问题的候选问答对数据;将第一文本和第一问题输入训练好的过滤器模型,获取第二答案;基于第一答案和第二答案,处理候选问答对数据。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供的电子设备中的处理器410可以调用存储器430中的逻辑指令,其实施方式与本发明提供的问答对数据的生成方法的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的问答对数据的生成方法,该方法包括:对第一文本进行答案抽取,获取第一答案;基于第一答案和第一文本,生成第一问题以及包括第一答案和第一问题的候选问答对数据;将第一文本和第一问题输入训练好的过滤器模型,获取第二答案;基于第一答案和第二答案,处理候选问答对数据。
本发明实施例提供的计算机程序产品被执行时,实现上述问答对数据的生成方法,其具体的实施方式与前述方法的实施例中记载的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的问答对数据的生成方法,该方法包括:对第一文本进行答案抽取,获取第一答案;基于第一答案和第一文本,生成第一问题以及包括第一答案和第一问题的候选问答对数据;将第一文本和第一问题输入训练好的过滤器模型,获取第二答案;基于第一答案和第二答案,处理候选问答对数据。
本发明实施例提供的非暂态计算机可读存储介质上存储的计算机程序被执行时,实现上述问答对数据的生成方法,其具体的实施方式与前述方法的实施例中记载的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种问答对数据的生成方法,其特征在于,包括:
对第一文本进行答案抽取,获取第一答案;
基于所述第一答案和所述第一文本,生成第一问题以及包括所述第一答案和所述第一问题的候选问答对数据;
将所述第一文本和所述第一问题输入训练好的过滤器模型,获取第二答案;
基于所述第一答案和所述第二答案,处理所述候选问答对数据;
所述将所述第一文本和所述第一问题输入训练好的过滤器模型,获取第二答案之前,还包括:
将样本文本数据分为N份样本数据;任一份所述样本数据的数据量均大于第一数据量阈值且小于第二数据量阈值;所述第二数据量阈值与所述第一数据量阈值之差小于或等于第三数据量阈值;
对第i份所述样本数据,执行以下处理:
对所述样本数据进行答案抽取,获取第一样本答案;
基于所述第一样本答案和第i份所述样本数据,生成第一样本问题以及包括所述第一样本答案和所述第一样本问题的样本问答对数据;
将第i份所述样本数据和所述第一样本问题输入过滤器模型,获取第二样本答案;
在所述第一样本答案和所述第二样本答案的交集不为空集的情况下,将所述样本问答对数据中的所述第一样本答案,更新为所述第一样本答案和所述第二样本答案的并集;
基于第i份所述样本数据和更新后的所述样本问答对数据,更新所述过滤器模型;
其中,N为正整数;i为正整数,1≤i≤N;更新后的所述过滤器模型,用于处理第(i+1)份所述样本数据。
2.根据权利要求1所述的问答对数据的生成方法,其特征在于,所述基于所述第一答案和所述第二答案,处理所述候选问答对数据,包括:
在所述第一答案和所述第二答案的交集不为空集的情况下,将所述问答对数据中的所述第一答案,更新为所述第一答案和所述第二答案的并集。
3.根据权利要求2所述的问答对数据的生成方法,其特征在于,所述基于所述第一答案和所述第二答案,处理所述候选问答对数据,还包括:
在所述第一答案和所述第二答案的交集为空集的情况下,丢弃所述候选问答对数据。
4.根据权利要求1所述的问答对数据的生成方法,其特征在于,所述对第一文本进行答案抽取,获取第一答案,包括:
将所述第一文本输入答案生成器模型,获取第三答案,并对所述第一文本进行命名实体识别,获取所述第一文本中的命名实体;
基于所述第一文本中的命名实体处理所述第三答案,获取所述第一答案。
5.根据权利要求4所述的问答对数据的生成方法,其特征在于,所述基于所述第一文本中的命名实体处理所述第三答案,获取所述第一答案,包括:
在所述第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全所述第三答案中的命名实体;
在补全后的所述第三答案中的第一词语与所述第一文本中的第二词语的词性不同的情况下,将补全后的所述第三答案确定为所述第一答案;
其中,所述第一词语为补全后的所述第三答案中的最后一个词语;所述第二词语为所述第一文本中所述第一词语之后的第一个词语。
6.根据权利要求5所述的问答对数据的生成方法,其特征在于,所述在所述第三答案中的任一命名实体不完整的情况下,基于第一文本中的命名实体补全所述第三答案中的命名实体之后,还包括:
在所述第一词语与所述第二词语的词性相同的情况下,将所述第二词语添加至补全后的所述第三答案中,得到所述第一答案。
7.一种问答对数据的生成装置,其特征在于,包括:
抽取模块,用于对第一文本进行答案抽取,获取第一答案;
生成模块,用于基于所述第一答案和所述第一文本,生成第一问题以及包括所述第一答案和所述第一问题的候选问答对数据;
获取模块,用于将所述第一文本和所述第一问题输入训练好的过滤器模型,获取第二答案;
处理模块,用于基于所述第一答案和所述第二答案,处理所述候选问答对数据;
切分模块,用于将样本文本数据分为N份样本数据;任一份所述样本数据的数据量均大于第一数据量阈值且小于第二数据量阈值;所述第二数据量阈值与所述第一数据量阈值之差小于或等于第三数据量阈值;
训练模块,用于对第i份样本数据,执行以下处理:
对所述样本数据进行答案抽取,获取第一样本答案;
基于所述第一样本答案和第i份所述样本数据,生成第一样本问题以及包括所述第一样本答案和所述第一样本问题的样本问答对数据;
将第i份所述样本数据和所述第一样本问题输入过滤器模型,获取第二样本答案;
在所述第一样本答案和所述第二样本答案的交集不为空集的情况下,将所述样本问答对数据中的所述第一样本答案,更新为所述第一样本答案和所述第二样本答案的并集;
基于第i份所述样本数据和更新后的所述样本问答对数据,更新所述过滤器模型;
其中,N为正整数;i为正整数,1≤i≤N;更新后的所述过滤器模型,用于处理第(i+1)份所述样本数据。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述问答对数据的生成方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述问答对数据的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310072288.2A CN115905500B (zh) | 2023-02-07 | 2023-02-07 | 问答对数据的生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310072288.2A CN115905500B (zh) | 2023-02-07 | 2023-02-07 | 问答对数据的生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115905500A CN115905500A (zh) | 2023-04-04 |
CN115905500B true CN115905500B (zh) | 2023-05-23 |
Family
ID=85733684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310072288.2A Active CN115905500B (zh) | 2023-02-07 | 2023-02-07 | 问答对数据的生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115905500B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190260694A1 (en) * | 2018-02-16 | 2019-08-22 | Mz Ip Holdings, Llc | System and method for chat community question answering |
US10678822B2 (en) * | 2018-06-29 | 2020-06-09 | International Business Machines Corporation | Query expansion using a graph of question and answer vocabulary |
CN110532348B (zh) * | 2019-09-04 | 2022-03-22 | 网易(杭州)网络有限公司 | 问答对数据的生成方法、装置及电子设备 |
CN113672708B (zh) * | 2020-05-13 | 2024-10-08 | 武汉Tcl集团工业研究院有限公司 | 语言模型训练方法、问答对生成方法、装置及设备 |
CN111914062B (zh) * | 2020-07-13 | 2021-04-06 | 上海乐言科技股份有限公司 | 一种基于关键词的长文本问答对生成系统 |
CN112183091A (zh) * | 2020-10-12 | 2021-01-05 | 深圳壹账通智能科技有限公司 | 问答对生成方法、装置、电子设备及可读存储介质 |
CN115617974B (zh) * | 2022-12-14 | 2023-12-01 | 北京红棉小冰科技有限公司 | 一种对话处理方法、装置、设备及存储介质 |
-
2023
- 2023-02-07 CN CN202310072288.2A patent/CN115905500B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115905500A (zh) | 2023-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110134968B (zh) | 基于深度学习的诗歌生成方法、装置、设备及存储介质 | |
CN111310447B (zh) | 语法纠错方法、装置、电子设备和存储介质 | |
CN106897559B (zh) | 一种面向多数据源的症状体征类实体识别方法及装置 | |
CN112016319B (zh) | 预训练模型获取、疾病实体标注方法、装置及存储介质 | |
CN111933127A (zh) | 一种具备自学习能力的意图识别方法及意图识别系统 | |
CN112528637A (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
CN111339772B (zh) | 俄语文本情感分析方法、电子设备和存储介质 | |
CN113822054A (zh) | 基于数据增强的中文语法纠错方法及装置 | |
CN113408535B (zh) | 一种基于中文字符级特征和语言模型的ocr纠错方法 | |
CN115438154A (zh) | 基于表征学习的中文自动语音识别文本修复方法及系统 | |
CN114781651A (zh) | 基于对比学习的小样本学习鲁棒性提升方法 | |
CN116881470A (zh) | 一种生成问答对的方法及装置 | |
CN110969005B (zh) | 一种确定实体语料之间的相似性的方法及装置 | |
CN117094383B (zh) | 一种语言模型的联合训练方法、系统、设备及存储介质 | |
CN115905500B (zh) | 问答对数据的生成方法及装置 | |
CN116070642A (zh) | 一种基于表情嵌入的文本情感分析方法及相关装置 | |
CN116186246A (zh) | 基于pegasus与实体链的舆情文本摘要生成方法及相关装置 | |
CN114003708B (zh) | 基于人工智能的自动问答方法、装置、存储介质及服务器 | |
CN115905852A (zh) | 基于预训练提示的故事生成方法、系统、存储介质和终端 | |
CN113836892B (zh) | 样本量数据提取方法、装置、电子设备及存储介质 | |
CN115080736A (zh) | 一种判别式语言模型的模型调整方法及装置 | |
CN115292492A (zh) | 意图分类模型的训练方法、装置、设备及存储介质 | |
CN111814433B (zh) | 一种维吾尔语实体识别的方法、装置和电子设备 | |
CN113761874A (zh) | 事件事实性预测方法、装置、电子设备与存储介质 | |
Dinarelli et al. | Concept segmentation and labeling for conversational speech |
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 |