基于交互式解码的双语情感对话生成系统的制作方法
本发明实施例涉及语言处理技术领域,具体涉及一种基于交互式解码的双语情感对话生成系统。
背景技术:
目前,人机对话系统的应用范围越来越广。例如,在医疗领域,对话系统可以更便捷地为患者和消费者提供健康信息服务;在电子商务领域,面向任务的对话系统能协助客户完成网上购物。
随着情感在提高会话质量上的重要性的凸显,情感对话生成领域逐渐引起了人们的注意。研究者发现在对话过程中引入情感因素更能提升用户的体验感。为了让对话系统更加智能、生成的回复能更全面地满足人们需求,引入情感是必不可少的。因此,在对话生成过程中合理地引入情感因素,并生成高质量的文本内容是提高人机对话体验的关键,也是实现真正自然的人机交互的必经之路。
通过增加回复的多样性、引入外部知识库等方法可以提高生成回复的文本质量。然而,情感对话生成的一个难点在于如何以一种自然的、连贯的方式表达情感。
目前已提出的对话系统包括:1)通过预测情感关键词和主题关键词来指导回答的生成,增强主题相关度和情感相关度;2)通过引入情感编辑机制去生成高质量的情感回复;3)通过一种基于transformer机制的多维度生成网络,使用贝叶斯深度学习,提升情感对话生成模型的多样性。
以上对话生成模型虽然注意到情感因素在对话系统中的重要性,但取得的效果却不尽人意,不能够很好的挖掘对话内容中的情感要素,生成的回答情感强度不可控、不细致,难以充分发挥情感在对话中的作用,生成的句子显得十分生硬和呆板。因此,目前已提出的对话系统有待改进。
技术实现要素:
本发明实施例提供了一种基于交互式解码的双语情感对话生成系统,用以解决上述至少一个技术问题。
本发明实施例提供一种基于交互式解码的双语情感对话生成系统,包括:一个编码器和两个解码器;
所述编码器包括6个相同的网络块,每个网络块由2个子层组成,分别是multi-headattention层和feedforward层,每个网络块的内部结构和transformer相同;所述编码器的输出同时传递给所述两个解码器;
所述两个解码器分别为中文解码器和英文解码器,所述两个解码器的结构相同,每个解码器包括6个相同的网络块,每个网络块由3个子层组成,分别是maskedmulti-headattention层、multi-headattention层以及feedforward层,每个网络块的内部结构和transformer相同,每个解码器的输入由三部分组成:已生成的子句、所述编码器的输出和来自另一解码器的上下文信息;所述两个解码器之间通过内部交互和外部交互来传递信息,并行生成原语言的情感回复和辅助语言的情感回复,其中,中文回复为原语言的情感回复,英文回复为辅助语言的情感回复。
可选地,所述两个解码器各自执行的内部交互操作的流程相同且同步进行,其中,内部交互操作的流程为:
在时间步t时,根据所述两个解码器在t-1时刻各自输出的已经生成的文本
针对所述两个解码器中的第i个解码器,使用内部交互机制,将该解码器的当前状态更新为h′i:
h′1=inter(q1,[k1;k2],[v1;v2])
h′2=inter(q2,[k1;k2],[v1;v2])
其中[;]表示连接操作,inter()表示内部交互机制。
可选地,所述两个解码器中的第i个解码器采用内部交互机制inter()得到更新后的当前状态h′i的具体描述如下:
h′i=ri⊙hi+fi⊙zi
h1=attention(q1,k1,v1)
h2=attention(q2,k2,v2)
其中[;]表示连接操作,tanh和σ是激活函数,⊙表示元素点积,
可选地,所述两个解码器各自执行的外部交互操作的流程相同且同步进行,其中,外部交互操作的流程为:
通过匹配层对所述两个解码器各自在在时间步t时的上下文信息
通过类型选择器确定所述两个解码器中每个解码器生成情感单词的权重α和普通单词的权重1-α;
分别使用情感softmax和普通softmax,获得情感词典和普通词典上的概率分布pe和pg,其中,情感词典和普通词典没有交集;
将pe和pg两个概率分布进行加权、连接操作,得到所述两个解码器中每个解码器各自输出的下一单词yt。
可选地,特征向量v符合以下公式:
其中,[;]表示连接操作,σ是激活函数,⊙表示元素点积,用来衡量所述两个解码器各自在t时刻的上下文信息
可选地,所述两个解码器中第i个解码器输出的下一单词
其中,[;]表示连接操作,e是情感嵌入向量,
可选地,所述交互式解码的双语情感对话生成系统输出的双语情感回复满足三方面的约束:流畅度、连贯度和情感度;
通过最小化以下损失函数值l(θ),同时优化所述编码器和所述两个解码器:
l(θ)=-(lf+lc+le)
其中,θ表示可训练的参数,lf表示所述交互式解码的双语情感对话生成系统输出的双语情感回复的流畅度,lc表示所述交互式解码的双语情感对话生成系统输出的双语情感回复的连贯度,le表示所述交互式解码的双语情感对话生成系统输出的双语情感回复的情感度。
可选地,所述交互式解码的双语情感对话生成系统输出的双语情感回复的流畅度lf满足以下公式:
y1表示所述交互式解码的双语情感对话生成系统输出的中文情感回复,
y2所述交互式解码的双语情感对话生成系统输出的英文情感回复,
n1代表y1的长度,n2代表y2的长度,pch代表中文语言模型,pen代表英文语言模型,pch和pen是两个预训练的n-gram语言模型。
可选地,所述交互式解码的双语情感对话生成系统输出的双语情感回复的连贯度lc满足以下公式:
其中,y1表示所述交互式解码的双语情感对话生成系统输出的中文情感回复,y2所述交互式解码的双语情感对话生成系统输出的英文情感回复,x代表给定问句,pseq2seq(yi|x)代表表示给定问句x时生成回复yi的概率,
可选地,所述交互式解码的双语情感对话生成系统输出的双语情感回复的情感度le满足以下公式:
其中,
本发明的有益效果如下:
1、本发明采用多语种信息互补,可以生成高质量的情感回复。以往的情感对话生成模型都是使用单语料进行训练和测试,本发明使用双语料(中文和英文)来训练和测试模型,在生成情感回复的过程中充分利用了不同语言之间的互补信息来提高回复质量。具体地,中文解码器和英文解码器通过内部、外部交互机制进行信息的互补。其中,内部交互借助语言之间冗余信息的辅助作用,挖掘不同语种回答之间的动态上下文信息,利用更充足的信息生成回复,从而降低困惑度,提高回答内容的质量,生成高质量的情感回复;外部交互在充分考虑另一解码器的上下文信息后,通过类型选择器来选择生成情感单词或者普通单词,平衡了回复的语法合理性和情感自然性。
2、本发明可以生成双语情感回复。在本发明的情感对话生成系统中,能同时生成多种语言的情感回复,让模型能不限制于特定语言的约束,满足更多场景的需求。最终获取中文、英文情感回复,中文是使用人数最多的母语,英文是通用的语言,两者结合的情感对话生成模型能够丰富使用场景。
3、本发明克服目前已提出的对话系统生成的回答的情感强度不可控的缺点。在本发明的情感对话生成系统中,采用外部交互机制来根据不同解码器上下文信息选择更合适的情感单词或普通单词生成回答,能明显地提升生成情感回复的情感相关性,保证文本生成过程中受到准确的约束。
4、本发明克服目前已提出的对话系统的生成的回答不能兼顾语法合理性和情感准确度的缺点。从流畅度、连贯度和情感度三方面综合考虑来设计损失函数,来进一步降低了文本的困惑度,提高情感的准确率和强度。
5、本发明可以做到真正的“情感交互”。目前已提出的对话系统只能做到检测情感、分析情感,但无法做到在对话中反馈用户的情感。本发明在分析用户情感的同时,生成合适的情感关键词,再以此为基础扩展出带有情感色彩的回复,使系统与用户做到“情感交互”。此外,生成的回答较目前已提出的对话系统具有更强的情感相关度、情感强度,更能够提升用户体验感。这是本发明相比于目前已提出的对话系统最大的优势。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是transformer模型的示意图;
图2是本发明实施例中一种基于交互式解码的双语情感对话生成系统的示意图;
图3是本发明实施例中内部交互机制的示意图;
图4是本发明实施例中外部交互机制的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例发现目前已提出的对话系统存在的问题至少包括:没有考虑使用多语料库进行训练时,在生成回复过程中不同语言之间补充信息的辅助作用;只依靠单一的约束无法满足实际需求。因此,本发明实施例提出需要同时从文本流畅度、文本连贯度和情感相关度来进行全面的约束,指导情感文本的生成。此外,本发明实施例提出使用类型选择器在生成回复的过程中选择生成情感单词或普通单词,指导生成的回复更好地平衡语法和情感强度。
基于此,本发明的一个实施例提供了一种基于交互式解码的双语情感对话生成系统。参考图1和图2,图1是transformer模型的示意图,图2是本发明实施例提供的一种基于交互式解码的双语情感对话生成系统的示意图。本发明实施例提供的一种基于交互式解码的双语情感对话生成系统遵循transformer的总体架构,包括:一个编码器和两个解码器,一个编码器和两个解码器使用堆叠式自注意力和逐点全连接层实现。
编码器包括6个相同的网络块,参考图1,图1示出了一个网络块的具体结构,图1中“n×”表示n个相同的网络块,示例地,n为6。如图1所示,每个网络块由2个子层组成,分别是multi-headattention层(多头注意力层)和feedforward层(前馈层),每个网络块的内部结构和transformer相同。编码器的输出同时传递给两个解码器。
两个解码器分别为中文解码器和英文解码器,两个解码器的结构相同,每个解码器包括6个相同的网络块。参考图1,图1示出了一个网络块的具体结构,图1中“n×”表示n个相同的网络块,示例地,n为6。如图1所示,每个网络块由3个子层组成,分别是maskedmulti-headattention层(带掩码操作的多头注意力层)、multi-headattention层(多头注意力层)以及feedforward层(前馈层),每个网络块的内部结构和transformer相同。
参考图2,每个解码器的输入由三部分组成:已生成的子句、所述编码器的输出和来自另一解码器的上下文信息,两个解码器之间通过内部交互和外部交互来传递信息,并行生成原语言的情感回复和辅助语言的情感回复,其中,中文回复为原语言的情感回复,英文回复为辅助语言的情感回复。
在具体实施时,所述两个解码器各自执行的内部交互操作的流程相同且同步进行。参考图3,图3是是本发明实施例中内部交互机制的示意图。内部交互操作的流程为:
在时间步t时,根据所述两个解码器在t-1时刻各自输出的已经生成的文本
针对所述两个解码器中的第i个解码器,使用内部交互机制,将该解码器的当前状态更新为h′i:
h′1=inter(q1,[k1;k2],[v1;v2])
h′2=inter(q2,[k1;k2],[v1;v2])
其中[;]表示连接操作,inter()表示内部交互机制。本发明中,“连接操作”代表两个向量的连接,连接可以按照行或列,在此不做具体限定。例如:维度为2×1的向量a和维度是3×1的向量b,对两个向量进行连接操作,得到的是维度为5×1的向量c(即,对两个向量按行拼接)。
本发明中,如未特别说明,t表示时间步t。
在具体实施时,所述两个解码器采用内部交互机制inter()得到更新后的当前隐藏状态h′i的具体描述如下::
h′i=ri⊙hi+fi⊙zi
h1=attention(q1,k1,v1)
h2=attention(q2,k2,v2)
其中[;]表示连接操作,tanh和σ是激活函数,⊙表示元素点积,
在具体实施时,所述两个解码器各自执行的外部交互操作的流程相同且同步进行。参考图4,图4是是本发明实施例中内部交互机制的示意图。外部交互操作的流程为:
通过匹配层(matchinglayer)对所述两个解码器各自在时间步t的上下文信息
通过分类层(classificationlayer)执行以下操作:
通过类型选择器(typelayer)确定所述两个解码器中每个解码器生成情感单词的权重α和普通单词的权重1-α;
分别使用情感softmax(emotionsoftmax)和普通softmax(genericsoftmax),获得情感词典和普通词典上的概率分布pe和pg,其中,情感词典和普通词典没有交集;
将pe和pg两个概率分布进行加权、连接操作,得到所述两个解码器中每个解码器各自输出的下一单词yt。
在具体实施时,特征向量v符合以下公式:
其中,[;]表示连接操作,σ是激活函数,⊙表示元素点积,用来衡量所述两个解码器各自在t时刻的上下文信息
在具体实施时,所述两个解码器中第i个解码器输出的下一单词
其中,[;]表示连接操作,e是情感嵌入向量,
其中,
在具体实施时,所述交互式解码的双语情感对话生成系统的输出双语情感回复满足三方面的约束:流畅度、连贯度和情感度;
通过最小化以下损失函数值l(θ),同时优化所述编码器和所述两个解码器:
l(θ)=-(lf+lc+le)
其中,θ表示可训练的参数,lf表示所述交互式解码的双语情感对话生成系统输出的双语情感回复的流畅度,lc表示所述交互式解码的双语情感对话生成系统输出的双语情感回复的连贯度,le表示所述交互式解码的双语情感对话生成系统输出的双语情感回复的情感度。
在具体实施时,所述交互式解码的双语情感对话生成系统输出的双语情感回复的流畅度lf满足以下公式:
y1表示所述交互式解码的双语情感对话生成系统输出的中文情感回复,
y2所述交互式解码的双语情感对话生成系统输出的英文情感回复,
n1代表y1的长度,n2代表y2的长度,pch代表中文语言模型,pen代表英文语言模型,pch和pen是两个预训练的n-gram语言模型。
本发明考虑到过短的回复通常是无意义的回复,而过长的回复常存在冗余。所以在语言模型的基础上按回复的长度进行缩放,从而控制回复的长度。
在具体实施时,所述交互式解码的双语情感对话生成系统输出的双语情感回复的连贯度lc满足以下公式:
其中,y1表示所述交互式解码的双语情感对话生成系统输出的中文情感回复,y2所述交互式解码的双语情感对话生成系统输出的英文情感回复,x代表给定问句,pseq2seq(yi|x)代表表示给定问句x时生成回复yi的概率,
在具体实施时,所述交互式解码的双语情感对话生成系统输出的双语情感回复的情感度le满足以下公式:
其中,
本发明的有益效果如下:
1、本发明采用多语种信息互补,可以生成高质量的情感回复。以往的情感对话生成模型都是使用单语料进行训练和测试,本发明使用双语料(中文和英文)来训练和测试模型,在生成情感回复的过程中充分利用了不同语言之间的互补信息来提高回复质量。具体地,中文解码器和英文解码器通过内部、外部交互机制进行信息的互补。其中,内部交互借助语言之间冗余信息的辅助作用,挖掘不同语种回答之间的动态上下文信息,利用更充足的信息生成回复,从而降低困惑度,提高回答内容的质量,生成高质量的情感回复;外部交互在充分考虑另一解码器的上下文信息后,通过类型选择器来选择生成情感单词或者普通单词,平衡了回复的语法合理性和情感自然性。
2、本发明可以生成双语情感回复。在本发明的情感对话生成系统中,能同时生成多种语言的情感回复,让模型能不限制于特定语言的约束,满足更多场景的需求。最终获取中文、英文情感回复,中文是使用人数最多的母语,英文是通用的语言,两者结合的情感对话生成模型能够丰富使用场景。
3、本发明克服目前已提出的对话系统生成的回答的情感强度不可控的缺点。在本发明的情感对话生成系统中,采用外部交互机制来根据不同解码器上下文信息选择更合适的情感单词或普通单词生成回答,能明显地提升生成情感回复的情感相关性,保证文本生成过程中受到准确的约束。
4、本发明克服目前已提出的对话系统的生成的回答不能兼顾语法合理性和情感准确度的缺点。从流畅度、连贯度和情感度三方面综合考虑来设计损失函数,来进一步降低了文本的困惑度,提高情感的准确率和强度。
5、本发明可以做到真正的“情感交互”。目前已提出的对话系统只能做到检测情感、分析情感,但无法做到在对话中反馈用户的情感。本发明在分析用户情感的同时,生成合适的情感关键词,再以此为基础扩展出带有情感色彩的回复,使系统与用户做到“情感交互”。此外,生成的回答较目前已提出的对话系统具有更强的情感相关度、情感强度,更能够提升用户体验感。这是本发明相比于目前已提出的对话系统最大的优势。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的单独实施例。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除