一种对话生成的方法、装置、存储介质及电子设备制造方法及图纸

技术编号:22329770 阅读:12 留言:0更新日期:2019-10-19 12:12
本发明专利技术提供了一种对话生成的方法、装置、存储介质及电子设备,其中,该方法包括:获取源序列,根据源序列生成具有最大概率的、预设数量的目标序列,并确定每个目标序列的正向概率;确定每个目标序列的反向概率;根据每个目标序列的正向概率和反向概率分别确定每个目标序列的双向互信息,双向互信息与正向概率和反向概率之间均为正相关关系;将具有最大双向互信息的目标序列作为与源序列相对应的有效序列。通过本发明专利技术实施例提供的对话生成的方法、装置、存储介质及电子设备,可以更加准确地得到高质量、有用的下文回复,减少对话过程中生成无意义的回复。

【技术实现步骤摘要】
一种对话生成的方法、装置、存储介质及电子设备
本专利技术涉及对话生成的
,具体而言,涉及一种对话生成的方法、装置、存储介质及电子设备。
技术介绍
在现有的对话系统中,一般利用序列到序列模型(sequence-to-sequencemodel)生成对话回复。基于深度学习的序列到序列模型是编码-解码(encoder-decoder模型),其提供了一种基于源语言序列(source,也就是上文),生成目标语言序列(target,也就是对话回复)的普适解决方法。然而,在对话系统中,序列到序列模型存在着非常严重的一个问题,就是不管用户输入的句子是什么,系统的回复都是高频的通用回复,比如“我不知道”、“那太好了”等。例子1:用户句子:你在哪里出生?系统应答:我不知道。例子2:用户句子:你今年几岁了?系统应答:我不知道。例子3:用户句子:我要去杭州出差。系统应答:那太好了!
技术实现思路
为解决上述问题,本专利技术实施例的目的在于提供一种对话生成的方法、装置、存储介质及电子设备。第一方面,本专利技术实施例提供了一种对话生成的方法,包括:获取源序列,根据所述源序列生成具有最大概率的、预设数量的目标序列,并确定每个所述目标序列的正向概率,所述正向概率为基于所述源序列生成所述目标序列的概率;确定每个所述目标序列的反向概率,所述反向概率为基于所述目标序列预测生成所述源序列的概率;根据每个所述目标序列的正向概率和反向概率分别确定每个所述目标序列的双向互信息,所述双向互信息与所述正向概率和所述反向概率之间均为正相关关系;将具有最大双向互信息的目标序列作为与所述源序列相对应的有效序列。第二方面,本专利技术实施例还提供了一种对话生成的装置,包括:正向概率确定模块,用于获取源序列,根据所述源序列生成具有最大概率的、预设数量的目标序列,并确定每个所述目标序列的正向概率,所述正向概率为基于所述源序列生成所述目标序列的概率;反向概率确定模块,用于确定每个所述目标序列的反向概率,所述反向概率为基于所述目标序列预测生成所述源序列的概率;双向互信息确定模块,用于根据每个所述目标序列的正向概率和反向概率分别确定每个所述目标序列的双向互信息,所述双向互信息与所述正向概率和所述反向概率之间均为正相关关系;有效序列确定模块,用于将具有最大双向互信息的目标序列作为与所述源序列相对应的有效序列。第三方面,本专利技术实施例还提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于上述任意一项所述的对话生成的方法。第四方面,本专利技术实施例还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述任意一项所述的对话生成的方法。本专利技术实施例上述第一方面提供的方案中,基于源序列生成多个目标序列,且在确定目标序列的正向概率的同时,还确定反向概率;通过结合了正向概率和反向概率的双向互信息,可以更加准确地确定源序列的目标序列,即基于上文可以更加准确地得到高质量、有用的下文回复,减少对话过程中生成无意义的回复。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示出了本专利技术实施例所提供的一种对话生成的方法的流程图;图2示出了本专利技术实施例所提供的对话生成的方法中,生成预设数量目标序列的示意图;图3示出了本专利技术实施例所提供的对话生成的方法中,确定每个目标序列的反向概率的具体方法流程图;图4示出了本专利技术实施例所提供的序列到序列模型的一种结构示意图;图5示出了本专利技术实施例所提供的一种对话生成的装置的结构示意图;图6示出了本专利技术实施例所提供的用于执行对话生成的方法的电子设备的结构示意图。具体实施方式在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本专利技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本专利技术中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本专利技术中的具体含义。本专利技术实施例提供的一种对话生成的方法,可应用于对话领域,其中,该“对话”可以是基于问句生成回答的过程,也可以是基于上文生成相关联的下文的过程。参见图1所示,该方法包括:步骤101:获取源序列,根据源序列生成具有最大概率的、预设数量的目标序列,并确定每个目标序列的正向概率,正向概率为基于源序列生成目标序列的概率。本专利技术实施例中,源序列(source)即为用户输入或提供的内容,该源序列具体可以为用户提供的文本,例如,“你今年几岁了?”;或者,该源序列是文本的分词结果,例如,“你今年几岁了?”;或者是文本分词后的词向量等,本实施例对此不做限定。在确定源序列后,即可确定与该源序列相对应的所有目标序列(target),之后从所有的目标序列中选取具有最大概率的、预设数量的目标序列。例如,预设数量为10,则通过对目标序列的概率从大到小进行排序后,将前十个序列作为目标序列。其中,目标序列的正向概率为基于源序列生成目标序列的概率,即在该源序列的基础上得到该目标序列的概率。例如,源序列是“你今年几岁了?”,目标序列是“我今年五岁了”,则该目标序列的正向概率是从“你今年几岁了?”推出对话“我今年五岁了”的概率。其中,基于源序列确定目标序列的过程具体可通过传统的序列到序列模型实现。需要说明的是,步骤101中,在基于“概率”选取预设数量的目标序列时,此处的“概率”就可以是正向概率。步骤102:确定每个目标序列的反向概率,反向概率为基于目标序列预测生成源序列的概率。本专利技术实施例中,在确定目标序列正向概率的同时,还确定基于目标序列反向预测生成源序列的概率,即反向概率。例如,目标序列是“我今年五岁了”,源序列是“你今年几岁了?”,则该目标序列的反向概率指的是从“我今年五岁了”这一回复倒退得到“你今年几岁了?”这一问题的概率。步骤103:根据本文档来自技高网...

