非事实型问答系统和方法及用于其的计算机程序与流程

文档序号:17850622发布日期:2019-06-11 22:10阅读:155来源:国知局

该发明涉及问答系统,尤其涉及对理由、方法、定义等非事实型提问的问答系统的改善,而不是关于可以用简单的单词回答的事实的提问。



背景技术:

因果关系是为什么型问答任务中最重要的语义知识。为什么型问答任务是一种检索由大量的文本构成的文本存档并取出对于“为什么会发生海啸?”这样的为什么型提问的回答的任务。作为用于此的在先技术,有非专利文献1中公开的技术。在该非专利文献1中,使用“至于为什么(なぜなら)”这样的线索词或者“a是原因,引起b”这样的特定的因果关系模式来识别回答段落中的因果关系,并将识别的因果关系用作回答选择或者回答排序的线索。作为进行这样的处理的例子,有回答段落的正确/错误分类、基于正确程度的回答段落的排序等。

在先技术文献

非专利文献

非专利文献1:j.-h.oh,k.torisawa,c.hashimoto,m.sano,s.desaeger,andk.ohtake.why-questionansweringusingintra-andinter-sententialcausalrelations.inproceedingsofthe51stannualmeetingoftheassociationforcomputationallinguistics(acl2013),pp.1733-1743,sofia,bulgaria,august,2013.



技术实现要素:

发明要解决的课题

但是,在依赖于明确的线索词或者模式的在先技术中,有如下问题,即:在回答段落内的因果关系以隐含而不是以明确的形式(没有线索词)表达的情况下,不能准确地识别因果关系。例如,假设使用以下那样的提问和回答的情况。

[表1]

在此,带下划线的部分ce1表示因果关系,但没有使用线索词。由于ce1这样的表达中没有线索词,因此在以往的技术中不能识别该因果关系,因此推断在上述那样的问题中不能找到回答1那样的回答。

此外,如上所述,虽然在为什么型问答任务中因果关系是最重要的语义知识,但不仅有只能通过与因果关系有关的语义知识来推断回答的提问,还有针对除此之外的语义关系的提问。因此,期望一种即使针对一般的非事实型提问也能够高精度地找到回答的问答系统。

因此,本发明的目的在于,提供一种能够通过利用回答的模式来向非事实型提问提供准确的回答的非事实型问答系统及用于其的计算机程序,所述回答包括没有明确地包括线索词这样的因果关系等语义关系的表达。

用于解决课题的技术方案

本发明的第一方面所涉及的非事实型问答系统着眼于表示文章内出现的第一语义的关系的表达来生成对非事实型的提问的应答。该非事实型问答系统包括:第一表达存储单元,存储表示第一语义的关系的多个表达;提问/回答接收单元,接收提问和包括对该提问的回答候补的多个回答段落;第一表达提取单元,从多个回答段落的每一个中提取表示第一语义的关系的语义的关系表达;关联表达选择单元,对于提问和多个回答段落的每个组合,从第一表达存储单元存储的多个表达中选择作为与该组合最相关的表达的关联表达;以及回答选择单元,预先通过机械学习进行了学习,使得接受由提问、多个回答段落、对该回答段落的语义的关系表达以及对该提问和该回答段落的组合的一个关联表达构成的每个组合作为输入,并从多个回答段落中选择对提问的回答。

优选为,非事实型问答系统还包括:第一语义的相关关系量计算单元,对于提问和多个回答段落的每个组合,计算第一表达存储单元存储的多个表达内的、提问中出现的各单词和该回答段落中出现的各单词的第一语义的相关关系量。回答选择单元包括:评价单元,预先通过机械学习进行了学习,使得接受提问、多个回答段落、对该回答段落的语义的关系表达以及对提问和该回答段落的组合的关联表达的组合作为输入,使用第一语义的相关关系量作为对输入中的各单词的加权,计算并输出表示作为该回答段落是对提问的回答的度量的评价值;以及选择单元,对于多个回答段落的每一个,使用评价单元输出的评价值来选择多个回答段落中的任意一个作为对提问的回答。

更优选为,非事实型问答系统还包括:第一语义的关系表达提取单元,从文档存档中提取表示第一语义的关系的表达并存放到第一表达存储单元中。

进而优选为,第一语义的相关关系量计算单元包括:第一语义的相关关系量存储单元,对于各单词对计算并存储第一表达存储单元存储的、表示第一语义的关系的多个表达中包括的单词对的第一语义的相关关系量;第一矩阵生成单元,针对提问和多个回答段落的每个组合,对于该提问内的单词和该回答段落内的一个单词的每一对,从第一语义的相关关系量存储单元中读出第一语义的相关关系量,并生成第一矩阵,所述第一矩阵是提问内的单词排列在一个轴上且该回答段落内的单词排列在另一个轴上所获得的矩阵,即在一个轴和另一个轴交叉的位置的单元格中分别配置与该位置对应的单词彼此的第一语义的相关关系量所获得的矩阵;以及第二矩阵生成单元,生成由第一单词-句子矩阵以及第二单词-句子矩阵构成的两个第二矩阵,在所述第一单词-句子矩阵中,对于第一矩阵的一个轴上配置的各单词,存储另一个轴向上配置的第一语义的相关关系量的最大值,在所述第二单词-句子矩阵中,对于第一矩阵的另一个轴上配置的各单词,存储一个轴向上配置的第一语义的相关关系量的最大值。非事实型问答系统还包括:单元,用于使用第一单词-句子矩阵的第一语义的相关关系量,对于提供到回答选择单元的、提问内出现的每个单词进行加权,并使用第二单词-句子矩阵的第一语义的相关关系量,对于提供到回答选择单元的、回答段落内出现的每个单词进行加权。

优选为,两个第二矩阵中存储的每个第一语义的相关关系量在给定的区间归一化。

更优选为,第一语义的关系为因果关系。

进而优选为,表示因果关系的每个表达包括原因部和结果部。关联表达选择单元包括:第一单词提取单元,从提问中提取名词、动词以及形容词;第一表达选择单元,从第一表达存储单元存储的表达中选择给定个数的、在结果部中包括第一单词提取单元提取的所有的名词的表达;第二表达选择单元,从第一表达存储单元存储的表达中选择给定个数的、在结果部中包括第一单词提取单元提取的所有的名词且包括第一单词提取单元提取的至少一个动词或者形容词的表达;以及关联因果关系表达选择单元,针对多个回答段落的每一个,选择第一表达选择单元以及第二表达选择单元选择的表达当中的、在结果部中具有与该回答段落共用的单词且通过分值判断为与该回答段落关联最高的表达,该分值通过对该共用的单词的加权来计算。

优选为,非事实型问答系统通过着眼于表示文章内出现的第一语义的关系的表达和表示第二语义的关系的表达,来生成对非事实型的提问的应答。该非事实型问答系统还包括:第二表达存储单元,存储表示第二语义的关系的多个表达;以及第二语义的相关关系量计算单元,对于提问和多个回答段落的每个组合,计算第二语义的相关关系量,所述第二语义的相关关系量表示第二表达存储单元存储的多个表达内的、提问中出现的各单词和该回答段落中出现的各单词的相关关系。评价单元包括:神经网络,预先通过机械学习进行了学习,使得通过接受提问、多个回答段落、对该回答段落的第一表达提取单元提取的含义关系表达以及对提问和该回答段落的关联表达的组合作为输入,并使用第一语义的相关关系量和第二语义的相关关系量作为对输入中的各单词的加权,从而输出评价值。

更优选为,第二语义的关系是不限于特定的语义关系的通常的语义关系,第二表达存储单元存储随机收集的表达。

本发明的第二方面所涉及的计算机程序使计算机作为上述任意一个装置的各单元发挥功能。

本发明的第三方面所涉及的对非事实型提问的应答方法是一种通过着眼于表示文章内出现的给定的第一语义的关系的表达,来生成对非事实型的提问的应答,并通过计算机实现的方法。该方法包括以下步骤:计算机与第一存储装置能够通信地连接,所述第一存储装置存储了表示第一语义的关系的多个表达;计算机经由输入装置接收提问和包括对该提问的回答候补的多个回答段落;计算机从多个回答段落的每一个中提取表示第一语义的关系的表达;对于提问和多个回答段落的每个组合,计算机从第一表达存储单元存储的多个表达中选择与该组合最关联的表达;以及计算机通过将由提问、多个回答段落、在进行提取的步骤中提取的多个表达以及在进行选择的步骤中选择的一个表达构成的每个组合输入到回答选择单元中并获得其输出,从而生成对提问的应答,所述应答选择单元预先通过机械学习进行了学习使得从多个回答段落中选择对提问的回答。

