
技术摘要:
本发明公开了一种推理问答方法、装置以及设备。具体是提出源于实体共现思路的启发式文档检索算法,其能够有效检索出复杂问题所隐含的相关线索文档,同时可以平衡算法效率与准确性;此外,提出了将检索出的目标文档进行拓扑化,作为后续解答、抽取答案的基础;最后再综 全部
背景技术:
在人们的日常生活中,需要通过互联网获取某些问题答案的场景非常普遍,这些 需要获取的信息往往通过使用问题相关关键字在搜索引擎中进行检索后人工浏览得到。然 而,随着信息爆炸的时代到来,网络中充斥着越来越多的垃圾和重复信息,导致使用传统搜 索引擎寻找问题答案的过程变得繁琐和低效。因此,人们往往希望拥有能直接通过输入问 题即可返回最终答案的自动问答机制。 随着近些年来人工智能特别是计算语言学的飞速发展,推动了传统的问答机制准 确率的迅速提升并开始走向实用领域。当人们想要获取某个问题的答案时,只需要输入问 题即可迅速得获得答案。目前,谷歌、百度等主要的搜索引擎都已将问答服务作为整个搜索 引擎中的子系统投入使用,当用户搜索问题为简单问题时,将由问答系统直接返回答案给 用户。 然而,现有的问答系统往往通过遍历文档库中的每一个文档,并匹配与问题具有 相似语义的文本片段作为答案。这种问答方式不具备任何推理能力,因此无法回答较为复 杂的问题,同时在检索过程中以及检索后也无法挖掘并结合多个文档的信息,这些缺陷制 约了目前问答机制的实用效果。
技术实现要素:
鉴于上述,本发明旨在提供一种推理问答方法、装置以及设备,并相应地提出一种 计算机可读存储介质以及计算机程序产品,通过这些方面能够模拟人类的推理行为,从而 回答那些需要一定推理能力才能得出答案的复杂问题。 本发明采用的技术方案如下: 第一方面,本发明提供了一种推理问答方法,包括: 根据输入问题在知识库中启发式检索出包含解答相关线索的目标文档; 基于所述目标文档构建相应的图结构; 结合所述输入问题、所述目标文档、所述图结构以及预设的推理解答策略,预测并 输出答案。 在其中一种可能的实现方式中,所述根据输入问题在知识库中启发式检索出包含 解答相关线索的目标文档包括: 利用多轮相关性计算以及实体提取策略,从知识库中筛选出包含解答相关线索的 若干候选文档; 结合所述输入问题,对所述候选文档进行相关性重估; 根据重估结果进行重排序,并选取若干高分候选文档作为所述目标文档。 在其中一种可能的实现方式中,所述利用多轮相关性计算以及实体提取策略,从 5 CN 111597314 A 说 明 书 2/18 页 知识库中筛选出包含解答相关线索的若干候选文档包括: 计算知识库中各第一文档相对于所述输入问题的相关性得分; 根据相关性得分,排序后选取若干高分第一文档构建候选文档集合; 从所述候选文档集合内的第一文档中提取若干实体; 在知识库中检索出与所述实体相关的第二文档; 计算各所述第二文档相对于所述输入问题的相关性得分; 根据相关性得分,排序后选取若干高分第二文档补入所述候选文档集合。 在其中一种可能的实现方式中,所述结合所述输入问题,对所述候选文档进行相 关性重估包括: 基于预设的语义表示策略,将所述输入问题的信息嵌入到各所述候选文档中,得 到包含了上下文信息的各所述候选文档的各单词表示; 根据所述单词表示,重新计算各所述候选文档的相关性得分。 在其中一种可能的实现方式中,所述基于所述目标文档构建相应的图结构包括: 识别出所述目标文档中的命名实体; 将所述命名实体以及所述目标文档中的语句作为节点,并基于预设的共现关联策 略,构建异构图。 在其中一种可能的实现方式中,所述共现关联策略包括如下一或多种: 相同命名实体之间建立连接关系; 每个命名实体与处于同一语句中的其他命名实体建立连接关系; 每个命名实体与所在语句建立连接关系; 每个语句与其相邻的前后语句建立连接关系; 任意两个语句中若存在相互连接的命名实体,此两个语句建立连接关系。 在其中一种可能的实现方式中,所述推理解答策略包括: 将全部所述目标文档拼接为线索字符串; 基于预设的语义表示策略,将所述输入问题的信息嵌入到所述线索字符串,得到 包含了上下文信息的所述线索字符串的各单词表示; 利用所述单词表示对所述图结构中相应的节点进行编码; 对编码后的节点进行迭代计算,建立节点之间的推理关系。 在其中一种可能的实现方式中,所述对编码后的节点进行迭代计算,建立节点之 间的推理关系包括: 将与所述输入问题相关的节点作为起始节点; 计算所述起始节点与各相邻节点间的注意力得分; 由所述起始节点与得分最高的相邻节点形成单步推理后的推理链; 将所述得分最高的相邻节点作为起始节点,按上述方式进行多轮迭代,得到完整 的推理链。 在其中一种可能的实现方式中,所述预测并输出答案包括: 基于最终形成的所述推理关系,将预测出的最后一个节点作为最终答案直接输 出; 或者, 6 CN 111597314 A 说 明 书 3/18 页 根据经由迭代计算后包含了推理信息的所述图结构中的各节点,在所述线索字符 串中预测答案所在文本片段; 将所述文本片段作为最终答案并输出。 在其中一种可能的实现方式中,所述根据经由迭代计算后包含了推理信息的所述 图结构中的各节点,在所述线索字符串中预测答案所在文本片段包括: 将多轮推理后得到的各节点表示,与包含问题信息的所述单词表示融合后,对所 述线索字符串中各单词表示进行更新; 根据更新后的各单词表示,在所述线索字符串中预测出若干答案起始单词以及若 干答案结束单词,并计算对应的概率值; 由所述答案起始单词与所述答案结束单词组成若干文本起始对; 选取组合概率值最大的文本起始对所对应的文本内容作为所述文本片段。 第二方面,本发明提供了一种推理问答装置,包括: 线索文档检索模块,用于根据输入问题在知识库中启发式检索出包含解答相关线 索的目标文档; 图结构构建模块,用于基于所述目标文档构建相应的图结构; 推理解答模块,用于结合所述输入问题、所述目标文档、所述图结构以及预设的推 理解答策略,预测并输出答案。 在其中一种可能的实现方式中,所述线索文档检索模块包括: 候选文档筛选子模块,用于利用多轮相关性计算以及实体提取策略,从知识库中 筛选出包含解答相关线索的若干候选文档; 相关性重估子模块,用于结合所述输入问题,对所述候选文档进行相关性重估; 线索文档确定子模块,用于根据重估结果进行重排序,并选取若干高分候选文档 作为所述目标文档。 在其中一种可能的实现方式中,所述候选文档筛选子模块包括: 第一计算单元,用于计算知识库中各第一文档相对于所述输入问题的相关性得 分; 候选文档初步确定单元,用于根据相关性得分,排序后选取若干高分第一文档构 建候选文档集合; 实体提取单元,用于从所述候选文档集合内的第一文档中提取若干实体; 第二文档检索单元,用于在知识库中检索出与所述实体相关的第二文档; 第二计算单元,用于计算各所述第二文档相对于所述输入问题的相关性得分; 候选文档初最终确定单元,用于根据相关性得分,排序后选取若干高分第二文档 补入所述候选文档集合。 在其中一种可能的实现方式中,所述相关性重估子模块包括: 候选文档语义表示单元,用于基于预设的语义表示策略,将所述输入问题的信息 嵌入到各所述候选文档中,得到包含了上下文信息的各所述候选文档的各单词表示; 相关性重估单元,用于根据所述单词表示,重新计算各所述候选文档的相关性得 分。 在其中一种可能的实现方式中,所述图结构构建模块包括: 7 CN 111597314 A 说 明 书 4/18 页 命名实体识别单元,用于识别出所述目标文档中的命名实体; 异构图构建单元,用于将所述命名实体以及所述目标文档中的语句作为节点,并 基于预设的共现关联策略,构建异构图。 在其中一种可能的实现方式中,所述共现关联策略包括如下一或多种: 相同命名实体之间建立连接关系; 每个命名实体与处于同一语句中的其他命名实体建立连接关系; 每个命名实体与所在语句建立连接关系; 每个语句与其相邻的前后语句建立连接关系; 任意两个语句中若存在相互连接的命名实体,此两个语句建立连接关系。 在其中一种可能的实现方式中,所述推理解答模块包括: 文档融合子模块,用于将全部所述目标文档拼接为线索字符串; 线索字符串语义表示子模块,用于基于预设的语义表示策略,将所述输入问题的 信息嵌入到所述线索字符串,得到包含了上下文信息的所述线索字符串的各单词表示; 图结构节点编码子模块,用于利用所述单词表示对所述图结构中相应的节点进行 编码; 推理子模块,用于对编码后的节点进行迭代计算,建立节点之间的推理关系。 在其中一种可能的实现方式中,所述推理子模块包括: 推理起始单元,用于将与所述输入问题相关的节点作为起始节点; 注意力得分计算单元,用于计算所述起始节点与各相邻节点间的注意力得分; 推理链形成单元,用于由所述起始节点与得分最高的相邻节点形成单步推理后的 推理链; 迭代推理单元,用于将所述得分最高的相邻节点作为起始节点,按上述方式进行 多轮迭代,得到完整的推理链。 在其中一种可能的实现方式中,所述推理解答模块包括答案输出子模块: 所述答案输出子模块具体包括: 第一解答单元,用于基于最终形成的所述推理关系,将预测出的最后一个节点作 为最终答案直接输出; 或者, 第二解答单元,用于根据经由迭代计算后包含了推理信息的所述图结构中的各节 点,在所述线索字符串中预测答案所在文本片段;将所述文本片段作为最终答案并输出。 在其中一种可能的实现方式中,所述第二解答单元包括: 线索字符串表示更新组件,用于将多轮推理后得到的各节点表示,与包含问题信 息的所述单词表示融合后,对所述线索字符串中各单词表示进行更新; 答案起始单词预测组件,用于根据更新后的各单词表示,在所述线索字符串中预 测出若干答案起始单词以及若干答案结束单词,并计算对应的概率值; 起始单词组对组件,用于由所述答案起始单词与所述答案结束单词组成若干文本 起始对; 文本片段确定组件,用于选取组合概率值最大的文本起始对所对应的文本内容作 为所述文本片段。 8 CN 111597314 A 说 明 书 5/18 页 第三方面,本发明提供了一种推理问答设备,包括: 一个或多个处理器、存储器以及一个或多个计算机程序,所述存储器可以采用非 易失性存储介质,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多 个计算机程序包括指令,当所述指令被所述设备执行时,使得所述设备执行如第一方面或 者第一方面的任一可能实现方式中的所述方法。 第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质中存 储有计算机程序,当其在计算机上运行时,使得计算机执行如第一方面或者第一方面的任 一可能实现方式中的所述方法。 第五方面,本发明还提供了一种计算机程序产品,当所述计算机程序产品被计算 机执行时,用于执行第一方面或者第一方面的任一可能实现方式中的所述方法。 在第五方面的一种可能的设计中,该产品涉及到的相关程序可以全部或者部分存 储在与处理器封装在一起的存储器上,也可以部分或者全部存储在不与处理器封装在一起 的存储介质上。 本发明的构思在于,提出了用于检索复杂问题相关文档的启发式文本检索方式。 传统的文档检索算法往往只通过TF-IDF等基于词频的方式检索相关文档,这种检索方式无 法挖掘出解答复杂问题所必要却与问题本身无对应关键词的文档(即可以理解为间接相 关)。本发明的实施例中对检索过程使用了实体共现关系设计,可以从与问题最相关的文档 扩展到与这些文档所描述实体对象有联系的其他文档,对于复杂问题的文档检索实现了很 好的召回效果。同时,在进一步方案中对于启发检索得到的候选文档使进行重打分、重排 序,由此大大提高了下游任务得到的目标文档的准确率,并平衡了系统的整体性能与效率。 相较于传统的抽取式问答系统,在获得上述精准且覆盖全面的线索文档后,通过 将多篇文档建模为图结构,以此作为下游答案推理、抽取的逻辑基点。进一步地,节点与节 点之间的连接关系同样基于了命名实体和/或语句之间在文本中的共现关系而决定,这样 做的效果之一是大大减少了后续推理过程中可能出现的噪音。 本发明结合前述环节得到结果以及用户问题所包含的信息来实现文本推理功能, 而传统的抽取式问答模型往往只能通过简单的语义匹配,即从文档中匹配与问题语义相近 的片段作为答案,可见这种问答机制不具有任何推理能力且只能回答较为简单的问题。因 此,本发明所实现的问答系统不但能够在回答问题时联合多篇文档的信息,同时可以模拟 出人类推理时从一个对象跳转到另一个对象的行为,进而可以可靠、有效地回答较为复杂 的用户问题。 还需进一步指出,本发明的某些实施例基于抽取式问答机制,因而必然具备了抽 取式问答的优势,具体来说,可以从原始文本中抽取一段连续的文本片段作为答案,且相比 于基于检索式的问答机制和基于知识库的问答机制,不需要提前录入大量的领域知识,因 此具有更好的扩展性。 附图说明 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一 步描述,其中: 图1为本发明提供的推理问答方法的实施例的流程图; 9 CN 111597314 A 说 明 书 6/18 页 图2为本发明提供的启发式检索方法的实施例的流程图; 图3为本发明提供的两阶段候选文档获取方法的实施例的流程图; 图4为本发明提供的转换存储图结构的实施例的示意图; 图5为本发明提供的推理解答策略的较佳实施例的流程图; 图6为本发明提供的多轮推理方法的实施例的流程图; 图7为本发明提供的解答输出方法的实施例的流程图; 图8为本发明提供的推理问答装置的实施例的方框图; 图9为本发明提供的推理问答设备的实施例的示意图。