【技术保护点】
1.一种对话生成的方法,其特征在于,包括:获取源序列,根据所述源序列生成具有最大概率的、预设数量的目标序列,并确定每个所述目标序列的正向概率,所述正向概率为基于所述源序列生成所述目标序列的概率;确定每个所述目标序列的反向概率,所述反向概率为基于所述目标序列预测生成所述源序列的概率;根据每个所述目标序列的正向概率和反向概率分别确定每个所述目标序列的双向互信息,所述双向互信息与所述正向概率和所述反向概率之间均为正相关关系;将具有最大双向互信息的目标序列作为与所述源序列相对应的有效序列。

【技术特征摘要】
1.一种对话生成的方法,其特征在于,包括:获取源序列,根据所述源序列生成具有最大概率的、预设数量的目标序列,并确定每个所述目标序列的正向概率,所述正向概率为基于所述源序列生成所述目标序列的概率;确定每个所述目标序列的反向概率,所述反向概率为基于所述目标序列预测生成所述源序列的概率;根据每个所述目标序列的正向概率和反向概率分别确定每个所述目标序列的双向互信息,所述双向互信息与所述正向概率和所述反向概率之间均为正相关关系;将具有最大双向互信息的目标序列作为与所述源序列相对应的有效序列。2.根据权利要求1所述的方法,其特征在于,所述根据所述源序列生成具有最大概率的、预设数量的目标序列,并确定每个所述目标序列的正向概率,包括:根据所述源序列选取N个最大概率的第一候选词,每个所述第一候选词生成一个候选序列;在当前解码时刻,基于所述源序列和当前的N个所述候选序列,确定每个所述候选序列对应的M个最大概率的第二候选词,分别将M个所述第二候选词添加至相应的所述候选序列中,生成N×M个新的候选序列;根据所述候选序列所包含的所有候选词的概率确定每个候选序列的概率,并在N×M个候选序列中选取N个最大概率的候选序列;之后将下一解码时刻作为新的当前解码时刻,重复上述在当前解码时刻选取N个最大概率的候选序列的过程,直至解码过程结束;将最终选取的N个最大概率的候选序列作为目标序列,且所述目标序列的正向概率为相应的候选序列的概率。3.根据权利要求1所述的方法,其特征在于,所述确定每个所述目标序列的反向概率包括:基于编码模型确定所述目标序列的编码隐状态;基于解码模型,在当前解码阶段,根据所述编码隐状态确定所述源序列的每个源分词的概率,所述源分词为对所述源序列进行分词处理后所确定的分词;根据所有所述源分词的概率生成所述目标序列的反向概率。4.根据权利要求3所述的方法,其特征在于,所述根据所述编码隐状态确定所述源序列的每个源分词的概率包括:在当前解码阶段,确定所述编码模型每个编码阶段的编码隐状态的权重,并根据所述编码模型每个编码阶段的编码隐状态以及相应的权重确定在当前解码阶段的上下文向量;根据当前解码阶段的上下文向量、上一解码阶段的解码隐状态、上一解码阶段所对应源分词,确定当前解码阶段的解码隐状态以及当前解码阶段所对应的源分词的概率;之后将下一解码阶段作为当前解码阶段,重复上述确定解码隐状态以及源分词的概率的过程,直至确定所有源分词的概率。5.根据权利要求4所述的方法,其特征在于,所述根据所述编码模型每个编码阶段的编码隐状态以...

【专利技术属性】
技术研发人员:李纪为
申请(专利权)人:北京香侬慧语科技有限责任公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1