优选为,该方法还包括以下步骤:对于提问和多个回答段落的每个组合,计算机计算第一语义的相关关系量,所述第一语义的相关关系量表示第一表达存储单元存储的多个表达内的、提问中出现的各单词和该回答段落中出现的各单词的相关关系。进行选择的步骤包括以下步骤:计算机将提问、多个回答段落、在从该回答段落中进行提取的步骤中提取的表达以及对于提问和该回答段落在选择步骤中选择的表达的每个组合提供给评价单元作为输入,所述评价单元预先通过机械学习进行了学习使得计算并输出表示作为该回答段落是对提问的回答的度量的评价值。在评价值的计算中,评价单元使用第一语义的相关关系量作为对输入中的各单词的加权,方法还包括以下步骤:计算机对于多个回答段落的每一个使用评价单元输出的评价值并选择多个回答段落中的任意一个作为对提问的回答。

本发明的第四方面所涉及的非事实问答系统包括:提问/回答接收单元,接受问句和对该问句的多个回答段落;因果关系表达提取单元,从多个回答段落中提取多个回答内因果关系表达;以及存档因果关系表达存储单元,存储从由大量的文档构成的文档存档中提取的多个存档因果关系表达。回答内因果关系表达以及存档因果关系表达分别包括原因部和结果部。非事实型问答系统还包括:排序单元,用于针对存档因果关系表达存储单元中存储的多个存档因果关系表达,基于与每个回答段落的关联度的大小进行排序,并针对提问和回答段落的每个组合,选择排名居高的存档因果关系表达;以及分类单元,预先通过机械学习进行了学习,使得接受提问、多个回答段落、多个回答内因果关系表达以及由排序单元选择的存档因果关系表达作为输入,并选择多个回答段落中的任意一个作为对提问的回答。

优选为,非事实型问答系统还包括:相关关系量存储单元,存储作为度量的相关关系量,所述度量表示各回答段落中使用的各单词对的相关关系;以及加权赋予单元,用于针对提问和每个回答段落的每个组合,对于从提问中提取的单词和从回答段落中提取的单词的每个组合,从相关关系量存储单元中读出相关关系量,对于提供给分类单元的提问和回答段落的各单词,赋予与相关关系量相应的加权。

更优选为,加权赋予单元包括:第一矩阵生成单元,针对提问和每个回答段落的每个组合,对于从提问中提取的单词和从回答段落中提取的单词的每个组合,从相关关系量存储单元中读出相关关系量,并生成由单词-单词相关关系量矩阵构成的第一矩阵,在所述单词-单词相关关系量矩阵中,一个轴为从提问中提取的单词的排列,另一个轴为从回答段落中提取的单词的排列,且在一个轴和另一个轴交叉的位置上分别配置与各轴的该位置对应的单词彼此的相关关系量;第二矩阵生成单元,生成由第一单词-句子矩阵以及第二单词-句子矩阵构成的两个第二矩阵,在所述第一单词-句子矩阵中,对于在相关关系量矩阵的一个轴上配置的各单词,存储在另一个轴向上配置的相关关系量的最大值,在所述第二单词-句子矩阵中,对于相关关系量矩阵的另一个轴上配置的各单词,存储在一个轴向上配置的相关关系量的最大值;以及单元,用于使用第一矩阵以及第一单词-句子矩阵对提供给分类单元的、表示提问的每个词矢量进行基于因果关系注意的加权,使用第一矩阵以及所述第二单词-句子矩阵对表示回答段落的每个单词矢量进行基于因果关系注意的加权。

进而优选为,第一矩阵以及两个第二矩阵中存储的相关关系量在0至1之间被归一化。

排序单元也可以包括:第一单词提取单元,从提问中提取名词、动词以及形容词;第一存档因果关系表达选择单元,从存档因果关系表达中选择给定个数的、包括由第一单词提取单元提取的所有的名词的表达;第二存档因果关系表达选择单元,从存档因果关系表达中选择给定个数的、包括由第一单词提取单元提取的所有的名词且包括由第一单词提取单元提取的至少一个动词或者形容词的表达;以及关联因果关系表达选择单元,针对每个回答段落,选择由第一以及第二存档因果关系选择单元选择的存档因果关系表达当中的、在结果部中具有与该回答段落共用的单词且通过分值判断为与该回答段落关联最高的表达,该分值通过对该共用的单词的加权来计算。

附图说明

图1是示出本发明的第一实施方式所涉及的非事实型问答系统的概略结构的框图。

图2是示出图1所示的提问关联存档因果关系表达选择部的概略结构的框图。

图3是示出单词之间的相互信息量矩阵的结构的概略图。

图4是示出本发明的第一实施方式中使用的、多列的卷积神经网络的概略结构的图。

图5是用于说明卷积神经网络内的结构的示意图。

图6是用于说明本发明的第一实施方式所涉及的非事实型问答系统的学习过程的示意图。

图7是示出用于通过计算机实现本发明的第一实施方式所涉及的非事实型问答系统的程序的控制构造的流程图。

图8是以表格形式示出本发明的第一实施方式所涉及的非事实型问答系统的实验结果的图。

图9是将本发明的第一实施方式所涉及的非事实型问答系统的性能与以往技术进行比较的图表。

图10是示出实现本发明的第一实施方式所涉及的非事实型问答系统的计算机系统的外观的图。

图11是示出在图10中示出外观的计算机系统的硬件结构的框图。

图12是示出本发明的第二实施方式所涉及的非事实型问答系统的概略结构的框图。

图13是示出图12所示的相似度注意矩阵生成部的概略结构的框图。

图14是用于示出图12所示的卷积神经网络内的概略结构的示意图。

图15是示出用于通过计算机实现第二实施方式所涉及的非事实型问答系统的程序的控制构造的流程图。

图16是以表格形式将第二实施方式所涉及的非事实型问答系统的回答的精度与以往的方法以及第一实施方式的精度一并示出的图。

具体实施方式

在以下的说明以及附图中,对相同的部件标注相同的参照编号。因此,不再重复针对其详细的说明。此外,在以下的实施方式中,作为第一语义的关系表达,将因果关系作为例子,但本发明不限于这些实施方式。如稍后所述,能够使用材料关系(例:<用a生产b>、(玉米、生物燃料)等)必要关系(例:<a对于b是必须的>、(阳光、光合作用)等)、使用关系(例:<将a用于b>、(ips细胞、再生医疗)、等)以及预防关系(例:<用a防止b>、(疫苗、流感)、等)或者这些任意的组合。

[基本思维方式]

上述ce1那样的因果关系表达能够使用线索词来换种说法表达为“由于地震,海底在上下方向上移动,其周边的海水也在上下方向上移动,因此海啸发生。”(ce2)(“因此(ため)”为线索词)。需要注意的是,即使在与2011年的东日本大地震无关的上下文中也会产生这种文章、仅仅该表达不足以作为对上述提问的回答。但是,如果能够使用明确的线索词等来自动地识别这种因果关系表达,且通过某种方式补充没有这种明确的线索词等的因果关系表达,则能够提高为什么型问答任务的回答的精度。

在以下的实施方式中,从包括明确的线索词等的大量的文本存档中选择与输入的提问和回答段落这两者关联的因果关系表达。回答段落是指具有对提问的回答的可能性、从现有的文档中提取的文档的片段。将所选择的因果关系表达与提问和回答段落一起提供给卷积神经网络,将表示正确的概率的分值赋予各回答段落作为对提问的回答,并选择认为最正确的回答作为对提问的回答。在以下的说明中,将从文本存档中提取的因果关系表达称为存档因果关系表达,将从回答段落提取的因果关系表达称为回答内因果关系表达。在以下的实施方式中,提取并使用与提问和回答段落这两者密切关联的存档因果关系表达,且将这些因果关系表达称为关联因果关系表达。

