发布信息

问答方法、装置、电子设备、存储介质以及程序产品

作者:admin      2022-09-02 18:08:08     766



计算;推算;计数设备的制造及其应用技术1.本技术涉及自然语言处理技术,尤其涉及一种问答方法、装置、电子设备、存储介质以及程序产品。背景技术:2.机器阅读理解指的是电子设备在获取用户提出的问题之后,可以给出该问题对应的答案。使用现有的问答方法获取用户提出的问题对应的答案时,电子设备可以基于用户提出的问题,从给定文档中提取出问题对应的答案。3.然而,当用户提出的问题中包括代词时,现有的问答方法可能无法获取问题中的代词所指示的对象,进而可能导致获取问题对应的答案的准确性较低。技术实现要素:4.本技术提供一种问答方法、装置、电子设备、存储介质以及程序产品,以提高获取问题对应的答案的准确性。5.第一方面,本技术提供一种问答方法,所述方法包括:6.接收针对目标文档的问答请求,所述问答请求包括目标问题;7.对所述目标问题中的代词添加标注,得到标注后的目标问题;8.获取输入序列中的每个第一词语的嵌入信息;所述输入序列包括:所述标注后的目标问题、所述目标文档,以及,针对所述目标文档的前n轮历史问题和所述历史问题对应的答案;所述n为大于或等于1的整数;所述标注后的目标问题中代词的嵌入信息用于指示所述代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息;9.根据所述输入序列中的每个第一词语的嵌入信息获取所述输入序列的特征信息;10.根据所述输入序列的特征信息,获取所述目标问题的答案;11.输出所述目标问题的答案。12.可选的,所述代词的嵌入信息为所述代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息的加权和。13.可选的,所述根据所述输入序列的特征信息,获取所述目标问题的答案,包括:14.确定所述目标问题是否为非事实型问题,并从所述目标文档中提取出所述目标问题的初始答案;15.若所述目标问题为非事实型问题,则获取所述初始答案中各第二词语的预测词;16.根据所述初始答案,以及,初始答案中各第二词语的预测词获取所述目标问题的答案。17.可选的,所述根据所述初始答案,以及,初始答案中各第二词语的预测词获取所述目标问题的答案,包括:18.针对所述初始答案中的每个第二词语,若所述第二词语在目标句子中的流畅度概率小于所述第二词语的预测词在所述目标句子中的流畅度概率,则在所述目标句子中使用所述预测词替换所述第二词语,得到所述答案;其中,所述目标句子为所述第二词语在所述初始答案中所属的句子。19.可选的,所述获取所述初始答案中各第二词语的预测词,包括:20.利用预设词典,获取初始答案中各第二词语的预测词;其中,所述预设词典包括:所述目标问题中的第一词语,以及,所述文档中的第一词语。21.可选的,所述确定所述目标问题是否为非事实型问题,并从所述目标文档中提取出所述目标问题的初始答案之后,还包括:22.若所述目标问题为事实型问题,则将所述目标问题的初始答案作为所述目标问题的答案。23.第二方面,本技术提供一种问答装置,所述装置包括:24.接收模块,用于接收针对目标文档的问答请求,所述问答请求包括目标问题;25.处理模块,用于对所述目标问题中的代词添加标注,得到标注后的目标问题;获取输入序列中的每个第一词语的嵌入信息;根据所述输入序列中的每个第一词语的嵌入信息获取所述输入序列的特征信息;根据所述输入序列的特征信息,获取所述目标问题的答案;其中,所述输入序列包括:所述标注后的目标问题、所述目标文档,以及,针对所述目标文档的前n轮历史问题和所述历史问题对应的答案;所述n为大于或等于1的整数;所述标注后的目标问题中代词的嵌入信息用于指示所述代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息;26.输出模块,用于输出所述目标问题的答案。27.第三方面,本技术提供一种电子设备,包括:至少一个处理器、存储器;28.所述存储器存储计算机执行指令;29.所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述电子设备执行第一方面任一项所述的方法。30.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机执行指令,当所述计算机执行指令被处理器执行时,实现第一方面任一项所述的方法。31.第五方面,本技术提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面任一项所述的方法。32.本技术提供的问答方法、装置、电子设备、存储介质以及程序产品,将目标问题、目标文档,以及,目标文档的前n轮历史问题和历史问题对应的答案作为输入序列,当目标问题中包括代词时,获取输入序列中的每个第一词语的嵌入信息。且针对目标问题,获取目标问题中代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息作为代词的嵌入信息。再根据获取到的包括了代词的类别信息的输入序列中的每个第一词语的嵌入信息,获取目标问题的答案。相比于现有技术仅基于目标问题和目标文档获取答案,本技术通过结合代词的类别信息和目标文档的历史问答内容,提高了服务器获取目标问题中代词所指代的对象的准确性,进而提高了获取目标问题的答案的准确性,达到了提高用户的体验感的效果。附图说明33.为了更清楚地说明本技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。34.图1为机器阅读理解的一种应用场景示意图;35.图2为指定文档,以及,针对该文档的问题和答案的一种示例;36.图3为本技术提供的一种问答方法的流程示意图;37.图4为本技术提供的一种获取目标问题的答案的方法的流程示意图;38.图5为本技术提供的另一种问答方法的流程示意图;39.图6为本技术提供的一种获取输入序列的特征信息方法的流程示意图;40.图7为本技术提供的一种问答装置的结构示意图;41.图8为本技术提供的一种电子设备结构示意图。42.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。具体实施方式43.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术中的附图,对本技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。44.示例性的,图1为机器阅读理解的一种应用场景示意图。如图1所示,用户使用的终端设备可以接收用户输入的问题。然后,该终端设备可以通过无线网络将该问题发送给服务器。服务器接收到用户提出的问题之后,可以从给定的文档中获取该问题的答案,并将该答案发送到用户使用的终端设备。然后,终端设备可以输出该问题的答案以使用户可以得知问题对应的答案。其中,上述终端设备例如可以是电脑、智能音箱、手机、平板电脑等,图1中是以该终端设备为电脑的示例。45.在使用现有的问答方法获取问题对应的答案时,上述服务器可以基于用户提出的问题,从给定文档中提取出问题对应的答案。46.作为一种示例,图2为指定文档,以及,针对该文档的问题和答案的一种示例。如图2所示,例如针对问题1,服务器可以从指定文档中提取出“宙斯”作为问题1的答案。针对问题2,服务器可以从指定文档中提取出“寒鸦知道自己没一处漂亮,便来到河边,捡起众鸟脱落下的羽毛,小心翼翼地插在自己身上,再用胶粘住”作为问题2的答案。47.然而,当用户提出的问题中包括代词时(例如图2中所示的问题3中的“它”),现有的问答方法可能无法获取该代词指示的对象,进而可能导致获取问题对应的答案的准确性较低。48.通过研究发现,针对一篇文档,在用户提出的当前问题之前的历史问题和历史问题对应的答案的内容(简称历史问答内容),与用户提出的当前问题有关联。例如图2中的问题3中的“它”指的是问题2和答案2中的“寒鸦”。49.有鉴于此,当用户提出的当前问题中包括代词时,本技术提出了一种结合目标文档的历史问答内容,以及,目标问题中代词类别信息来获取目标问题的答案的方法。具体的,通过分析代词的类别信息和目标文档的历史问答内容的关联特征,可以提高服务器获取该代词所指代的对象的准确性,进而达到提高获取包含有代词的目标问题的答案的准确性。50.为了便于描述,下面结合具体地实施例对本技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。51.图3为本技术提供的一种问答方法的流程示意图。如图3所示,该方法包括以下步骤:52.s101、接收针对目标文档的问答请求。其中,该问答请求包括目标问题。53.示例性的,用户可以将针对目标文档的问答请求输入到用户使用的终端设备中。然后,服务器可以通过无线网络接收上述针对目标文档的问答请求。可选的,该问答请求例如可以是文字、带有描述目标问题的文字的图片,或者,语音输入的问答请求等。54.可选的,上述目标文档例如可以是存储在服务器中的预设文档。或者,上述问答请求中例如还可以包括目标文档的标识,以使服务器可以根据目标文档的标识获取预先存储在的服务器中的目标文档。再或者,上述问答请求中例如还可以携带有目标文档。55.s102、对目标问题中的代词添加标注,得到标注后的目标问题。56.可选的,服务器在接收到目标问题之后,可以对目标问题进行词性分析,以确定该目标问题中是否包括代词。示例性的,服务器可以根据预设的标注规则,或者现有的任何一种词性标注法,对目标问题进行词性分析。或者,服务器例如还可以结合预设的标注规则和词性标注法,对目标问题进行词性分析。57.若该目标问题中包括代词,则服务器可以执行该步骤,以对目标问题中的代词添加标注。示例性的,服务器可以在对目标问题进行词性分析时,将目标问题中词性为代词的词进行标注,得到标注后的目标问题。58.可选的,服务器例如可以对目标问题中的代词添加用于指示该词为代词的标签。示例性的,该标签例如可以是预设的数字或者字母等。59.s103、获取输入序列中的每个第一词语的嵌入信息。60.其中,该输入序列包括:标注后的目标问题、目标文档,以及,针对目标文档的前n轮历史问题和历史问题对应的答案。其中,n为大于或等于1的整数。n的取值例如可以是根据实际需求预先设定并存储在服务器中的。上述第一词语指的是目标问题、目标文档,以及,针对目标文档的前n轮历史问题和历史问题对应的答案中的任意一个词语。61.可选的,针对一篇文档,服务器例如可以将针对该篇文档的每一轮问题和对应的答案都进行存储。然后服务器可以在获取目标文档之后,获取针对该目标文档的同一终端设备发送的前n轮历史问题和历史问题对应的答案。62.上述输入序列中的每个第一词语的嵌入信息例如可以用于指示第一词语的词嵌入(token embedding)信息、第一词语的分割嵌入(segment embedding)信息,以及,第一词语的位置嵌入(position embedding)信息中的至少一项。其中,标注后的目标问题中代词的嵌入信息用于指示该代词的词嵌入信息、该代词的分割嵌入信息、该代词的位置嵌入信息,以及,该代词的类别信息。63.示例性的,服务器在获取上述目标问题之后,可以对目标问题中的代词进行分类,以获取目标问题中代词的类别信息。具体实现时,服务器例如可以按照预设的分类规则,对目标问题中的代词进行分类。示例性的,上述预设的分类规则例如可以根据目标问题的语种进行确定。64.例如,若目标问题为英语,则服务器可以将代词的类别分为十类(人称代词、物主代词、指示代词、反身代词、相互代词、疑问代词、关系代词、连接代词、不定代词和替代词),并判断目标问题中的代词所属的类别。若目标问题为中文,则服务器可以将代词的类别分为三类(人称代词、疑问代词和指示代词),并判断目标问题中的代词所属的类别。65.或者,上述预设的分类规则还可以是根据实际需求预先设定并存储在服务器中的。服务器可以根据预设的分类规则,获取代词的类别信息。66.可选的,在获取目标问题中代词的类别信息之后,服务器例如可以通过计算目标问题中代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息的加权和,获取目标问题中代词的嵌入信息。示例性的,服务器例如可以通过下述公式(1)获取代词的嵌入信息:67.posppe=λ1×pos+λ2×cpron+λ3×seg+λ4×tokꢀꢀꢀꢀꢀ(1)68.其中,posppe表示代词的嵌入信息,λ1、λ2、λ3、λ4表示协调因子,且λ1+λ2=1,λ3和λ4的取值例如均可以为1。pos表示代词的位置嵌入信息,cpron表示代词的类别嵌入信息,seg表示代词的分割嵌入信息,tok表示代词的词嵌入信息。69.或者,服务器在获取上述输入序列之后,还可以将上述输入序列输入训练好的双向转换编码表示模型(bidirectional encoder representations from transformers,bert),以获取输入序列中的每个第一词语的嵌入信息,并针对输入序列中目标问题中的代词,获取其代词的嵌入信息。70.再或者,服务器还可以对上述目标文档,以及,针对目标文档的前n轮历史问题和历史问题对应的答案进行词性分析。若上述目标文档,和/或针对目标文档的前n轮历史问题和历史问题对应的答案中包括代词,服务器还可以获取目标文档,和/或针对目标文档的前n轮历史问题和历史问题对应的答案中的代词的嵌入信息(词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息)。71.s104、根据输入序列中的每个第一词语的嵌入信息获取输入序列的特征信息。72.其中,上述输入序列的特征信息包括了目标文档的前n轮历史问题和历史问题对应的答案与目标问题中代词的关联特征信息。73.示例性的,在获取输入序列中的每个第一词语的嵌入信息之后,服务器可以计算“针对目标文档的前n轮历史问题和历史问题对应的答案”中的每一个第一词语的嵌入信息,对目标问题和目标文档中的每一个第一词语的注意力贡献。然后服务器根据上述目标问题和目标文档中的每一个第一词语的注意力贡献,获取目标问题和目标文档中的每一个第一词语的注意力得分权重。再将目标问题和目标文档中的每一个第一词语的注意力得分权重,目标问题中的每一个第一词语进行加权求和,进而获取输入序列的特征信息。74.应当理解的是,上述步骤s103和s104还可以通过训练好的bert模型实现。即服务器可以将输入序列输入到训练好的bert模型中,该训练好的bert模型可以根据输入序列中的每个第一词语的嵌入信息获取输入序列的特征信息。75.s105、根据输入序列的特征信息,获取目标问题的答案。76.可选的,服务器在获取输入序列的特征信息之后,可以将输入序列的特征信息输入到答案获取模型中,以获取目标问题的答案。其中,上述答案获取模型例如可以包括至少一个预先训练好的深度学习模型。该预先训练好的深度学习模型可以根据输入的特征信息,获取目标问题的答案。77.或者,服务器例如还可以根据输入序列的特征信息,以及,输入序列的特征信息与目标问题的答案的映射关系,获取目标问题的答案。该映射关系例如可以是预先存储在服务器中的。78.再或者,服务器在获取输入序列的特征信息之后,还可以判断针对目标文档的前n轮历史问题的特征信息中,是否存在与目标问题的特征信息相同的历史问题的特征信息。若存在,则服务器可以将该历史问题对应的答案,作为目标问题的答案,以提高服务器获取目标问题的答案的效率。若不存在,则服务器可以按照前述方法,获取目标问题的答案。79.s106、输出目标问题的答案。80.在服务器获取目标问题的答案之后,服务器可以将该答案发送给用户使用的终端设备。然后该终端设备可以输出该答案,以使用户可以获取该答案。或者,当上述方法的执行主体为用户使用的终端设备时,终端设备在获取到目标问题的答案之后,可以直接将该答案输出,具体实现时,本技术对终端设备如何输出该答案不进行限定。例如,终端设备可以通过语音播报或者显示文字等方式,输出该目标问题的答案。81.在本实施例中,将目标问题、目标文档,以及,目标文档的前n轮历史问题和历史问题对应的答案作为输入序列,当目标问题中包括代词时,获取输入序列中的每个第一词语的嵌入信息。且针对目标问题,获取目标问题中代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息作为代词的嵌入信息。再根据获取到的包括了代词的类别信息的输入序列中的每个第一词语的嵌入信息,获取目标问题的答案。相比于现有技术仅基于目标问题和目标文档获取答案,本技术通过结合代词的类别信息和目标文档的历史问答内容,提高了服务器获取目标问题中代词所指代的对象的准确性,进而提高了获取目标问题的答案的准确性,达到了提高用户的体验感的效果。82.考虑到针对不同类别(事实型和非事实型)的目标问题的答案的复杂程度不同,在获取目标问题的答案之前,服务器还可以对复杂程度较高的非事实型目标问题的答案进行进一步优化,以使非事实型目标问题的答案更加流畅,进而提高用户的体验感。83.其中,事实型目标问题指的是对应的答案为确定客观事实的问题。例如关于“谁(who)”、“哪里(where)”、“什么时候(when)”、“多少(how many)”、“多少钱(how much)”等的问题可以作为事实型问题。除了事实型问题以外的问题则为非事实型问题。例如关于“怎样(how)”、“为什么(why)”、“什么(what)”等的问题可以作为非事实型问题。具体实现时,可以根据预设的分类规则判断具体哪些问题可以作为事实型问题(或者非事实型问题)。84.下面针对服务器如何根据输入序列的特征信息,获取目标问题的答案进行说明。图4为本技术提供的一种获取目标问题的答案的方法的流程示意图。如图4所示,作为一种可能的实现方式,上述步骤s105可以包括以下步骤:85.s201、从目标文档中提取出目标问题的初始答案。86.示例性的,服务器可以将上述输入序列的特征信息作为训练好的提取式答案获取模型的输入,实现从目标文档中提取出文档的原文作为目标问题的初始答案。上述提取式答案获取模型例如可以是预训练语言模型。示例性的,该预训练语言模型例如可以是bert模型或者鲁棒优化的bert模型(robustly optimized bert pre-training approach,roberta)等。87.s202、判断目标问题是否为非事实型问题。若是,则服务器可以执行步骤s203。若否,可选的,服务器可以执行步骤s205。88.可选的,在服务器获取目标问题的答案之前,服务器例如可以将目标问题输入到问题分类模型中,并根据问题分类模型的输出结果,确定目标问题是否为非事实型问题。89.或者,服务器例如还可以通过判断目标问题中是否包括能够用于指示该目标问题为非事实型问题的关键词,确定该目标问题是否为非事实型问题。示例性的,若目标问题中包括“为什么(或者why)”这个关键词,那么服务器可以确定该目标问题为非事实型问题。若目标问题中不包括任何一个能够用于指示该目标问题为非事实型问题的关键词,那么服务器可以确定该目标问题不是非事实型问题。90.s203、获取初始答案中各第二词语的预测词。91.其中,该第二词语指的是初始答案中的任意一个词语。92.可选的,服务器在获取初始答案之后,可以将该初始答案输入生成式答案获取模型,以获取初始答案中各第二词语的预测词。示例性的,生成式答案获取模型可以从预设词典中获取初始答案中各第二词语的预测词。其中,预设词典可以包括:目标问题中的第一词语,以及,文档中的第一词语。或者,示例性的,生成式答案获取模型例如还可以获取初始答案中第二词语的任意一个近义词,作为该初始答案中第二词语的预测词。93.或者,服务器例如还可以计算预设词典中的各词语与初始答案中各第二词语的相关性,获取与第二词语相关性最高的词语作为第二词语的预测词。94.示例性的,该生成式答案获取模型例如可以是序列到序列(sequence to sequence,seq2seq)模型。其中,该seq2seq模型例如可以由循环神经网络(recurrent neural network,rnn)构成。95.s204、根据初始答案,以及,初始答案中各第二词语的预测词获取目标问题的答案。96.可选的,在获取初始答案中第二词语的预测词之后,服务器可以计算第二词语在目标句子中的流畅度概率(“流畅度概率”也可以称为预测某一词语的概率),以及,第二词语的预测词在目标句子中的流畅度概率。其中,目标句子为第二词语在初始答案中所属的句子。97.然后将第二词语在目标句子中的流畅度概率,以及,第二词语的预测词在目标句子中的流畅度概率进行比较。具体实现时,服务器可以参照现有的任何一种获取词语在目标句子中的流畅度概率的方法,获取第二词语在目标句子中的流畅度概率,以及,第二词语的预测词在目标句子中的流畅度概率,本技术对此不进行限定。98.若第二词语在目标句子的流畅度概率小于第二词语的预测词在目标句子中的流畅度概率,说明使用该第二词语的预测词构成目标句子能够使得目标句子的流畅性更好,更符合人工回答问题时所组织的句子。则,服务器可以目标句子中使用第二词语的预测词替换第二词语,进而得到目标问题的答案。99.若第二词语在目标句子的流畅度概率大于或等于第二词语的预测词在目标句子中的流畅度概率,说明使用该第二词语构成目标句子能够使得目标句子的流畅性更好,更符合人工回答问题时所组织的句子。因此,则服务器可以不使用第二词语的预测词替换第二词语,直接使用第二词语构成的目标句子得到目标问题的答案。100.应当理解的是,本技术对服务器如何根据初始答案,以及,初始答案中各第二词语的预测词获取目标问题的答案不进行限定。上述方法仅是本技术提供的可能的实现方式。具体实现时,示例性的,服务器例如还可以在获取初始答案中各第二词语的预测词之后,直接使用获取的预测词,替换初始答案中的各第二词语。然后计算由初始答案中各第二词语构成的语句的流畅度概率,以及,由各预测词构成的语句的流畅度概率。然后将流畅度概率较大的语句作为目标问题的答案。101.s205、将目标问题的初始答案作为目标问题的答案。102.对于获取事实型目标问题的答案,可选的,服务器可以参照前述步骤s201中所述,或者现有的任何一种获取目标问题的答案的方法,从目标文档中提取出目标问题的初始答案,本技术在此不再赘述。事实型目标问题的答案的语句往往比较简短,对答案的流畅度的影响较小。因此,服务器可以直接将目标问题的初始答案作为目标问题的答案,以提高服务器获取答案的效率。103.应理解,上述实施例虽然是以先执行步骤s201,再执行步骤s202的实现方式为例进行描述的,但是具体实现时,服务器也可以先执行步骤s202,再执行步骤s201。或者,服务器也可以同时执行步骤s202和s201。104.在本实施例中,通过将目标问题分为事实型问题和非事实型问题,然后针对非事实型目标问题,从目标文档中提取出初始答案。再根据初始答案中的第二词语,以及,初始答案中第二词语的预测词获取目标问题的答案。实现了对非事实型问题的答案的优化,使得非事实型问题的答案能够更加流畅,进一步提高了用户的体验感。105.以目标问题、目标文档,以及,针对目标文档的前n轮历史问题和历史问题对应的答案均含有代词为例,图5为本技术提供的另一种问答方法的流程示意图。如图5所示,该方法包括以下步骤:106.步骤1:用户使用的终端设备可以接收针对目标文档的问答请求,该问答请求中包括目标问题。然后终端设备可以将该问答请求发送给服务器。服务器在接收到该问答请求之后,可以通过对输入序列进行词性分析,以获取输入序列中的代词,并对这些代词添加标注,得到标注后的输入序列。107.图5的输入序列中,[cls]为输入序列的第一个字符,表示该输入序列的开始。qt1、qt2均表示目标问题中的第一词语。[sep]表示分隔符。xt1、xt2表示目标文档中的第一词语,at1、at2表示针对目标文档的前n轮历史问题和历史问题对应的答案。x、y、l、m、p均表示文字。[0108]步骤2:服务器可以获取输入序列中每个第一词语的嵌入信息。其中,输入序列中代词的嵌入信息用于指示代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息。[0109]示例性的,服务器可以通过编码获取输入序列中每个第一词语的词嵌入信息、分割嵌入信息、位置嵌入信息。对于代词的嵌入信息,服务器可以通过前述公式(1)获取。[0110]可选的,上述代词的位置嵌入信息还可以分为奇数和偶数维的代词的位置嵌入信息。具体的,服务器可以通过公式(2)获取偶数维的代词的位置嵌入信息,通过公式(3)获取奇数维的代词的位置嵌入信息:[0111][0112][0113]在公式(2)和公式(3)中,b代表位置嵌入信息的维度,pepron(pospron,2b)表示偶数维的代词的位置嵌入信息,pepron(pospron,2b+1)表示奇数维的代词的位置嵌入信息。pospron表示代词位置的编码信息。dmodel代表与词嵌入信息、分割嵌入信息相同的维度,dmodel的值可以由用户预先设置在服务器中。[0114]示例性的,当代词的类别为10类时,表1为各类别代词的示例。[0115]表1[0116][0117]步骤3、根据输入序列中的每个第一词语的嵌入信息获取输入序列的特征信息。图6为本技术提供的一种获取输入序列的特征信息方法的流程示意图。如图6所示,其中x、y、l、m、p、r、s均表示文字。表示针对目标文档的前n轮历史问题和历史问题对应的答案其中,代表第k个目标问题之前的第i轮历史问题和历史问题对应的答案。[0118]具体的,如图6所示,在获取输入序列中的每个第一词语的嵌入信息之后,服务器可以计算“针对目标文档的前n轮历史问题和历史问题对应的答案”中的每一个第一词语的嵌入信息,对目标问题和目标文档中的每一个第一词语的注意力贡献。然后服务器根据上述目标问题和目标文档中的每一个第一词语的注意力贡献,获取目标问题和目标文档中的每一个第一词语的注意力得分权重。再将目标问题和目标文档中的每一个第一词语的注意力得分权重,目标问题中的每一个第一词语进行加权求和,进而获取输入序列的特征信息。[0119]步骤4:根据输入序列的特征信息,获取目标问题的答案。[0120]如图5所示,服务器可以将上述输入序列的特征信息输入到作为预训练语言模型(bert模型或者roberta模型)编码端的输入。以预训练语言模型为bert模型为例,经过bert学习之后,得到输出uj。j=0时,u0表示bert的输出端第一个特殊符号[cls]的输出,即输入序列的累计表示。也就是说,u0中包含了整个输入序列的累计信息。将uj输入提取式答案获取模型进行目标问题的初始答案的范围预测(初始答案在目标文档中的位置),得到目标问题的初始答案。[0121]可选的,服务器还可以将目标问题输入到问题类型分类器,以将目标问题分为事实型问题和非事实型问题。具体的,如图6所示,服务器可以通过bert编码或者rnn编码的方式获取目标问题的序列v0。然后利用v0经过激活函数后进行问题分类,将目标问题分为事实性问题和非事实型问题。[0122]若目标问题为事实型问题,鉴于事实型问题多为短小,明确的事实答案,则服务器可以将目标问题的初始答案作为目标问题的答案。[0123]若目标问题为非事实型问题,服务器可以将目标问题的初始答案,以及,前述u0输入到生成式答案获取模型中,以获取初始答案中各第二词语的预测词。其中,生成式答案获取模型可以从预设词典(即图6中所示的自定义词典)中获取初始答案中各第二词语的预测词。可选的,该预设词典中的词语可以包括目标问题中的第一词语,以及,文档中的第一词语。[0124]然后服务器可以计算第二词语在目标句子中的流畅度概率,以及,第二词语的预测词在目标句子中的流畅度概率。示例性的,服务器例如可以通过下述公式(4)获取第二词语在目标句子中的流畅度概率,通过下述公式(5)获取第二词语的预测词在目标句子中的流畅度概率。[0125][0126][0127]在公式(4)中,表示第二词语在目标句子中的流畅度概率。代表答案当前状态与初始答案aq之间的注意力。在公式(5)中,表示第二词语的预测词在目标句子中的流畅度概率。softmax表示softmax损失函数。其中,代表学习了目标文档表示u的当前状态lu代表目标文档的长度(目标文档中第一词语的数量)。代表当前状态与文档uj之间的注意力。此外,之间的注意力。此外,wo1,bo1上述生成式答案获取模型的参数矩阵。[0128]然后服务器将第二词语在目标句子中的流畅度概率,以及,第二词语的预测词在目标句子中的流畅度概率进行比较。若第二词语在目标句子的流畅度概率小于第二词语的预测词在目标句子中的流畅度概率,说明使用该第二词语的预测词构成目标句子能够使得目标句子的流畅性更好,更符合人工回答问题时所组织的句子。则,服务器可以目标句子中使用第二词语的预测词替换第二词语,进而得到目标问题的答案。[0129]步骤5:输出目标问题的答案。[0130]在获取目标问题的答案之后,服务器可以输出该答案,以使用户可以获取针对该目标问题的答案。[0131]前述各实施例详细说明了当目标问题中包括代词时,如何获取目标问题的答案。当目标问题中不包括代词时,可选的,例如可以省略前述步骤s102,然后参照前述任一实施例所述的方法,获取目标问题的答案,本技术在此不再赘述。[0132]图7为本技术提供的一种问答装置的结构示意图。如图7所示,该装置包括:接收模块31、处理模块32,以及,输出模块33。其中,[0133]接收模块31,用于接收针对目标文档的问答请求,所述问答请求包括目标问题;[0134]处理模块32,用于对所述目标问题中的代词添加标注,得到标注后的目标问题;获取输入序列中的每个第一词语的嵌入信息;根据所述输入序列中的每个第一词语的嵌入信息获取所述输入序列的特征信息;根据所述输入序列的特征信息,获取所述目标问题的答案。其中,所述输入序列包括:所述标注后的目标问题、所述目标文档,以及,针对所述目标文档的前n轮历史问题和所述历史问题对应的答案;所述n为大于或等于1的整数;所述标注后的目标问题中代词的嵌入信息用于指示所述代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息。[0135]输出模块33,用于输出所述目标问题的答案。[0136]可选的,所述代词的嵌入信息为所述代词的词嵌入信息、分割嵌入信息、位置嵌入信息,以及,类别信息的加权和。[0137]可选的,处理模块32具体用于确定所述目标问题是否为非事实型问题,并从所述目标文档中提取出所述目标问题的初始答案;若所述目标问题为非事实型问题,则获取所述初始答案中各第二词语的预测词;根据所述初始答案,以及,初始答案中各第二词语的预测词获取所述目标问题的答案。[0138]可选的,处理模块32具体用于针对所述初始答案中的每个第二词语,若所述第二词语在目标句子的流畅度概率小于所述第二词语的预测词在所述目标句子中的流畅度概率,则在所述目标句子中使用所述预测词替换所述第二词语,得到所述答案;其中,所述目标句子为所述第二词语在所述初始答案中所属的句子。[0139]可选的,处理模块32具体用于利用预设词典,获取初始答案中各第二词语的预测词;其中,所述预设词典包括:所述目标问题中的第一词语,以及,所述文档中的第一词语。[0140]可选的,处理模块32还用于若所述目标问题为事实型问题,则将所述目标问题的初始答案作为所述目标问题的答案。[0141]本技术提供的问答装置,用于执行前述问答方法实施例,其实现原理与技术效果类似,对此不再赘述。[0142]应理解,前述实施例是以问答方法的执行主体为服务器进行的示例性说明。具体实现时,前述方法实施例所描述的问答方法的执行主体还可以是与用户交互的终端设备(即,终端设备接收到用户输入的问答请求后,执行上述方法,以获取和输出目标问题的答案)等具有处理功能的电子设备。[0143]图8为本技术提供的一种电子设备结构示意图。如图8所示,该电子设备400可以包括:至少一个处理器401和存储器402。[0144]存储器402,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。[0145]存储器402可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。[0146]处理器401用于执行存储器402存储的计算机执行指令,以实现前述方法实施例所描述的问答方法。其中,处理器401可能是一个中央处理器(central processing unit,简称为cpu),或者是特定集成电路(application specific integrated circuit,简称为asic),或者是被配置成实施本技术实施例的一个或多个集成电路。[0147]可选的,该电子设备400还可以包括通信接口403。在具体实现上,如果通信接口403、存储器402和处理器401独立实现,则通信接口403、存储器402和处理器401可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component,简称为pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称为eisa)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。[0148]可选的,在具体实现上,如果通信接口403、存储器402和处理器401集成在一块芯片上实现,则通信接口403、存储器402和处理器401可以通过内部接口完成通信。[0149]本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁盘或者光盘等各种可以存储程序代码的介质,具体的,该计算机可读存储介质中存储有程序指令,程序指令用于上述实施例中的方法。[0150]本技术还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。电子设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得电子设备实施上述的各种实施方式提供的问答方法。[0151]最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部