CN115828893B - 非结构化文档问答的方法、装置、存储介质和设备 - Google Patents

非结构化文档问答的方法、装置、存储介质和设备 Download PDF

Info

Publication number
CN115828893B
CN115828893B CN202211501006.8A CN202211501006A CN115828893B CN 115828893 B CN115828893 B CN 115828893B CN 202211501006 A CN202211501006 A CN 202211501006A CN 115828893 B CN115828893 B CN 115828893B
Authority
CN
China
Prior art keywords
index
paragraph
result
sentence pair
document
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
Application number
CN202211501006.8A
Other languages
English (en)
Other versions
CN115828893A (zh
Inventor
杨娟
杨再飞
翟士丹
鲍红飞
王博
胡蓉
王道广
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Haizhi Xingtu Technology Co ltd
Original Assignee
Beijing Haizhi Xingtu Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Haizhi Xingtu Technology Co ltd filed Critical Beijing Haizhi Xingtu Technology Co ltd
Priority to CN202211501006.8A priority Critical patent/CN115828893B/zh
Publication of CN115828893A publication Critical patent/CN115828893A/zh
Application granted granted Critical
Publication of CN115828893B publication Critical patent/CN115828893B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种非结构化文档问答的方法、装置、存储介质和设备,所述方法包括:创建文档索引库,对文档进行解析,获得段落索引、句对索引和全文索引,利用召回算法从段落索引中获得最相关段落并进行答案抽取,获得段落索引结果,对待回答问题和句对索引分别进行向量化处理并计算相似度得分,将相似度得分记录大于阈值的句对索引对应的标题及段落内容作为句对索引结果,将待回答问题去除停用词,利用召回算法从全文索引中检索,获得全文索引结果,最后将段落索引结果、句对索引结果和全文索引结果按照预设策略整合,得到答案和参考答案。本发明能够快速从文档中获得答案,或者定位与问题有相关度的文本内容,提升非结构化文档问答的速度与精度。

Description

非结构化文档问答的方法、装置、存储介质和设备
技术领域
本发明涉机器阅读理解技术领域,尤其涉及一种非结构化文档问答的方法、装置、存储介质和设备。
背景技术
随着科技的发展日新月异,人们日常生活中会产生大量的数据,而在这些数据中很多是以非结构化文本存在,如规章制度、技术文档等,人们往往需要从这些文档中获取信息。当需要从已有文档中找到某个问题的答案或相关信息,通常需要花费巨大的时间和精力去进行查阅。
目前针对非结构化文档的问答系统还比较少,往往需要事先从已有文档中整理大规模的对话语料,当客户提出问题时,通过从大规模的对话预料中检索用户的输入问题获取答案,而针对大规模的对话语料的检索结果只能获得与输入问题本身具有一定相关性的内容,当客户提出对话语料库以外的问题时现有的非结构化文档的问答系统将无法回答。
而另一方面,机器阅读理解任务是目前自然语言处理和人工智能领域的重要前沿课题,现有非结构化文档的问答方法在实际文档应用中如针对关键词搜索、短文本陈述句等无法很好提取到答案,或者提取出错误的答案。
因此,如何让客户快速从已有文档中获得问题对应的答案,或者定位与问题有相关度的文本内容上,成为一个亟待解决的问题。
发明内容
有鉴于此,本发明提供一种非结构化文档问答的方法、装置、存储介质和设备,能够快速从已有文档中获得问题对应的答案,或者定位与问题有相关度的文本内容,提升非结构化文档问答的速度与精度。
第一方面,本发明实施例提供一种非结构化文档问答的方法,所述方法包括:
创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引;
对于输入的待回答问题,利用召回算法从所述段落索引中获得与所述待回答问题最相关的段落,并进行答案抽取,获得段落索引结果;
对所述待回答问题和所述句对索引分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;
将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果;
将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案。
进一步地,所述创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引包括:
在搜索引擎中分别创建段落索引、句对索引和全文索引;
将上传的每一篇文档利用文档解析器进行解析,分别获得每一篇文档的所有段落内容、标题及其段落内容、以及全文文本内容;
将所述所有段落内容,及所有段落的顺序存储至所述段落索引;
对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引;
将每一篇文档的所述全文文本内容载入所述全文索引。
进一步地,对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引包括:
所述标题分为至少两级子标题,并对每个子标题进行扩展;
将每个子标题的上级标题和当前子标题作为标题索引,将当前子标题对应的段落内容作为内容索引,分别对所述标题索引和所述内容索引进行向量化处理;
将向量化处理后的标题索引和内容索引存储至所述句对索引。
进一步地,对于输入的待回答问题,利用召回算法从所述段落索引中获得最相关段落,并进行答案抽取,获得段落索引结果包括:
将领域词典融入所述搜索引擎中,获得融合后的段落索引;
对于输入的待回答问题,利用BM25召回算法从所述段落索引中检索出第一预设数目个相关段落;
将所述第一预设数目个相关段落进行滑窗切分,利用二分类模型对于切分后的第一预设数目个相关段落进行排名;
选取排名位于前第二预设数目的相关段落作为最相关段落,其中,所述第一预设数目大于所述第二预设数目;
将所述待回答问题和所述最相关段落内容进行拼接后输入MRC模型;
利用所述MRC模型获得待回答问题的答案的起始位置和终止位置;
当所述答案的起始位置和终止位置代表的字符串存在内容时,则获得段落索引结果。
进一步地,对所述待回答问题和所述句对索引中分别进行向量化处理,并计算相似度得分,将相似度得分记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果包括:
利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理;
计算待回答问题的向量化结果和所述句对索引中各标题的向量化结果的相似度得分;
当相似度得分最高的记录大于得分阈值时,将相似度得分最高所对应的标题及其段落内容作为句对索引结果。
进一步地,将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果包括:
将所述待回答问题去除停用词;
对去除停用词后的待回答问题提取关键词;
将所述关键词及关键词的组合作为搜索关键字,利用BM25召回算法从所述全文索引中进行检索;
将检索出的前第三预设数目个检索结果作为全文索引结果。
进一步地,将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案包括:
当所述段落索引结果有结果返回时,则将所述段落索引结果作为答案,将所述句对索引结果和全文索引结果作为参考答案;
当所述段落索引结果没有结果返回,且所述句对索引结果有结果返回时,将所述句对索引结果作为答案,将所述全文索引结果作为参考答案;
当只有所全文索引结果有结果返回时,将检索结果最相关的全文索引结果作为答案,将其他检索结果作为参考答案。
第二方面,本发明实施例提供一种非结构化文档问答的装置,所述装置包括:
索引创建模块,用于创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引;
段落索引结果获取模块,用于对于输入的待回答问题,利用召回算法从所述段落索引中获得最相关段落,并进行答案抽取,获得段落索引结果;
句对索引结果获取模块,用于利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;
全文索引结果获取模块,用于将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果;
答案输出模块,用于将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案。
第三方面,本发明实施例提供一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述第一方面中任一项所述的方法。
第四方面,本发明实施例提供一种设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述第一方面中任一项所述的方法。
本发明提供的技术方案,通过从段落索引中获得与待回答问题最相关段落,并进行答案抽取,获得段落索引结果;及对待回答问题和句对索引中分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;以及将待回答问题去除停用词后,利用召回算法从全文索引中进行搜索,获得全文索引结果,利用3种方法得到3中检索结果,最后将3中检索结果进行融合,按照预设策略整合,得到待回答问题的答案和参考答案。由此,能够帮助客户快速从非结构化文档中定位出问题的答案或者给出问题的相关信息,客户只需事先上传非结构化、可解析的文档,待文档解析数据落入文档索引库后,即可找出问题对应的精确答案和问题的相关文本(即参考答案);同时,本发明在答案抽取的接触上,增加了对文档标题的应用,通过自动扩展标题作为问题,标题下的段落文本作为答案的句对,当客户提问标题类问题时即可快速获得答案;同时,本申请的融合策略中,当客户的问题存在对应的段落索引结果时即可输出问题对应的精确的答案,当客户询问的是比如词语、多关键词或者短文本时,即可通过全文索引结果获得与问题关联性高的文本,可见,利用本申请的技术方案,能够同时满足客户精确查找和模糊查找的需求。
附图说明
图1是本发明实施例提供的非结构化文档问答方法的流程图;
图2是本发明实施例提供的非结构化文档问答方法对应的示意图;
图3是本发明实施例提供的非结构化文档问答方法中创建文档索引库的流程图;
图4是本发明实施例提供的非结构化文档问答方法中获得段落索引结果的流程图;
图5是本发明实施例提供的非结构化文档问答方法中获取句对索引结果的流程图;
图6是本发明实施例提供的非结构化文档问答方法中获得全文索引结果的流程图;
图7是本发明实施例提供的非结构化文档问答方法中获得待回答问题的答案和参考答案的流程图;
图8是本发明实施例提供的非结构化文档问答装置的结构示意图;
图9是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
参见图1,图1是本发明实施例提供的一种非结构化文档问答的方法的流程图,所述方法包括以下步骤:
步骤101、创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引。
在本申请中,每一篇非结构化文档均支持解析,解析时只针对文档中的文本部分,同时每一篇文档具有明确的段落结构,且文档中各段落内容具有连贯的语义逻辑性。
在本步骤中,首先创建文档索引库,包括段落索引、句对索引和全文索引,对于每一篇上传的文档,基于已有文档解析方法,分别生成每一篇文档的所有段落内容、标题及标题对应段落内容、整篇文档内容,之后分别对每一篇文档的段落内容、标题及标题对应段落内容、整篇文档内容进行处理后,分别存储到段落索引、句对索引和全文索引中。
步骤102、对于输入的待回答问题,利用召回算法从所述段落索引中获得与所述待回答问题最相关段落,并进行答案抽取,获得段落索引结果。
在本步骤中,从段落索引中先根据待回答问题进行BM25算法召回,找出最相关的段落,例如,找出15个(15段的数值是经过对训练数据的统计分析得到)最相关段落,然后将待回答问题和这15个最相关段落分别利用MRC模型进行答案抽取,若抽取出答案,则直接返回该答案及答案所在的段落。
在本申请中,召回算法根据输入的待回答问题,能够高效的获取待回答问题相关的候选文档集合的过程。召回算法一般分为两类,基于词的传统召回和基于向量的语义召回。基于词的传统召回的实现基于倒排索引,当用户输入待回答问题后,搜索引擎会进行待回答问题理解并分析,在倒排索引中找出分词结果所在文档即完成召回。基于向量的语义召回主要指基于大规模预训练模型对待回答问题和文档分别做向量化,然后用待回答问题和文档的向量结果计算余弦相似度得分来召回。在步骤102中,从段落索引中先根据待回答问题进行BM25算法召回采用的召回算法是基于词的传统召回。
步骤103、对所述待回答问题和所述句对索引中分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果。
在本步骤中,从句对索引中针对待回答问题进行向量化召回,可以利用ConSERT模型分别向量化待回答问题和文档中各标题并计算相似度得分,取满足阈值以上的标题及其对应的片段作为答案,优选的,取满足阈值以上的排名第一的标题及其对应的段落作为答案。在本步骤中,从句对索引中针对待回答问题进行向量化召回采用的ConSERT模型是基于词的传统召回。
ConSERT模型是一种对比学习模型,直接利用BERT生成句子嵌入时会出现坍塌问题,ConSERT模型利用对比学习的思想,通过拉近相同文本的距离,拉远不同文本的距离来刻画样本本身的表示,从而减轻BERT模型的坍塌,能使整体的句子表示更均匀,让相似度不高的句子之间的得分和相似度高的句子之间的得分有明显差异。
步骤104、将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果。
在本步骤中,可以将待回答问题去除停用词后利用BM25算法在全文索引中进行召回,选取其中前预设数目的检索结果作为答案返回,例如,选取其中排名前5的检索结果作为答案召回。
步骤105、将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案。
在本步骤中,融合上述步骤102、103、104中的段落索引结果、句对索引结果和全文索引结果,按照策略整合,将答案和参考答案分别返回。
请参照图2,图2是本发明实施例提供的一种非结构化文档问答的方法的示意图。下面结合图2说明本发明实施例提供的非结构化文档问答的方法的实现过程:
首先,对于利用文档解析器对文档集进行解析,分别生成每一篇文档的所有段落内容、标题及标题对应段落内容、整篇文档内容,例如:对文档集的所有文档解析后,生成段落1、段落2、…、段落p,将p个段落内容进行处理后存储至段落索引C中;对文档集的所有文档解析后,生成标题及其段落1、标题及其段落2、…、标题及其段落n,将n个标题及段落内容进行处理后存储至句对索引B中;对文档集的所有文档解析后,生成全文1、全文2、…、全文m,将m个全文文档内容存储至全文索引A中。
之后,对于输入的待回答问题,利用BM25召回算法从段落索引中进行检索获得与待回答问题最相关的段落,并利用MRC模型进行答案抽取,获得段落索引结果;利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理,并计算相似度得分,获得排名靠前的预设数目个标题及其对应段落内容;对待回答问题去除停用词后,利用BM25召回算法从全文索引中进行搜索,获得排名靠前的前预设数目个全文索引结果,最后,将针对段落索引、句对索引和全文索引输出的结果进行融合,按照策略进行整合,将答案和参考答案分别返回。
下面,将详细阐述本发明实施例中每一步的实现过程:
如图3所示,图3是本发明实施例提供的非结构化文档问答方法中创建文档索引库的流程图,也即步骤101的一种可能的实施方式是包括以下步骤:
步骤1011、在搜索引擎中分别创建段落索引、句对索引和全文索引。
步骤1012、将上传的每一篇文档利用文档解析器进行解析,分别获得每一篇文档的所有段落内容、标题及其段落内容、以及全文文本内容。
步骤1013、将所述所有段落内容,及所有段落的顺序存储至所述段落索引;
步骤1014、对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引。
在本步骤中,非结构化文档具有明确的段落结构,并且文档中各段落内容具备连贯的语义逻辑性。因此,将每一篇文档进行解析后,可以获得每一篇文档的标题及其段落内容。其中,所述标题分为至少两级子标题,并对每个子标题进行扩展,将每个子标题的上级标题和当前子标题作为标题索引,将当前子标题对应的段落内容作为内容索引,分别对所述标题索引和所述内容索引进行向量化处理,将向量化处理后的标题索引和内容索引存储至所述句对索引。
步骤1015、将每一篇文档的所述全文文本内容载入所述全文索引。
如图4所示,图4是本发明实施例提供的非结构化文档问答方法中获得最相关段落的流程图,也即步骤102一种可能的实施方式是包括以下步骤:
步骤1021、将领域词典融入所述搜索引擎中,获得融合后的段落索引。
在本实施例中,召回算法分为粗排和精排两部分,粗排阶段采用BM25算法进行召回,召回过程中可将领域词典融入搜索引擎,增强对不同领域的名词的召回能力。
步骤1022、对于输入的待回答问题,利用BM25召回算法从所述段落索引中检索出第一预设数目个相关段落。
在本实施例中,召回算法在粗排阶段,对于每个待回答问题,召回最相关的50个段落作为精排的输入。
步骤1023、将所述第一预设数目个相关段落进行滑窗切分,利用二分类模型对于切分后的第一预设数目个相关段落进行排名。
在本步骤中,在精排阶段,先将粗排阶段确定的50个相关段落进行滑窗切分,然后利用Bert二分类模型对切分后的文本段落进一步打分,选出最相关的15个切分好的文本作为抽取模块的输入。
步骤1024、选取排名位于前第二预设数目的相关段落作为最相关段落,其中,所述第一预设数目大于所述第二预设数目。
在本步骤中,选取最相关的15个切分好的文本作为抽取答案阶段的输入。
步骤1025、将所述待回答问题和所述最相关段落内容进行拼接后输入MRC模型。
步骤1026、利用所述MRC模型获得待回答问题的答案的起始位置和终止位置。
步骤1027、判断答案的起始位置和终止位置代表的字符串是否存在内容,如是,则获得段落索引结果,如否,则未获得段落索引结果。
在本步骤中,主要采用Transformer的答案抽取模型,把待回答问题和15个最相关段落文本内容拼接作为抽取模型的输入,预测答案的起始位置和终止位置,当答案的起始位置和终止位置代表的字符串没有内容,则视为模型拒识,若抽取出答案,则直接返回该答案以及答案所在段落。模型训练过程此处不做赘述。
如图5所示,图5是本发明实施例提供的非结构化文档问答方法中获得句对索引结果的流程图,也即步骤103一种可能的实施方式是包括以下步骤:
步骤1031、利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理。
步骤1032、计算待回答问题的向量化结果和所述句对索引中各标题的向量化结果的相似度得分。
步骤1033、判断相似度得分最高的记录是否大于得分阈值,若是,则将相似度得分最高所对应的标题及其段落内容作为句对索引结果,若否,则没有匹配到标题及标题对应段落内容。
在本步骤中,对输入的待回答问题利用ConSert模型将其向量化,在经过扩展的句对索引中,对待回答问题进行向量化召回,并且按照待回答问题的向量化结果和句对索引中的每条标题及标题对应的段落内容的向量化结果计算余弦相似度作为得分。在召回结果中选取得分最高的记录,接着判断该最高得分的记录有无达到阈值(比如:0.8),如果有则作为答案返回,如果无则认为没有匹配到标题及标题对应段落内容。
如图6所示,图6是本发明实施例提供的非结构化文档问答方法中获得全文索引结果的流程图,也即步骤104一种可能的实施方式是包括以下步骤:
步骤1041、将所述待回答问题去除停用词。
步骤1042、对去除停用词后的待回答问题提取关键词。
步骤1043、将所述关键词及关键词的组合作为搜索关键字,利用BM25召回算法从所述全文索引中进行检索。
步骤1044、将检索出的前第三预设数目个检索结果作为全文索引结果。
在本步骤中,对待回答问题进行去除停用词,并且提取关键词,将关键词集合作为搜索关键字在全文索引中进行搜索,如“我想查一下年度交易周期”,该句中“我想查一下”并不是问题的核心要素,需要避免其对搜索结果的干扰,因此,需要提前将待回答问题的停用词去除,以提高检索效率和准确率。之后,利用BM25召回算法从所述全文索引中进行检索,将检索出的前第三预设数目个检索结果作为全文索引结果。
如图7所示,图7是本发明实施例提供的非结构化文档问答方法中获得待回答问题的答案和参考答案的流程图,也即步骤105一种可能的实施方式是包括以下步骤:
步骤1051、当所述段落索引结果有结果返回时,则将所述段落索引结果作为答案,将所述句对索引结果和全文索引结果作为参考答案。
步骤1052、当所述段落索引结果没有结果返回,且所述句对索引结果有结果返回时,将所述句对索引结果作为答案,将所述全文索引结果作为参考答案。
步骤1053、当只有所全文索引结果有结果返回时,将检索结果最相关的全文索引结果作为答案,将其他检索结果作为参考答案。
在本步骤中,分别收集段落索引结果、句对索引结果和全文检索结果,如果段落索引结果返回答案,则将段落索引结果作为答案,其他句对索引结果和全文检索结果作为参考答案;如果段落索引结果没有返回答案且句对索引结果返回答案时,则将句对检索结果对应的标题及段落内容作为答案,将全文检索结果作为参考答案;如果只有检索结果返回答案,则选择检索结果排名第一的全文文档内容作为答案,其他全文检索结果作为参考答案。
请参照图8,图8是本发明实施例提供的非结构化文档问答装置的结构图,所述装置包括:
索引创建模块21,用于创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引;
段落索引结果获取模块22,用于对于输入的待回答问题,利用召回算法从所述段落索引中获得最相关段落,并进行答案抽取,获得段落索引结果;
句对索引结果获取模块23,用于利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;
全文索引结果获取模块24,用于将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果;
答案输出模块25,用于将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案。
在一些实施例中,索引创建模块21可包括:
创建单元211,用于在搜索引擎中分别创建段落索引、句对索引和全文索引;
解析单元212,用于将上传的每一篇文档利用文档解析器进行解析,分别获得每一篇文档的所有段落内容、标题及其段落内容、以及全文文本内容;
段落索引单元213,用于将所述所有段落内容,及所有段落的顺序存储至所述段落索引;
句对索引单元214,用于对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引;
全文索引单元215,用于将每一篇文档的所述全文文本内容载入所述全文索引。
在一些实施例中,句对索引单元214可包括:
扩展子单元2141,用于所述标题分为至少两级子标题,并对每个子标题进行扩展;
向量化子单元2142,用于将每个子标题的上级标题和当前子标题作为标题索引,将当前子标题对应的段落内容作为内容索引,分别对所述标题索引和所述内容索引进行向量化处理;
存储子单元2143,用于将向量化处理后的标题索引和内容索引存储至所述句对索引。
在一些实施例中,段落索引结果获取模块22可包括:
词典融入单元221,用于将领域词典融入所述搜索引擎中,获得融合后的段落索引;
第一召回单元222,用于对于输入的待回答问题,利用BM25召回算法从所述段落索引中检索出第一预设数目个相关段落;
排名子单元223,用于将所述第一预设数目个相关段落进行滑窗切分,利用二分类模型对于切分后的第一预设数目个相关段落进行排名;
第二召回单元224,用于选取排名位于前第二预设数目的相关段落作为最相关段落,其中,所述第一预设数目大于所述第二预设数目;
拼接单元225,用于将所述待回答问题和所述最相关段落内容进行拼接后输入MRC模型;
位置确定单元226,用于利用所述MRC模型获得待回答问题的答案的起始位置和终止位置;
段落索引结果单元227,用于当所述答案的起始位置和终止位置代表的字符串存在内容时,则获得段落索引结果。
在一些实施例中,句对索引结果模块23可包括:
向量化单元231,用于利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理;
相似度计算单元232,用于计算待回答问题的向量化结果和所述句对索引中各标题的向量化结果的相似度得分;
句对索引结果单元233,用于当相似度得分最高的记录大于得分阈值时,将相似度得分最高所对应的标题及其段落内容作为句对索引结果。
在一些实施例中,全文索引结果模块24可包括:
去除停用词单元241,用于将所述待回答问题去除停用词;
提取关键词单元242,用于对去除停用词后的待回答问题提取关键词;
检索单元243,用于将所述关键词及关键词的组合作为搜索关键字,利用BM25召回算法从所述全文索引中进行检索;
全文索引结果单元244,用于将检索出的前第三预设数目个检索结果作为全文索引结果。
在一些实施例中,答案输出模块25可包括:
第一答案输出单元251,用于第一当所述段落索引结果有结果返回时,则将所述段落索引结果作为答案,将所述句对索引结果和全文索引结果作为参考答案;
第二答案输出单元252,用于当所述段落索引结果没有结果返回,且所述句对索引结果有结果返回时,将所述句对索引结果作为答案,将所述全文索引结果作为参考答案;
第三答案输出单元253,用于当只有所全文索引结果有结果返回时,将检索结果最相关的全文索引结果作为答案,将其他检索结果作为参考答案。
本发明提供的技术方案,通过从段落索引中获得与待回答问题最相关段落,并进行答案抽取,获得段落索引结果;及对待回答问题和句对索引中分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;以及将待回答问题去除停用词后,利用召回算法从全文索引中进行搜索,获得全文索引结果,利用3种方法得到3中检索结果,最后将3中检索结果进行融合,按照预设策略整合,得到待回答问题的答案和参考答案。由此,能够帮助客户快速从非结构化文档中定位出问题的答案或者给出问题的相关信息,客户只需事先上传非结构化、可解析的文档,待文档解析数据落入文档索引库后,即可找出问题对应的精确答案和问题的相关文本(即参考答案);同时,本发明在答案抽取的接触上,增加了对文档标题的应用,通过自动扩展标题作为问题,标题下的段落文本作为答案的句对,当客户提问标题类问题时即可快速获得答案;同时,本申请的融合策略中,当客户的问题存在对应的段落索引结果时即可输出问题对应的精确的答案,当客户询问的是比如词语、多关键词或者短文本时,即可通过全文索引结果获得与问题关联性高的文本,可见,利用本申请的技术方案,能够同时满足客户精确查找和模糊查找的需求。
需要说明的是,本发明实施例中的非结构化文档问答的装置与上述实施例中的非结构化文档问答的方法属于相同的发明构思,未在本装置中详述的技术细节可参见前面对方法的相关描述,在此不再赘述。
此外,本发明实施例还提供一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行前面所述的方法。
图9示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图9所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如空闲检测方法。
在一些实施例中,空闲检测方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的空闲检测方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行空闲检测方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (8)

1.一种非结构化文档问答的方法,其特征在于,所述方法包括:
创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引;
对于输入的待回答问题,利用召回算法从所述段落索引中获得与所述待回答问题最相关的段落,并进行答案抽取,获得段落索引结果;
对所述待回答问题和所述句对索引分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;
将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果;
将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案;其中,
当所述段落索引结果有结果返回时,则将所述段落索引结果作为答案,将所述句对索引结果和全文索引结果作为参考答案;
当所述段落索引结果没有结果返回,且所述句对索引结果有结果返回时,将所述句对索引结果作为答案,将所述全文索引结果作为参考答案;
当只有所全文索引结果有结果返回时,将检索结果最相关的全文索引结果作为答案,将其他检索结果作为参考答案;
其中,所述创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引包括:
在搜索引擎中分别创建段落索引、句对索引和全文索引;
将上传的每一篇文档利用文档解析器进行解析,分别获得每一篇文档的所有段落内容、标题及其段落内容、以及全文文本内容;
将所述所有段落内容,及所有段落的顺序存储至所述段落索引;
对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引;
将每一篇文档的所述全文文本内容载入所述全文索引。
2.根据权利要求1所述的方法,其特征在于,对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引包括:
所述标题分为至少两级子标题,并对每个子标题进行扩展;
将每个子标题的上级标题和当前子标题作为标题索引,将当前子标题对应的段落内容作为内容索引,分别对所述标题索引和所述内容索引进行向量化处理;
将向量化处理后的标题索引和内容索引存储至所述句对索引。
3.根据权利要求1所述的方法,其特征在于,对于输入的待回答问题,利用召回算法从所述段落索引中获得最相关段落,并进行答案抽取,获得段落索引结果包括:
将领域词典融入所述搜索引擎中,获得融合后的段落索引;
对于输入的待回答问题,利用BM25召回算法从所述段落索引中检索出第一预设数目个相关段落;
将所述第一预设数目个相关段落进行滑窗切分,利用二分类模型对于切分后的第一预设数目个相关段落进行排名;
选取排名位于前第二预设数目的相关段落作为最相关段落,其中,所述第一预设数目大于所述第二预设数目;
将所述待回答问题和所述最相关段落内容进行拼接后输入MRC模型;
利用所述MRC模型获得待回答问题的答案的起始位置和终止位置;
当所述答案的起始位置和终止位置代表的字符串存在内容时,则获得段落索引结果。
4.根据权利要求1所述的方法,其特征在于,对所述待回答问题和所述句对索引分别进行向量化处理,并计算相似度得分,将相似度得分记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果包括:
利用ConSERT模型对所述待回答问题和所述句对索引中分别进行向量化处理;
计算待回答问题的向量化结果和所述句对索引各标题的向量化结果的相似度得分;
当相似度得分最高的记录大于得分阈值时,将相似度得分最高所对应的标题及其段落内容作为句对索引结果。
5.根据权利要求1所述的方法,其特征在于,将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果包括:
将所述待回答问题去除停用词;
对去除停用词后的待回答问题提取关键词;
将所述关键词及关键词的组合作为搜索关键字,利用BM25召回算法从所述全文索引中进行检索;
将检索出的前第三预设数目个检索结果作为全文索引结果。
6.一种非结构化文档问答的装置,其特征在于,所述装置包括:
索引创建模块,用于创建文档索引库,包括每一篇文档的段落索引、句对索引和全文索引;
段落索引结果获取模块,用于对于输入的待回答问题,利用召回算法从所述段落索引中获得最相关段落,并进行答案抽取,获得段落索引结果;
句对索引结果获取模块,用于利用ConSERT模型对所述待回答问题和所述句对索引分别进行向量化处理,并计算相似度得分,将相似度得分的记录大于得分阈值的句对索引对应的标题及段落内容作为句对索引结果;
全文索引结果获取模块,用于将所述待回答问题去除停用词后,利用所述召回算法从所述全文索引中进行搜索,获得全文索引结果;
答案输出模块,用于将所述段落索引结果、句对索引结果和全文索引结果进行融合处理,按照预设策略整合,获得所述待回答问题的答案和参考答案;其中,
所述答案输出模块具体用于:
当所述段落索引结果有结果返回时,则将所述段落索引结果作为答案,将所述句对索引结果和全文索引结果作为参考答案;
当所述段落索引结果没有结果返回,且所述句对索引结果有结果返回时,将所述句对索引结果作为答案,将所述全文索引结果作为参考答案;
当只有所全文索引结果有结果返回时,将检索结果最相关的全文索引结果作为答案,将其他检索结果作为参考答案;
其中,所述索引创建模块具体用于:
在搜索引擎中分别创建段落索引、句对索引和全文索引;
将上传的每一篇文档利用文档解析器进行解析,分别获得每一篇文档的所有段落内容、标题及其段落内容、以及全文文本内容;
将所述所有段落内容,及所有段落的顺序存储至所述段落索引;
对每一篇文档的标题及其段落内容进行组合及向量化处理后存储至所述句对索引;
将每一篇文档的所述全文文本内容载入所述全文索引。
7.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至5中任一项所述的方法。
8.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至5中任一项所述的方法。
CN202211501006.8A 2022-11-28 2022-11-28 非结构化文档问答的方法、装置、存储介质和设备 Active CN115828893B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211501006.8A CN115828893B (zh) 2022-11-28 2022-11-28 非结构化文档问答的方法、装置、存储介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211501006.8A CN115828893B (zh) 2022-11-28 2022-11-28 非结构化文档问答的方法、装置、存储介质和设备

Publications (2)

Publication Number Publication Date
CN115828893A CN115828893A (zh) 2023-03-21
CN115828893B true CN115828893B (zh) 2023-11-17

Family

ID=85532099

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211501006.8A Active CN115828893B (zh) 2022-11-28 2022-11-28 非结构化文档问答的方法、装置、存储介质和设备

Country Status (1)

Country Link
CN (1) CN115828893B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117909451B (zh) * 2024-03-18 2024-06-28 中国电子技术标准化研究院 问答结果溯源方法、装置、设备、介质及程序产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800284A (zh) * 2018-12-19 2019-05-24 中国电子科技集团公司第二十八研究所 一种面向任务的非结构化信息智能问答系统构建方法
CN111611361A (zh) * 2020-04-01 2020-09-01 西南电子技术研究所(中国电子科技集团公司第十研究所) 抽取式机器智能阅读理解问答系统
CN111930895A (zh) * 2020-08-14 2020-11-13 工银科技有限公司 基于mrc的文档数据检索方法、装置、设备及存储介质
CN112818093A (zh) * 2021-01-18 2021-05-18 平安国际智慧城市科技股份有限公司 基于语义匹配的证据文档检索方法、系统及存储介质
CN112883182A (zh) * 2021-03-05 2021-06-01 海信电子科技(武汉)有限公司 一种基于机器阅读的问答匹配方法及装置
CN114579796A (zh) * 2022-05-06 2022-06-03 北京沃丰时代数据科技有限公司 机器阅读理解方法及装置
CN115080717A (zh) * 2022-06-02 2022-09-20 特赞(上海)信息科技有限公司 基于文本理解推理的问答方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102094934B1 (ko) * 2014-11-19 2020-03-31 한국전자통신연구원 자연어 질의 응답 시스템 및 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800284A (zh) * 2018-12-19 2019-05-24 中国电子科技集团公司第二十八研究所 一种面向任务的非结构化信息智能问答系统构建方法
CN111611361A (zh) * 2020-04-01 2020-09-01 西南电子技术研究所(中国电子科技集团公司第十研究所) 抽取式机器智能阅读理解问答系统
CN111930895A (zh) * 2020-08-14 2020-11-13 工银科技有限公司 基于mrc的文档数据检索方法、装置、设备及存储介质
CN112818093A (zh) * 2021-01-18 2021-05-18 平安国际智慧城市科技股份有限公司 基于语义匹配的证据文档检索方法、系统及存储介质
CN112883182A (zh) * 2021-03-05 2021-06-01 海信电子科技(武汉)有限公司 一种基于机器阅读的问答匹配方法及装置
CN114579796A (zh) * 2022-05-06 2022-06-03 北京沃丰时代数据科技有限公司 机器阅读理解方法及装置
CN115080717A (zh) * 2022-06-02 2022-09-20 特赞(上海)信息科技有限公司 基于文本理解推理的问答方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于特征增强的机器阅读理解模型的研究及应用;王舒怡;中国优秀硕士学位论文全文数据库 信息科技辑(第01期);1-64 *

Also Published As

Publication number Publication date
CN115828893A (zh) 2023-03-21

Similar Documents

Publication Publication Date Title
CN110502621B (zh) 问答方法、问答装置、计算机设备及存储介质
US11521603B2 (en) Automatically generating conference minutes
CN110929038B (zh) 基于知识图谱的实体链接方法、装置、设备和存储介质
US20160292153A1 (en) Identification of examples in documents
CN105095204A (zh) 同义词的获取方法及装置
CN110162768B (zh) 实体关系的获取方法、装置、计算机可读介质及电子设备
CN108804592A (zh) 知识库检索实现方法
AU2018226420B2 (en) Voice assisted intelligent searching in mobile documents
US10606903B2 (en) Multi-dimensional query based extraction of polarity-aware content
CN115828893B (zh) 非结构化文档问答的方法、装置、存储介质和设备
CN110705285B (zh) 一种政务文本主题词库构建方法、装置、服务器及可读存储介质
CN118296120A (zh) 多模态多尺度多路召回的大型语言模型检索增强生成方法
CN112199487B (zh) 一种基于知识图谱的电影问答查询系统及其方法
CN113761104A (zh) 知识图谱中实体关系的检测方法、装置和电子设备
CN109684357B (zh) 信息处理方法及装置、存储介质、终端
CN111046168A (zh) 用于生成专利概述信息的方法、装置、电子设备和介质
CN114201607B (zh) 一种信息处理的方法和装置
CN116628278A (zh) 多模态搜索方法、装置、存储介质和设备
CN113553410B (zh) 长文档处理方法、处理装置、电子设备和存储介质
CN111949781B (zh) 一种基于自然语句句法分析的智能交互方法及装置
Rofiq Indonesian news extractive text summarization using latent semantic analysis
CN114116914A (zh) 基于语义标签的实体检索方法、装置及电子设备
CN112528644A (zh) 实体挂载的方法、装置、设备以及存储介质
CN111400577A (zh) 一种搜索召回方法及装置
CN115858729A (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