在以下的实施方式中,还采用了使用存档因果关系表达来补充隐含的因果关系表达这样的思维方式。例如,关注到上面列举的回答段落和包括明确的线索词等的因果关系表达ce2具有共用的单词(海和水),即使在假设不能确定隐含的因果关系表达的情况下,也认为这样共用的单词应该能够用作用于发现足够的回答的线索。也就是说,如果充分注意存档因果关系表达和回答段落之间共用的单词,则即使在不能识别回答段落内的隐含的因果关系表达时,也能够推断包括明确的线索词的存档因果关系表达作为其的换种说法,其结果,认为能够提高对提问的精度。在本说明书中,将这种思维方式称为因果关系注意(causality-attention:以下称为“ca”)。

即,假定海以及水这样的共用的单词与提问和其回答之间的因果关系直接或间接相关。在本说明书中,将这样的共用的单词称为ca单词(causality-attentionwords),并从存档因果关系表达中提取这样的单词。在以下的实施方式中,当找到对于提供的提问的原因或者理由时,分类器着眼于这样的ca单词并进行回答的选择。为了实现这样的功能,在以下的实施方式中,如稍后所述,使用由多个卷积神经网络构成的多列神经网络(multicolumnneuralnetwork:mcnn)作为分类器。在着眼于ca单词的语义上,将该mcnn称为ca-mcnn。

[第一实施方式]

〔结构〕

<非事实型问答系统30>

参照图1,本申请的第一实施方式所涉及的非事实型问答系统30包括:提问接受部50,接受提问32;应答接收部52,通过将提问接受部50接受的提问提供给现有的问答系统34,从而以某种方式从问答系统34接收给定个数的对提问32的回答段落;web存档存储部56,存储由大量的文档构成的web存档;以及因果关系注意处理部40,用于使用web存档存储部56中存储的web存档、提问接受部50接受的提问130以及应答接收部52从问答系统34接收到的回答段落来计算稍后叙述的因果关系注意矩阵。

因果关系注意处理部40包括:因果关系表达提取部58,通过现有的技术并使用线索词等从web存档存储部56中提取因果关系表达;存档因果关系表达存储部60,存储因果关系表达提取部58提取的因果关系表达(存档因果关系表达);相互信息量计算部62,提取存档因果关系表达存储部60中存储的存档因果关系表达中包括的单词,并计算相互信息量,该相互信息量是表示由[-1,1]进行了归一化的单词之间的相关关系的一个度量;相互信息量矩阵存储部64,存储相互信息量矩阵,在该相互信息量矩阵中,在两个轴上配置各单词,且在一个轴上的单词和另一个轴上的单词的交叉位置配置其单词对之间的相互信息量;以及因果关系注意矩阵生成部90,使用相互信息量矩阵存储部64中存储的相互信息量矩阵、提问接受部50接受的提问130以及针对提问130获得的回答段落,生成因果关系注意矩阵,该因果关系注意矩阵在计算作为对提问130的各回答段落的评价值的分值时使用。对于因果关系注意矩阵生成部90的结构将稍后叙述。此外,在本实施方式中,虽然将从因果关系表达获得的、作为表示单词彼此的相关关系的度量的相互信息量用作因果关系注意,但是还能够使用除此之外的度量作为表示相关关系的度量。例如,也可以使用因果关系表达的集合内的单词之间的搭配频率、dice系数、jaccard系数等表示相关关系的其他的度量。

非事实型问答系统30还包括:分类部54,使用应答接收部52接收的回答段落、提问接受部50接受的提问130、存档因果关系表达存储部60中存储的存档因果关系表达以及由因果关系注意矩阵生成部90生成的因果关系注意矩阵来计算并输出对提问32的回答段落的分值;回答候补存储部66,将由分类部54输出的分值和回答段落建立关联并存储为对提问32的回答候补;以及回答候补排序部68,根据分值按照降序对回答候补存储部66中存储的回答候补进行排序,并输出最高分值的回答候补作为回答36。

<分类部54>

分类部54包括:回答段落存储部80,用于存储应答接收部52接收的回答段落;因果关系表达提取部82,提取回答段落存储部80中存储的回答段落中包括的因果关系表达;以及回答内因果关系表达存储部84,存储由因果关系表达提取部82从回答段落中提取的关系表达。将这样从回答段落中提取的因果关系表达称为回答内因果关系表达。

分类部54还包括:关联因果关系表达提取部86,从存档因果关系表达存储部60中存储的存档因果关系表达中,分别提取与提问接受部50接受的提问130和回答段落存储部80中存储的每个回答段落的组合最相关的存档因果关系表达;以及关联因果关系表达存储部88,存储由关联因果关系表达提取部86提取的因果关系表达。由关联因果关系表达提取部86提取的存档因果关系表达被认为是回答段落内因果关系表达的换种说法。

分类部54还包括:神经网络92,预先学习完毕,使得接受提问接受部50接受的提问130、由回答内因果关系表达存储部84存储的回答内因果关系表达、关联因果关系表达存储部88中存储的关联因果关系表达以及由因果关系注意矩阵生成部90生成的因果关系注意矩阵的输入,并输出表示回答段落存储部80中存储的回答段落是对提问130的正确的回答的概率的分值。

如稍后所述,神经网络92是多列的卷积神经网络。通过由因果关系注意矩阵生成部90生成的因果关系注意,神经网络92尤其关注在回答段落存储部80中存储的回答段落内、被认为与提问130中包括的单词有关联的单词并计算分值。这样,被认为与提问130中包括的单词有关联的单词被认为是在人类的情况下各自具有的、基于与因果关系有关的常识进行选择的单词。因此,在本实施方式中,这样,基于相互信息量,如上所述,将着眼于回答段落中的单词并评价回答段落称为因果关系注意。此外,将使用这样的因果关系注意对回答段落赋予分值的多列的神经网络92称为ca-mcnn。对于该神经网络92的结构,将参照图4以及图5稍后叙述。

《关联因果关系表达提取部86》

关联因果关系表达提取部86包括:提问关联存档因果关系表达选择部110,从提问接受部50接受的提问130中提取内容词语,并选择存档因果关系表达存储部60中存储的存档因果关系表达当中的、在结果部具有从提问130中提取的单词的表达;提问关联因果关系表达存储部112,存储提问关联存档因果关系表达选择部110选择的存档因果关系表达;以及排序部114,针对回答段落存储部80中存储的每个回答段落,基于表示包括多少与回答段落共用的单词的给定的计算表达式,对提问关联因果关系表达存储部112中存储的提问关联因果关系表达进行排序,选择并输出最高位的提问关联因果关系表达作为与提问以及回答段落的组关联的因果关系表达。排序部114进行排序所使用的给定的表达式是由以下的表达式表示的加权单词出现数wgt-wc(x,y)。此外,以下,除了加权单词出现数wgt-wc(x,y)之外,还定义了三个评价值wc(x,y)、ratio(x,y)以及wgt-ratio(x,y)。这些均成为对神经网络92的输入。

[表达式1]

在此,mw(x,y)是表达x内的内容词语,且表示表达y中也存在的内容词语的集合,word(x)表示表达x内的内容词语的集合,idf(x)表示单词x的文档频率的倒数。在由上述排序部114进行的处理中,x表示提问关联因果关系的原因部,y表示回答段落。

-提问关联存档因果关系表达选择部110-

图2中示出关联因果关系表达提取部86内的提问关联存档因果关系表达选择部110的概略结构。参照图2,提问关联存档因果关系表达选择部110包括:名词提取部150,从提问接受部50接受提问130,并提取提问130中包括的名词;动词/形容词提取部152,提取提问130中包括的动词以及形容词;第一检索部154,用于检索存档因果关系表达存储部60,取出在结果部中包括由名词提取部150提取的所有的名词的存档因果关系表达,并存放到提问关联因果关系表达存储部112中;以及第二检索部156,用于检索存档因果关系表达存储部60,提取在结果部中包括提取名词提取部150提取的所有的名词和包括动词/形容词提取部152提取的至少一个动词以及形容词的存档因果关系表达,并存放到提问关联因果关系表达存储部112中。

《因果关系注意矩阵生成部90》

在本实施方式中,通过因果关系注意这一概念,在通过神经网络92进行回答段落的评分时,对提问以及回答段落中包括的ca单词赋予比其他更大的加权。用于此的是相互信息量矩阵。这里的加权表示提问中包括的ca单词和回答段落中包括的ca单词具有多少程度的因果关系上的关联性,在本实施方式中,该值使用单词之间的相互信息量。

设p(x,y)为表示单词x以及单词y分别存在于相同的存档因果关系表达的原因部以及结果部中的概率。从图1所示的存档因果关系表达存储部60中存储的所有的存档因果关系表达统计地获得该概率。设p(x,*)以及p(*,y)分别表示单词x以及单词y在存档因果关系表达的整体中分别在原因部以及结果部出现的概率。这样,如下所述,单词x以及y之间的因果关系的关联性的强度由在[-1,1]的范围内进行了归一化的逐点相互信息量(npmi)表示。

[表达式2]

在本实施方式中,如以下所述,使用两种因果关系注意矩阵。第一是单词-单词矩阵a,第二是单词-句子矩阵^a。还有两种单词-句子矩阵^a。一个是矩阵^aq,其由从提问内的各单词看到的、与回答段落内的各单词的相互信息量的最大值构成,另一个是矩阵^ap,其由从回答段落的各单词看到的、与提问内的各单词的相互信息量的最大值构成(顶帽符号“^”本来应该记载在紧随其后的文字的正上方。)

若假设提问q以及回答段落p,则矩阵a∈r|p|×|q|通过以下表达式求得。

[表达式3]

其中,qj以及pi分别表示提问的第j个单词以及回答段落的第i个单词。npmi(·)的值仅在npmi(·)>0时被代入a[i,j],在除此之外的情况下会变为0,因此只有变为npmi(·)>0的ca单词才会影响本实施方式的因果关系注意。此外,在npmi(·)<0时,也能够实现将值代入矩阵a[i,j]这样的实施方式。在实验中,如表达式(3)所示,在npmi(·)<0时,由于替换为0获得了更好的结果,因此在本实施方式中将表达式(3)的限制设为a[i,j]。

[表达式4]

在提供矩阵a的情况下,对于提问q以及回答段落p这一对的因果关系注意的表达x′q∈rd×|q|以及x′p∈rd×|p|由以下的表达式(4)(5)表示。

x′q=w′q·a(4)

x′p=w′q·at(5)

然而,加权矩阵w′q∈rd×|p|以及w′q∈rd×|q|是通过学习确定的参数。通过使用每个要素的和运算来将因果关系注意表达x′与单词嵌入矢量x结合,从而获得进行了基于因果关系注意的加权的单词嵌入矢量

在提问中的单词qj(或者回答段落中的单词pi)中,如果与该单词qj(或者单词pi)在因果关系上密切相关的单词多出现在对应的句子即回答段落(或者提问)内,则在因果关系注意表达中赋予了较大的注意加权。但是,由于在提问和其回答段落对中出现的单词数较少,因此矩阵a变为稀疏的矩阵。因此,难以有效地学习模型参数wq′以及wp′。为了解决该问题,从该矩阵a生成并使用上述矩阵^aq以及矩阵^ap(统一记为“^a”。)。对于这些将参照图3稍后叙述。

参照图1,因果关系注意处理部40的因果关系注意矩阵生成部90包括:单词提取部120,用于针对来自提问接受部50的提问130以及回答段落存储部80中存储的各个回答段落的每个组合,提取其中包括的所有的内容词语;第一矩阵计算部122,将由单词提取部120提取的提问的单词配置在横轴,将回答段落的单词配置在纵轴,在横轴以及纵轴的交叉位置,从相互信息量矩阵存储部64读出与该位置对应的两个单词的相互信息量,并计算将负的值置换为0来配置的第一相互信息量矩阵;以及第二矩阵计算部124,根据第一矩阵计算部122计算的第一相互信息量矩阵用以下所述的方法计算两个第二相互信息量矩阵。由于将相互信息量的负的值置换为0,因此第一相互信息量矩阵内的相互信息量的值在[0,1]的范围内被归一化。

参照图3,第一相互信息量矩阵a170是如下矩阵:如上所述,将从提问中提取的单词配置在横轴,将从处理对象的回答段落中提取的单词配置在纵轴,在它们相交叉的位置,从相互信息量矩阵存储部64读出与该交叉位置对应的单词之间的相互信息量,将负的值置换为0并进行存放。与此相对,第二矩阵由矩阵^aq180以及矩阵^ap182这两个构成。通过求取相互信息量矩阵a170当中的、对应于提问中包括的各单词而在各列存储的相互信息量的最大值来获得矩阵^aq180。通过求取相互信息量矩阵a170当中的、对应于回答段落中包括的各单词而在各行存储的相互信息量的最大值来获得矩阵^ap182。因此,在矩阵^aq180以及矩阵^ap182的任意一个当中,相互信息量的值均在[0,1]的范围内进行归一化。

在矩阵^a中,提问中的单词(称为“提问词语”。)的因果关系注意的特征量由在提问词语和所有的回答段落中的单词(称为“回答词语”。)的所有可能的组合中作为最高值的npmi值表示。同样地,在矩阵^a中,回答词语的因果关系注意的特征量由在回答词语和所有的提问词语的所有可能的组合中作为最高值的npmi值表示。这启示了矩阵^a内的单词的因果关系注意的特征量通过从矩阵a中提取的最重要的因果关系注意特征量表达。

通过该处理,获得两个因果关系注意特征量矩阵。一个是与提问有关的矩阵^aq180,另一个是与回答段落有关的矩阵^ap182。

[表达式5]

由以下的表达式定义。此外,在以下的表达式中,rmax(·)是表示行矢量的最大值的函数。

同样地,由以下的表达式定义。此外,在以下的表达式中,cmax(·)是表示列矢量的最大值的函数。

例如,向下看列172(对应于“海啸”。),相互信息量的最大值为“地震”的“0.65”。即,“海啸”这一提问词语与“地震”这一回答词语具有最强的因果关系的关联。同样地,通过求取各列的最大值,获得矩阵^aq180。此外,例如,若横向看行174(对应于“地震”。),最大值为“海啸”的“0.65”。即,与“地震”这一回答词语具有最强的因果关系的关联的提问词语为“海啸”。通过为每行求取该值,获得矩阵^ap182。实际上,从图3可知,矩阵^aq180是一行横向矢量,矩阵^ap182是一列纵向矢量。

[表达式6]

如果获得以及对于q以及回答段落p的对,通过以下的表达式(6)(7)能够算出因果关系注意矢量x″q∈rd×|q|以及x″p∈rd×|p|

其中,w″q∈rd×1以及w″p∈rd×1是通过学习确定的模型的数据。

[表达式7]

最终,通过以下的表达式(8)所示的每个要素的加法运算来组合提问q以及问答段落p这一对的这两个矢量(单词嵌入的矢量x和矩阵的因果关系注意矢量x″)并输入到后述的神经网络92的卷积/池化层202的c1列以及c2列。

<卷积神经网络>

参照图4,图1所示的神经网络92如稍后所述包括:输入层200,接受提问、回答段落、回答内因果关系表达(回答ce)以及关联因果关系表达(关联ce),并生成进行了基于因果关系注意的加权的单词矢量;卷积/池化层202,接受输入层200的输出并输出特征量矢量;以及输出层204,接受卷积/池化层202的输出,并对输入的提问输出输入的回答是正确的回答的概率。该神经网络92具有四列c1~c4。

《输入层200》

输入层200包括:输入提问的第一列c1;输入回答段落的第二列c2;输入回答内因果关系表达(回答ce)的第三列c3;以及输入关联因果关系表达(关联ce)的第四列c4。

第一列c1以及第二列c2具备分别接受构成提问以及回答段落的单词序列的输入并将其转换为单词矢量的功能和通过前述因果关系注意对各单词矢量进行加权的功能210。第三列c3以及第四列c4不具有基于因果关系注意的加权的功能210,但具有分别将回答内因果关系表达和关联因果关系表达中包括的单词序列转换为单词嵌入矢量的功能。

在本实施方式中,用d维单词嵌入矢量xi表示单词序列t中包括的第i个单词(在后述的实验中,d=300)。单词序列由d×|t|的单词嵌入矢量列x表示。在此,|t|表示单词序列t的长度。这样,矢量列x由以下的表达式(9)表示。

[表达式8]

其中,表示连续运算符。

xi:i+j是连结xi、...、xi+j的嵌入矢量而获得的,假设表示在i<1或者i>|t|中均进行了补零。

对提问中的单词以及回答段落中的单词提供因果关系注意。在本实施方式中,基于ca单词计算对单词序列t的d×t维注意矢量列x′。ca单词直接或者间接地表示提问和所认为的回答之间的因果关系,并自动地从存档因果关系表达中提取。在此,针对对单词序列t的单词嵌入矢量列x和注意矢量列x′,通过按照每个分量进行加法,来获得加权的单词嵌入矢量列^x。

《卷积/池化层202》

卷积/池化层202包括:四个卷积神经网络,与四列c1~c4对应设置;以及四个池化层,分别接受其输出并输出最大池化的结果。

即,参照图5,假设卷积/池化层202内的某列390由输入层400、卷积层402以及池化层404构成。然而,卷积/池化层202不限于这种结构,且可以具备多个这样的三层。

来自输入层200的对应的列的单词矢量列x1、...、x|t|被输入到输入层400。该单词矢量列x1、...、x|t|表示为矩阵t=[x1、x2、...、x|t|]t。通过接下来的卷积层402对该矩阵t应用m个特性映射f1~fm。各特性映射是矢量,通过对由连续的单词矢量构成的n-gram410应用由w表示的滤波器并且使n-gram410移动,分别获得其输出,来计算作为各特性映射的要素的矢量。n是任意的自然数。若将特性映射f的输出设为o,则o的第i个要素oi由接下来的表达式(10)表示。

[表达式9]

oi=f(w·xi:i+n-1+b)(10)

其中,·表示针对每个要素进行乘法之后取其和,是f(x)=max(0,x)(归一化线性函数)。另外,滤波器w是将单词矢量的要素数作为d的d×n维实数的加权矩阵,偏置b∈r是实数的偏置项。

此外,在特性映射的整体中可以设n相等,也可以设为不同。作为n,2、3、4以及5左右是合适的。在本实施方式中,滤波器的加权矩阵在所有的卷积神经网络中相等。虽然这些也可以相互不同,实际上,与独立地学习各加权矩阵的情况相比,使其相互相等的精度更高。

针对该每个特性映射中,接下来的池化层404进行所谓的最大池化。即,池化层404例如选择特性映射fm的要素当中的、最大的要素420,并作为要素430取出。通过对每个特性映射进行该处理,取出要素430、...、432,按照从f1到fm的顺序连结这些要素并作为矢量440输出到图4所示的输出层204中。这样获得的矢量440等被从各池化层输出到输出层204。

《输出层204》

在输出层204中,相似度计算部212计算这些特征矢量的相似度,并提供给softmax层216。此外,在提供到四列c1~c4的单词序列之间进行单词匹配208,共用单词数的计数部214计算作为共用的单词数的指标的表达式(1)所示的四个值并提供给softmax层216。softmax层216对输入应用线形softmax函数,并输出回答段落对于提问是正确的回答的概率。

在本实施方式中,两个特征矢量的相似度按如下所述进行计算。此外,作为相似度,除此之外,还能够应用余弦相似度等其他的矢量相似度。

[表达式10]

通过以下的表达式(11)计算通过具备相同的窗口尺寸n(n-gram)的滤波器而获得的两个特征矢量以及的相似度。此外,将从第i列获得的n-gram的特征矢量作为将从第j列获得的n-gram的特征矢量作为

其中,ed(·)是欧几里得距离。

在本实施方式中,使用该相似度计算并使用以下的4种相似度分值sv1(n)~sv4(n)。

[表达式11]

通过以下的表达式计算通过具备相同的窗口尺寸n(n-gram)的滤波器而获得的两个特征矢量以及的相似度。

·提问和回答段落

·提问和回答内因果关系表达

·提问和关联因果关系表达

·回答段落和关联因果关系表达

这些均由相似度计算部212计算并提供给输出层204。

此外,在本实施方式中,仅将如上所示的特征矢量的相似度设为向输出层204的输入,但输入的信息不限于此。例如,可以使用特征矢量本身,也可以使用特征矢量和其相似度的组合。

此外,在图7中示出用于通过计算机实现非事实型问答系统30的计算机程序的控制构造的流程图。因为有与非事实型问答系统30的动作的说明重复的部分,因此与动作的说明一起进行针对图7所示的计算机程序的结构的说明。

〔动作〕

在非事实型问答系统30的动作中,有学习阶段和输出对实际的提问的应答的运行阶段。

<学习阶段>

参照图1,在给出提问32之前,通过因果关系表达提取部58从web存档存储部56中提取存档因果关系表达,通过相互信息量计算部62计算相互信息量矩阵并存储到相互信息量矩阵存储部64中。

针对在第一矩阵计算部122以及第二矩阵计算部124中使用的加权参数,通过学习数据进行学习,所述学习数据由学习用的提问和对其的回答段落、以及手动地对这些回答是否是对提问的正确的答案进行标注的标签构成。针对神经网络92,也与通常的神经网络一样,使用误差反向传播法进行预先学习,使得输出表示其对于使用相同的学习数据输入的提问和回答段落的组合是正确的组合的概率。

<运行阶段>

参照图6对运行阶段的非事实型问答系统30的动作的概略进行说明。首先,进行从大量的web文本存档中自动识别因果关系表达的处理460,并收集大量的存档因果关系表达462。通过基于搭配频率从其中选择因果关系关联性高的单词对,来进行提取因果关系的关联单词466的处理464。从该关联单词466中,获得表达因果关系注意468的信息。通过该因果关系注意468,对在提问和回答段落中作为表示因果关系尤其应该着眼的单词,进行比其他更大的加权。

另一方面,若提供提问470和回答段落472的组,则在从存档中提取的存档因果关系表达462中,进行选择包括很多提问和回答段落中包括的单词的因果关系的处理474。其结果,获得回答段落内的回答内因果关系的换种说法表达476(关联因果关系表达)。

将这样获得的提问470、回答段落472、回答段落中包括的因果关系表达、因果关系注意468以及与回答段落对应的因果关系的换种说法表达(关联因果关系表达)476全部提供给神经网络92。通过神经网络92计算回答段落472是对提问470的正确的回答的概率。对于各回答段落计算该概率,并选择作为正确的回答的概率为最高的回答段落作为对提问470的回答。

更具体地,参照图1,在运行阶段之前,由因果关系表达提取部58从web存档中提取存档因果关系表达,并存储到存档因果关系表达存储部60中。此外,根据存档因果关系表达存储部60中存储的因果关系表达,相互信息量计算部62计算单词之间的相互信息量并作为相互信息量矩阵存储到相互信息量矩阵存储部64中。

若提问32实际上被提供给提问接受部50,则提问接受部50将该提问提供给应答接收部52。应答接收部52将该提问发送到问答系统34(图7的步骤480)。此外,提问接受部50将提问32作为提问130提供给关联因果关系表达提取部86、因果关系注意矩阵生成部90的单词提取部120、以及神经网络92。

应答接收部52从问答系统34接收给定个数的对提问32的回答段落(例如20个)。应答接收部52将这些回答段落存放到分类部54的回答段落存储部80中(图7的步骤482)。

参照图2,提问关联存档因果关系表达选择部110的名词提取部150从提问接受部50接受提问130,提取提问130中包括的名词并提供给第一检索部154以及第二检索部156。动词/形容词提取部152提取提问130中包括的动词以及形容词并提供给第二检索部156(图7的步骤484)。第一检索部154检索存档因果关系表达存储部60,取出在结果部中包括由名词提取部150提取的所有的名词的存档因果关系表达,并将取出的存档因果关系表达存放到提问关联因果关系表达存储部112中(图7的步骤486)。第二检索部156检索存档因果关系表达存储部60,提取在结果部中包括名词提取部150提取的所有的名词且包括动词/形容词提取部152提取的至少一个动词以及形容词的存档因果关系表达,并存放到提问关联因果关系表达存储部112中(图7的步骤490)。

若接收所有的回答段落,且由提问关联存档因果关系表达选择部110进行的处理全部完成,则在以下,对于回答段落存储部80中存储的各回答段落,在步骤492中进行以下的处理(图7所示的处理494)。

首先,因果关系表达提取部82使用现有的因果关系表达的提取算法来从处理对象的回答段落中提取回答内因果关系表达,并存放到回答内因果关系表达存储部84中(图7的步骤500)。排序部114针对处理对象的回答段落,计算加权单词出现数wgt-wc(x、y)(图7的步骤502),并使用该加权单词出现数来对提问关联因果关系表达存储部112中存储的提问关联因果关系表达进行排序。排序部114还选择并输出最高位的提问关联因果关系表达作为与提问以及处理中的回答段落的组关联的因果关系表达(图7的步骤504)。关联因果关系表达存储部88存储由关联因果关系表达提取部86按照每个回答段落输出一个的关联因果关系表达。

在因果关系注意处理部40的因果关系注意矩阵生成部90中,单词提取部120提取在提问接受部50接受到的提问以及处理中的回答段落中出现的所有的单词并提供给第一矩阵计算部122(图7的步骤506)。为了生成将问句的单词作为横轴并将处理中的回答段落的单词作为纵轴所获得的矩阵,第一矩阵计算部122声明二维的排列(图7的步骤508)。第一矩阵计算部122还通过从相互信息量矩阵存储部64中读出对应的单词之间的相互信息量,并将负的值置换为0配置在这些单词的交叉位置的单元格中,来生成这些单词彼此的相互信息量矩阵a170(第一矩阵170)(图7的步骤510)。第二矩阵计算部124根据第一矩阵计算部122计算的第一相互信息量矩阵用已经叙述的方法计算两个第二相互信息量矩阵^aq180(第二矩阵180)以及^ap182(第二矩阵182)(图7的步骤512)。

对于提问32,针对回答段落存储部80中存储的每个回答段落,若上述关联存档因果关系表达的提取、相互信息量矩阵a170、^aq180以及^ap182的计算结束(若图7的步骤500、504以及直到512的处理全部完成),则参照图4,提问接受部50接受的提问被提供给神经网络92的第一列。处理中的回答段落被提供给第二列。回答内因果关系表达存储部84中存储的、从处理中的回答段落中提取的所有的回答内因果关系表达经由给定的分隔符进行连结从而被提供给第三列。关联因果关系表达存储部88中存储的、与处理中的回答段落关联的因果关系表达被提供给第四列(图7的步骤514)。

这些均在神经网络92的输入层200中被转换为单词嵌入矢量。从相互信息量矩阵^aq以及^ap获得的加权乘以构成第一列的提问、第二列的回答段落的各单词的单词嵌入矢量。在神经网络92的输出层204中,首先,计算这些特征矢量的4种相似度分值sv1(n)~sv4(n),并输出到softmax层216。此外,如上所述,不是将这种相似度分值而是将特征矢量本身或者特征矢量和相似度的组合作为向softmax层216的输入。

进而,针对提供给第一列c1~第四列c4的单词序列,如上所述,进行单词匹配,且作为共用的单词数的指标的、表达式(1)所示的四个值被提供给输出层204。

softmax层216基于来自输出层204的输出,输出所输入的回答段落是对提问的正确的回答的概率。该值和各回答候补一起储存到图1所示的回答候补存储部66中(图7的步骤516)。

在上述处理对于回答候补全部完成后,回答候补排序部68根据分值按照降序对回答候补存储部66中存储的回答候补进行排序,并输出最高分值的回答候补或者分值居高的n个(n>1)回答候补作为回答36。

〔实验〕

以下,示出使用本实施方式的结构进行的实验结果的例子。在该实验中,使用了850句提问和对于这些各提问的高位20个的回答段落(合计为17,000个提问-回答段落对)。该数据当中的、15,000对作为学习数据,1,000对作为开发数据,剩余的1,000对作为测试数据。开发数据用于确定神经网络92的超参数的一部分(滤波器的窗口尺寸、滤波器数量以及小批量数量)。

作为滤波器参数,使用{2、3、4、5、6}中的3、4、5个连续的数字构成不同的窗口尺寸的滤波器,从{25、50、75、100}中选择对窗口尺寸的各组合的滤波器数量。可能的超参数的组合的数量为120。所有这些都在实验中使用,将对开发数据的平均精度作为基准并选择最佳设定值。在所有的处理中,在输出层中,应用0.5的滤除。使用所有的学习数据进行了10个时间间隔的学习。各时间间隔分割为多个小批量进行。

在神经网络92的学习中,使用小批量概率的随机梯度下降法,在(-0.01,0.01)的范围内随机地对滤波器w和因果关系注意的加权进行初始化。

使用p@1(最高位回答的精度)以及map(平均适合率的平均)进行了评价。p@1示出对于多少提问获得了正确的最佳回答。map测定由系统排序的前n个回答的整体质量,并通过以下表达式计算。

[表达式12]

其中,q表示测试数据内的提问的集合,answerq是对提问q∈q的正确的回答的集合。prec(k)是高位n个回答段落中的截止k的适合率,如果排名k的项目是集合answerq内的正解,则rel(k)是1的指标,如果是错误,则rel(k)是0的指标。

在图8中以表格形式示出上述实施方式的结果和对照例的结果。该图所示的对照例等的符号如下所示。

<oh13>非专利文献1中所示的监督学习系统。是一种将单词n-gram、单词类别以及回答内因果关系作为特性使用的基于svm的系统。

<oh16>后面描述的参考文献1中所示的准监督学习系统。使用基于上述oh13的系统作为准监督学习的初始系统,并使用存档因果关系表达来扩展学习数据。

<base>仅将提问、回答段落以及回答内因果关系表达和与它们关联的共用词语计数作为输入的基线的mcnn系统。在上述实施方式中,既不使用因果关系注意也不使用关联因果关系表达。

<proposed-ca>在上述实施方式中,仅使用关联因果关系表达,且不使用因果关系注意。

<proposed-rce>在上述实施方式中,仅使用因果关系注意,且不使用关联因果关系表达。

<proposed>上述实施方式所涉及的系统。

<ubound>如果对提问的n个正确的回答在测试数据内,则始终找到其n个作为前n个回答的系统。示出这次的实验中的回答选择性能的上限。

从图8可以看出,与以往技术相比,本申请实施方式所涉及的系统示出稳定且高的性能。更具体地,通过使用关联因果关系表达来进行因果关系的换种说法,可以看出p@1提高了4~6%(图8的参照附图标记520→524、522→526)。此外,通过使用因果关系注意,可以看出p@1提高了6%(参照附图标记520→522、524→526)。

进而,从图8可以看出,在本发明中r(p@1)达到81.8%(54/66、参照附图标记526和参照附图标记528)。从该结果可以看出,如果本发明的系统能够对提问取出至少一个正确的回答,则对为什么型提问能够以高再现率找到最佳回答。

为了调查根据本发明的最佳回答的精度,对根据上述oh13以及oh16和proposed的最佳回答的质量进行了研讨。因此,针对每个系统,仅选择对测试数据中的各提问的最佳回答,并根据由各系统赋予的分值对所有的最佳回答进行排序。进而,计算各排名中的最佳回答的排名的适合率。在图9中示出结果。

在图9中,x轴表示对排序的列表的、所有的最佳回答的最佳回答的累积率,y轴表示x轴上的各点处的适合率。参照图9,在对最佳回答的30%进行了评价的情况下,在本发明(图表530)中示出了100%的适合率。即使与oh13(图表534)以及oh16(图表532)中的任意一个相比,该值也非常高。从该结果可以看出,在根据本发明的系统中,与在先技术相比,有效地改善了最佳回答的质量。

〔通过计算机实现〕

本发明的实施方式所涉及的非事实型问答系统30能够通过计算机硬件和在该计算机硬件上执行的计算机程序实现。图10示出该计算机系统630的外观,图11示出计算机系统630的内部结构。

参照图10,该计算机系统630包括具有存储器端口652以及dvd(digitalversatiledisk,数字通用盘)驱动器650的计算机640、键盘646、鼠标648以及监视器642。

参照图11,除了存储器端口652以及dvd驱动器650之外,计算机640还包括cpu(中央处理装置)656、与cpu656、存储器端口652以及dvd驱动器650连接的总线666、存储引导程序等的读出专用存储器(rom)658、与总线666连接并存储程序命令、系统程序以及作业数据等的随机存取存储器(ram)660以及硬盘654。计算机系统630还包括提供对能够实现与其他终端的通信的网络668的连接的网络接口(i/f)644。

用于使计算机系统630作为上述实施方式所涉及的非事实型问答系统30的各功能部发挥功能的计算机程序存储到dvd驱动器650或者在存储器端口652上装配的dvd662或者可移动存储器664中,进而被传送到硬盘654。或者,程序也可以通过网络668发送到计算机640并存储到硬盘654中。程序在执行时被加载到ram660中。也可以将程序直接从可移动存储器664或者经由网络668从dvd662加载到ram660中。

该程序包括由用于使计算机640作为上述实施方式所涉及的非事实型问答系统30的各功能部而发挥功能的多个命令构成的命令列。使计算机640进行该动作所需的一些基本功能使由在计算机640上动作的操作系统或者第三方的程序或者计算机640中安装的、能够动态链接的各种编程工具包或者程序库提供。因此,该程序本身不一定包括实现该实施方式的系统、装置以及方法所需的所有的功能。该程序只要包括通过以受控方式在执行时动态调用命令当中的、适当的功能或者编程工具包或程序库内的适当的程序,使得获得所希望的结果,从而实现作为上述系统、装置或者方法的功能即可。当然,也可以仅以程序提供所需的所有功能。

[第二实施方式]

〔结构〕

在上述第一实施方式中,仅使用因果关系注意作为注意。可以看出,即使仅使用因果关系注意,与以往相比,在实验中确认的那样,也提高了非事实型问答系统中的回答的质量。但是,本发明不限于这样的实施方式。还能够使用针对其他的关系的注意。然而,需要使用能够导出满足作为对为什么型提问的正确的回答的条件的那样的回答候补的注意。

在此,作为对为什么型提问的正确的回答应具有的性质,需要考虑以下三个性质。

1)对提问的主题的适合性

2)提问寻求的理由或者原因的提示

3)提问寻求的理由或者原因和提问的主题之间的因果关系

如果所有这些都是出现的回答候补,则能够认为提供对为什么型提问的正确的回答。

在上述第一实施方式中,针对这些当中的、2)的理由或者原因的提示和3)的因果关系进行了考虑,但尤其是针对与1)的主题有关的适合性没有明确地进行考虑。在该第二实施方式中,使用与对提问的主题的适合性有关的注意,且这与因果关系注意同时使用来寻求对提问的回答。即,不仅使用从单一的观点看到的注意,而且使用基于相互不同的观点的注意来寻求回答。因此,在以下的第二实施方式中,针对提问以及回答候补的各单词,着眼于从各自不同的观点看到的上下文中的单词的含义,将这些设为向神经网络的输入时的注意(加权)。

在该第二实施方式中,作为针对与主题有关的适合性的观点,使用一般的文本的上下文中的单词的含义。即,不使用因果关系、材料关系等这样的特定的单词的语义关系,而使用尤其与这些语义关系没有关系的一般的上下文中的单词和单词的语义关系。在很多情况下,能够基于提问中出现的单词和回答候补中出现的单词在语义上是否类似来判断与主题有关的适合性。这样类似的单词经常出现在相互类似的上下文中。因此,作为与主题有关的适合性,使用从一般的上下文中学习的单词嵌入矢量(称为“一般单词嵌入矢量”。)的相似度。

在图12中,示出第二实施方式所涉及的非事实型问答系统730的框图。参照图12,该非事实型问答系统730与图1所示的非事实型问答系统30不同之处在于:除了非事实型问答系统30的结构之外,还包括相似度注意处理部740,所述相似度注意处理部740基于web存档存储部56中存储的web存档,按照提问和回答段落的每个组合,与因果关系注意矩阵生成部90和因果关系注意处理部40一样,生成出现的单词彼此的相似度的矩阵。

此外,在代替图1的分类部54而具有分类部754这一点上,非事实型问答系统730也与非事实型问答系统30不同,所述分类部754具有与因果关系注意同时使用由相似度注意处理部740生成的相似度注意来计算回答候补的分值的功能的分类部754。

此外,分类部754与分类部54不同之处仅在于:代替分类部54的神经网络92而包括神经网络792,所述神经网络792具有同时使用相似度注意和因果关系注意来计算各回答段落的分值的功能。

相似度注意处理部740包括语义矢量计算部758,所述语义矢量计算部758针对在web存档存储部56中存储的文本中出现的每个单词计算语义矢量。在本实施方式中,使用一般单词嵌入矢量作为语义矢量。

相似度注意处理部740还包括:相似度计算部762,通过针对这些单词当中的、两个单词的所有的组合计算其含义矢量的相似度,来计算该两个单词的相似度;以及相似度矩阵存储部764,存储由相似度计算部762针对两个单词的每个组合计算的相似度,作为在横轴以及纵轴上配置各单词所获得的矩阵。在相似度矩阵存储部764存储的矩阵中,将非事实型问答系统730中出现的单词配置在所有横轴以及纵轴上,并在横轴的单词和纵轴的单词的交点的位置存储这些单词之间的相似度。

相似度注意处理部740还包括相似度注意矩阵生成部790,所述相似度注意矩阵生成部790用于使用从在来自提问接受部50的提问130和从回答段落存储部80读出的回答段落中分别出现的单词和相似度矩阵存储部764中存储的相似度矩阵,生成神经网络792存储用于分值计算的相似度注意的矩阵(相似度注意矩阵)。在计算对提问130的各回答段落的分值时,神经网络792使用在提问130和其回答段落之间由相似度注意矩阵生成部790计算的相似度注意矩阵。对于神经网络792的结构将参照图14稍后叙述。

在图13中以框图形式示出相似度注意矩阵生成部790的结构。比较图13和图1可以看出,相似度注意矩阵生成部790和图1所示的因果关系注意矩阵生成部90具有并行构造。

参照图13,相似度注意矩阵生成部790包括:单词提取部820,用于针对来自提问接受部50的提问130及回答段落存储部80中存储的回答段落的各个组合,提取其中包括的所有的内容词语;第三矩阵计算部822,计算相似度矩阵,在相似度矩阵中,将由单词提取部820提取的提问的单词配置在横轴,将回答段落的单词配置在纵轴,从相似度矩阵存储部764读出与该位置对应的两个单词的相似度并配置在横轴以及纵轴的交叉位置;以及第四矩阵计算部824,根据第三矩阵计算部822计算的相似度矩阵用以下所述的方法计算两个第四相似度矩阵。所有的相似度矩阵内的相似度的值在[0,1]的范围内被归一化。

由第四矩阵计算部824进行的两个第四相似度矩阵的生成方法与图3所示的第二矩阵180以及182的生成方法相同。因此,在此,不再重复其细节。

在图14中示出神经网络792的概略结构。图14所示的神经网络792的结构与图4所示的神经网络92的结构几乎相同。神经网络792与神经网络92不同之处在于,代替图4的输入层200而具有输入层900。输入层900的第三列以及第四列与输入层200的相同。输入层900的第一列c1以及第二列c2与输入层200不同之处在于,具有分别接受构成提问以及回答段落的单词序列的输入并将其转换为单词矢量的功能、和通过针对每个要素将前述因果关系注意和相似度注意相加的值对各单词矢量进行加权的功能910。在本实施方式中,在对因果关系注意和相似度注意的对应的要素这两者施加加权的基础上,将两者相加。该加权构成神经网络792的学习参数的一部分。除此之外,神经网络792是与图4所示的神经网络92相同的结构。因此,在此不再重复对这些共用的部分的说明。

〔动作〕

该第二实施方式所涉及的非事实型问答系统730按如下所述进行动作。

学习时的非事实型问答系统730的动作与非事实型问答系统30相同。然而,在学习之前,语义矢量计算部758以及相似度计算部762根据web存档存储部56中存储的文本计算相似度矩阵并存储到相似度矩阵存储部764中,这一点不同。进而,在非事实型问答系统730中,基于根据web存档存储部56中存储的文本计算的相似度矩阵和相互信息量矩阵,针对学习数据的提问和回答段落的每个组合,计算相似度注意和因果关系注意,并同时使用这些来进行神经网络792的学习,在这一点上,非事实型问答系统730的学习也与非事实型问答系统30的学习不同。

重复使用学习数据来重复更新神经网络792的参数,在参数的变化量变得小于给定的阈值时,学习结束。然而,学习的结束时刻不仅限于此。例如,也可以将使用相同的学习数据来进行给定次数的学习的时间点作为结束。

除了使用相似度注意之外,运行时的非事实型问答系统730的动作也与第一实施方式的非事实型问答系统30一样。更具体地,图12所示的提问接受部50、应答接收部52、回答段落存储部80、因果关系表达提取部82、回答内因果关系表达存储部84、关联因果关系表达提取部86、关联因果关系表达存储部88以及因果关系注意处理部40与第一实施方式一样地进行动作。

语义矢量计算部758以及相似度计算部762预先生成相似度矩阵并存储在相似度矩阵存储部764中。

若提问32被提供给非事实型问答系统730,则与第一实施方式一样,从问答系统34收集对该提问的回答段落,且从其中提取的回答内因果关系表达被存储到回答内因果关系表达存储部84中。同样地,从web存档存储部56中提取存档因果关系表达,基于回答段落和提问130从存档因果关系表达中提取关联因果关系表达,并存储到关联因果关系表达存储部88中。

根据从提问130获得的单词和回答段落,由因果关系注意矩阵生成部90生成因果关系注意矩阵。同样地,相似度注意矩阵由相似度注意矩阵生成部790生成。这些注意被提供给神经网络792。神经网络792接受构成提问和回答段落的每个单词作为输入,进行对因果关系注意和相似度注意相加的加权并输入到神经网络的隐藏层中。其结果,从神经网络792输出对该对的分值。

针对每个回答段落和提问的所有对,这样计算分值,并将分值的高位的分值存储到回答候补存储部66中。以下,由回答候补排序部68对回答候补进行排序,并将排序的高位的回答候补输出为回答36。

在图15中,以流程图形式示出用于由计算机实现该第二实施方式所涉及的非事实型问答系统730的计算机程序的控制构造。图15所示的程序与图7所示的第一实施方式的程序不同之处在于:代替图7的处理494而包括处理950这一点,在处理950中,包括用于计算基于一般的上下文的注意的步骤。

与处理494相比,处理950的不同之处在于:代替处理494的步骤508而包括:步骤952,准备两个二维排列;步骤954,从步骤952与步骤510分支,计算第三矩阵;步骤956,基于步骤954中计算的第三矩阵,用与图3所示的方法相同的方法计算两个第四矩阵这一点;以及代替图7的步骤514而包括步骤958这一点,在步骤958中,将步骤500的输出、步骤504的输出、步骤512的输出以及步骤956的输出提供给神经网络792。

在该第二实施方式中,提问接受部50接受的提问被提供给神经网络792的第一列。处理中的回答段落被提供给第二列。经由给定的分隔符连结回答内因果关系表达存储部84中存储的、从处理中的回答段落中提取的所有的回答内因果关系表达并提供给第三列。关联因果关系表达存储部88中存储的、与处理中的回答段落关联的因果关系表达被提供给第四列。

这些均在神经网络792的输入层900中被转换为单词嵌入矢量。按照每个要素将从相互信息量矩阵^aq以及^ap获得的加权和从第三矩阵以及第四矩阵获得的加权进行相加所获得的值与构成第一列的提问和第二列的回答段落的各单词的单词嵌入矢量相乘。

〔实验结果〕

虽然对于第一实施方式,条件与图8所示不同,但是在图16中以表格形式示出由基线、第一实施方式的系统以及第二实施方式的系统获得的回答的精度。

在图16中,oh13是与图8所示的方法相同的方法且成为本实验的基线。与图8相同,从图16也可以看出,与基线的方法相比,第一实施方式带来了显著的性能提高。但是,根据第二实施方式,与第一实施方式相比,获得了更高的精度。

此外,在图16中示出结果的实验为针对17,000件的提问/回答对(对850个提问的20个回答候补)进行了10-foldcrossvalidation(学习:15,000件,开发:1,000件,评价:1,000件)的结果。在图16中,“p@1”表示最高位的结果的精度,“map”表示高位20个整体的质量。此外,图8的实验在进行10-foldcrossvalidation这一点上不同。

如上所述,根据本发明的第一实施方式以及第二实施方式,与以往的方法相比,能够以非常高的精度获得对非事实型的提问的回答。例如,通过将工厂的生产线中产生的问题、最终获得的产品中产生的问题、在软件的试验中产生的问题、在任何的实验过程中产生的问题等作为学习数据来构筑这些问答系统,从而能够获得对各种各样的实际的提问有用的回答。其结果,能够带来工厂中的生产效率的提高、工业产品以及软件的有效的设计、实验计划的有效化等,能够对产业的发展带来大的贡献。进而,作为用途,不限于制造业,还能够应用于教育领域、顾客应对、政府办公室中的自动应答、软件的操作说明等服务。

在第二实施方式中,同时使用因果关系注意和相似度注意这两种注意。但是,本发明不限于这样的实施方式。还可以根据应用程序使用其他的种类的注意。例如,能够采用使用日本特开2015-121896号公报中公开的以下那样的关系的注意。此外,还能够代替因果关系注意或者相似度注意中的任意一个或者两者,而使用上述关系中的任意一个或者两种以上的注意。

-材料关系(例:<用a生产b>,(玉米、生物燃料)等)

-必要关系(例:<a对b是必须的>,(阳光、光合作用)等)

-使用关系(例:<将a用于b>,(ips细胞、再生医疗)等)

-预防关系(例:<用a防止b>,(疫苗、流感)、等)

通过使用这种语义关系,例如,能够通过“为什么疫苗能够用于流感?”、“为什么关注ips细胞?”、“为什么植物需要阳光?”等提问(分别对应预防关系、使用关系、必要关系)并以高精度来进行回答。

针对基于这种关系的注意,能够和因果关系注意一样获取。作为获取表示这些关系的表达的方法,能够使用所述日本特开2015-121896号公报中记载的方法。即,将作为提取语义关系模式时的源的、特定的模式(将此称为种子模式。)的组和单词的含义类别信息存储到数据库中。通过从web存档存储部56中提取与这些数据库中存储的种子模式类似的模式,构筑语义关系模式的数据库。从web存档中收集与这些语义模式一致的表达,计算所收集的表达的集合内的单词的相互信息量并生成与其关系相关的注意矩阵。进而,从提问以及各回答段落中也同样地提取单词,根据先前创建的注意矩阵以与图3所示的方法相同的方法生成两个矩阵,并将其作为对神经网络的输入的各单词的加权。

此外,作为注意,在使用三种以上的情况下,可以针对每种关系准备与图12所示的分类部754相同的注意,并相应地增加神经网络792的列数。或者,也可以仅准备用于特定的语义关系的分类部754,并针对其他的语义关系仅计算注意。在该情况下,在神经网络792内部,只要将针对每个要素将这些注意相加所获得的值设为对各单词的加权即可。

[参考文献一览]

〔参考文献1〕j.-h.oh,k.torisawa,c.hashimoto,r.iida,m.tanaka,andj.kloetzer.asemi-supervisedlearningapproachtowhy-questionanswering.inproceedingsofaaai’16,pages3022-3029,2016.

工业实用性

本发明能够对人们在其生活中遇到的各种各样的问题提供其回答,因此能够用于制造提供这种功能的装置的产业以及在网络上向人们提供这种功能的产业。进而,不管领域如何,能够在产业活动以及研究活动中对活动主体所面临的各种各样的问题提供其理由、方法、定义等回答,因此通过在所有产业以及所有研究领域中利用本发明,从而能够更加顺利和迅速地促进产业活动以及研究活动。

这次公开的实施方式仅是例示,本发明不限于上述实施方式。在考虑对发明的详细的说明的记载的基础上,本发明的范围由权利要求书的各权利要求表示,且包括与在其中记载的语言等同的含义以及范围内的所有的变更。

附图标记说明

30、730非事实型问答系统;

32、130提问;

34问答系统;

36回答;

40因果关系注意处理部;

50提问接受部;

52应答接收部;

54、754分类部;

56web存档存储部;

58、82因果关系表达提取部;

60存档因果关系表达存储部;

62相互信息量计算部;

64相互信息量矩阵存储部;

66回答候补存储部;

68回答候补排序部;

80回答段落存储部;

84回答内因果关系表达存储部;

86关联因果关系表达提取部;

88关联因果关系表达存储部;

90因果关系注意矩阵生成部;

92、792神经网络;

110提问关联存档因果关系表达选择部;

112提问关联因果关系表达存储部;

114排序部;

120、820单词提取部;

122第一矩阵计算部;

124第二矩阵计算部;

150名词提取部;

152动词/形容词提取部;

154第一检索部;

156第二检索部;

170相互信息量矩阵a;

180、182矩阵;

200、900输入层;

202、902卷积/池化层;

204、904输出层;

208单词匹配;

216、916softmax层;

740相似度注意处理部;

758语义矢量计算部;

762相似度计算部;

764相似度矩阵存储部;

790相似度注意矩阵生成部;

822第三矩阵计算部;

824第四矩阵计算部。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1