一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于语义感知的一对多对话生成方法及装置

2022-04-30 14:28:51 来源:中国专利 TAG:


1.本发明涉及对话系统领域,特别涉及一种基于语义感知的一对多对话生成方法及装置。


背景技术:

2.对话系统主要分为以任务为导向的对话系统和开放式的对话系统。随着近年来神经网络的快速发展,对话系统从早期的统计语言模型的模型逐渐转向了基于深度序列模型的生成模型。
3.虽然生成模型提高了开放型对话系统的性能,但这样的黑盒模型仍存在预测结果可信度低、可解释性差的问题。针对上述问题,现有技术利用无监督模型生成更具解释性和可控性的对话,进而提出了基于潜在空间能量耦合了密集向量与符号向量的先验模型,而后通过引入指数混合分布捕获混合成分和数据之间的隐藏语义关系,得到一个更具有可解释性的隐空间。然而上述的对话模型仍然无法有效捕捉不同情绪的隐特征对解码器不同的生成逻辑,无法很好的解决解码器回复单一性的问题,因此在进行人机对话时,生成的高频无意义的回复,导致用户体验不佳。


技术实现要素:

4.为解决传统开放领域对话生成模型中将不同的情感动作混合在一起,倾向生成高频无意义回复的问题。本发明提供了一种基于语义感知的一对多对话生成方法,获取实时输入问题,将实时输入问题送入训练好的对话生成模型,对话生成模型根据输入问题得到多样性的回复,对话生成模型包括输入编码器、输出编码器、识别网络、先验网络、分类器、no emotion解码器、positive解码器、negative解码器;
5.对话生成模型的训练过程包括预训练和训练两个过程,具体表示为:
6.101、获取多组对话样本对输入编码器、输出编码器、识别网络、先验网络、分类器、预训练解码器进行预训练,预训练过程包括:
7.s11.对多组对话样本进行预处理,每组对话样本包括问题、回复和问题的情感标签;
8.s12.从多组预处理后的对话样本中抽取一组对话样本,将对话样本中预处理后的问题和回复分别送入输入编码器和输出编码器进行编码,得到问题向量表示和回复向量表示;
9.s13.将问题向量表示送入先验网络得到先验分布的参数,将回复向量表示送入识别网络得到近似后验分布的参数,计算先验分布和近似后验分布的kl散度并计算kl散度损失;
10.s14.根据近似后验分布的参数得到隐变量,将隐变量输入分类器计算当前对话样本属于各类别的归一化概率,取最大的归一化概率的类别作为分类结果,并计算分类损失;
11.s15.将隐变量作为预训练解码器的初始状态,将回复输入预训练解码器得到输出
结果,并根据输出结果计算重构期望损失;
12.s16.将kl散度损失、分类损失和重构期望损失相加,通过梯度反向传播更新对话生成模型的参数,参数更新后返回步骤s12进行迭代,直到参数收敛完成对话生成模型的预训练;
13.102、完成预训练后,固定输入编码器、输出编码器、识别网络、先验网络和分类器的参数,将对话样本按照无情感、积极情感和消极情感分为三种类型的对话数据,分别用于no emotion解码器、positive解码器、negative解码器,采用重构损失函数依次训练三种解码器,直到三种解码器的参数收敛完成对话生成模型的训练。
14.进一步的,对多组对话样本采用word2vec进行预处理包括,得到问题词嵌入序列{e(c1),e(c2),...,e(cn)}和回复词嵌入序列{e(x1),e(x2),...,(xn)},e(
·
)表示对对话样本中的单词做词嵌入,{c1,c2,...,cn}为对话样本中的问题,{x1,x2,...,xn}为对话样本中的回复。
15.进一步的,计算kl散度的公式为:
[0016][0017]
其中,μ、σ为近似后验分布的参数,μ'、σ'为先验分布的参数,dz是隐变量维度,q
φ
表示近似后验分布,表示先验分布,j表示当前维度数。
[0018]
进一步的,步骤s14中,根据近似后验分布的参数重参数化得到隐变量,重参数化表示为:
[0019]
z=μ σε;
[0020]
其中,ε从标准高斯分布中采样得到,z为隐变量,μ、σ为近似后验分布的高斯分布参数。
[0021]
进一步的,步骤s15中将隐变量通过多层感知机mlp转化成和预训练解码器相同维度的张量,从而将其作为预训练解码器的初始化隐状态h0和初始化细胞状态c0。
[0022]
进一步的,步骤s16中由kl散度损失、分类损失和重构期望损失构成的预训练损失函数为:
[0023][0024]
其中,-e
qφ(z|x,c)
[
·
]表示重构期望损失,kl(
·
)表示kl散度损失,nllloss(
·
)表示分类损失,x表示回复,c表示问题,z表示隐变量,label表示问题的emotion标签,p(e)表示当前对话样本属于各类别的归一化概率,p
θ
(x|z,c)表示条件概率分布,q
φ
(z|x,c)表示近似后验分布,表示先验分布,φ、θ为概率分布的参数。
[0025]
进一步的,通过分类器得到归一化概率p(e),分类器包括一个多层感知机和softmax层,隐变量为多层感知机的输入,多层感知机的输出作为softmax层的输入,softmax层的输出即为p(e),其表示为:
[0026]
p(e)=clf(z);
[0027]
clf(z)=softmax(o);
[0028]
o=mlp(z);
[0029]
其中,clf(
·
)表示分类器,mlp(
·
)表示多层感知机,softmax(
·
)表示softmax层,o表示多层感知机的输出。
[0030]
一种基于语义感知的一对多对话生成装置,包括:
[0031]
获取模块,用于实时获取输入语句;
[0032]
编码器模块,用于对获取模块的输入语句进行编码,得到输入语句的向量表示;
[0033]
识别模块,用于拟合编码器模块得到的向量表示,得到包含对话类别信息的隐变量;
[0034]
分类模块,用于根据隐变量确定输入语句的语义分类结果;
[0035]
生成模块,用于根据语义分类结果确定对应的解码器,根据解码器生成相应语义的回复。
[0036]
本发明的有益效果:
[0037]
本发明在模型中引入一个能识别出对话的情感或动作的可控变量,通过该可控件变量来选择不同类别的解码器并在训练过程中迫使隐空间特征解耦成不同语义类别的子空间,让相同语义类别的对话能映射到隐空间的相近的位置,进而生成个性化、高质量、可解释、多样性的文本。
[0038]
本发明构建的对话生成模型通过分类器的结果来选择解码器,在文本生成质量的各项指标上都要比其他只用单种类型的解码器或预训练时的解码器模型更好,本发明的模型能生成更高质量的、多样性的对话。
附图说明
[0039]
图1为本发明的对话生成模型结构图;
[0040]
图2为带情感标签的数据集隐变量可视结果;
[0041]
图3为带行为标签的数据集隐变量可视结果。
具体实施方式
[0042]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0043]
一种基于语义感知的开放领域一对多对话生成方法,基于条件变分自编码器(cvae)提出的优化方案scvae。通过引入一个显式可控变量来迫使隐空间解耦,将不同类别的对话映射到隐空间的不同位置,隐空间表示为一个按类别分开的多维高斯分布。如图1所示,包括获取实时输入问题,将实时输入问题送入训练好的对话生成模型,对话生成模型根据输入问题得到多样性的回复,对话生成模型包括输入编码器、输出编码器、识别网络、先验网络、分类器、no emotion解码器、positive解码器、negative解码器。
[0044]
本发明构建的对话生成模型可以由一个问题生成多种不同的回复,多种不同的回复取决于对隐空间的采样,每次采样所生成的对话都是不同的。多个解码器的作用是不同的解码器生成的对话,其携带的情感不同,所以叫语义感知的一对多对话。具体运用过程就是,模型编码问题后,对对话语义分类,根据分类结果选择对应的解码器来生成对应语义的
emotion解码器的参数,参数更新后返回步骤s22进行迭代,直到参数收敛完成no emotion解码器的训练。
[0060]
积极情感对话数据对包括问题、回复和问题的积极情感标签;消极情感对话数据对包括问题、回复和问题的消极情感标签;按照no emotion解码器的训练过程训练positive解码器、negative解码器。
[0061]
在一实施例中,预训练过程就是优化输入编码器、输出编码器、识别网络、先验网络、分类器、预训练解码器的过程,使用的数据为多组带情感标签的对话样本(c,x,e),其中c是对话样本中的问题文本序列{c1,c2,...,cn},x是对话样本中的回复文本序列{x1,x2,...,xn},e是问题文本的情感标签,采用问题文本的标签是为了生成对应问题文本情感的回复。
[0062]
采用word2vec对对话样本进行词嵌入,问题词嵌入序列表示为{e(c1),e(c2),...,e(cn)},回复词嵌入序列表示为{e(x1),e(x2),...,(xn)},e(
·
)表示对文本单词做词嵌入,e(xi),e(ci)∈rd,d=300。
[0063]
输入编码器和输出编码器均采用双向lstm实现,输入编码器将问题词嵌入编码为稠密的问题向量表示,输出编码器将回复词嵌入编码为稠密的回复向量表示;得到问题向量表示和回复向量表示后,需要将其拟合成潜在空间高斯分布的高斯参数,本实施例采用两个多层感知机实现,即识别网络和先验网络。
[0064]
识别网络用于拟合近似后验分布的高斯分布参数μ、σ,先验网络用于拟合先验分布的高斯分布参数μ'、σ',计算得到近似后验分布和先验分布的高斯参数μ、σ、μ'、σ'后,为了实现将隐空间特征解耦成不同语义类别的子空间,利用高斯参数计算近似后验分布和先验分布的kl散度,通过kl散度逼近近似后验分布和先验分布,其中,kl散度的计算公式为:
[0065][0066]
其中,μ、σ为近似后验分布的参数,μ'、σ'为先验分布的参数,dz是隐变量维度,q
φ
表示近似后验分布(识别网络),表示先验分布(先验网络),j表示当前维度数。
[0067]
因为采样过程不可逆,若直接从隐空间采样会导致优化失败,故重参数化隐变量z,z=μ σε,ε从标准高斯分布中采样得到;训练的时候,同样从近似后验分布中采样得到隐变量z,测试的时候,由于回复不能使用,只能使用问题,所以从先验分布中重参数化得到隐变量z=μ' σ'ε。
[0068]
在预训练过程中,隐变量z是分类器的输入和解码器的初始隐藏状态,分类器包括一个多层感知机和softmax层,隐变量为多层感知机的输入,多层感知机的输出作为softmax层的输入,softmax层的输出即为当前对话样本属于各类别的归一化概率p(e),其表示为:
[0069]
p(e)=clf(z);
[0070]
clf(z)=softmax(o);
[0071]
o=mlp(z);
[0072]
其中,clf(
·
)表示分类器,mlp(
·
)表示多层感知机,softmax(
·
)表示softmax层,o表示多层感知机的输出。
[0073]
分类器按照如上有监督的训练,最后训练好的模型就会按照类别将不同的数据映射到隐空间不同的位置,相同类别的对话数据会映射到比较相近的位置,不同类别的数据会映射到距离较远的位置。
[0074]
由于潜变量的维度和解码器隐状态的维度不同,故在解码前先将隐变量通过多层感知机mlp转化成和解码器相同维度的张量,从而作为解码器的初始化隐状态h0和初始化细胞状态c0。
[0075]
将隐变量作为预训练解码器的初始状态,训练时,解码器每一个单元的输入为回复文本对应的单词。测试时解码器的第一个单元的输入为开始标签《sos》(start of sentence),下一个单元的输入为上一个单元的输出,直到生成结束标签《eos》(end of sentence)。
[0076]
最后将解码器每个单元生成的单词按顺序组合起来并去掉开始标签和结束标签,得到的就是生成的对话回复。
[0077]
预训练过程中,由kl散度损失、分类损失和重构期望损失构成的预训练损失函数为:
[0078][0079]
其中,-e
qφ(z|x,c)
[logp
θ
(x|z,c)]表示重构期望损失,表示kl散度损失,nllloss(p(e),label)表示分类损失,x表示回复,c表示问题,z表示隐变量,label表示问题的emotion标签,p(e)表示当前对话样本属于各类别的归一化概率,p
θ
(x|z,c)表示条件概率分布,q
φ
(z|x,c)表示近似后验分布,表示先验分布,φ、θ为概率分布的参数。
[0080]
训练过程采用的重构损失函数为预训练过程中的重构期望损失,表示为:
[0081][0082]
x1表示所属类别的对话样本中的回复,c1表示所属类别的对话样本中的问题,z1表示某一解码器训练过程的隐变量,p
θ
(x1|z1,c1)表示条件概率分布,φ、θ为概率分布的参数。
[0083]
优选地,图2是隐空间中可视结果,记录了带情感标签的数据分别在隐空间中的原始分布与右图在使用了本发明模型后的解耦分布,表明本发明模型能够将对话按类别编码到隐空间不同的位置
[0084]
图3是隐空间中可视结果,记录了带行为标签的数据分别在隐空间中的原始分布与右图在使用了本发明模型后的解耦分布,表明本发明模型能够将对话按类别编码到隐空间不同的位置。
[0085]
对比了优化模型与其他对话生成的模型在几个评价指标(bleu、meteor、rouge、distinct-2、acc)上的文本的生成质量,指标结果如表1和2所示。
[0086]
表1是带有情感标签的评价指标结果,表中记录了在带有情感标签的数据集下,本发明模型中每个类别的解码器(no emotion、positive、negative、pretrain预训练时的解码器)生成对话的效果以及本发明模型与其他模型在5个评价指标上的结果,本发明模型在bleu、meteor上比其他模型都要高,在rouge上比seq2seq、transformer低,在dist-2中只比transformer低,表明本发明模型是优于其他模型的。
[0087]
表1带有情感标签的评价指标结果
[0088][0089]
表2是带有行为标签的评价指标结果,表中记录了在带有行为标签的数据集下本发明模型中每个类别的解码器(no emotion、positive、negative、pretrain预训练时的解码器)生成对话的效果以及本发明模型与其他模型在5个评价指标上的结果,本发明模型在评价指标bleu、meteor、rouge都比其他模型效果好,只在dist-2中低于transformer。所以本发明模型通过分类器的结果来选择解码器在文本生成的质量在各项指标上都要比其他只用单种类型的解码器或预训练时的解码器模型更好。
[0090]
表2带有行为标签的评价指标结果
[0091][0092]
表1和表2的结果也说明对话的情感和行为标签对文本的生成是有一定程度的影响的,在bleu、meteor、rouge这三个基于词重叠率的指标上,本发明的模型效果都更好,说明本发明的模型能生成更高质量的对话,而在dist-2指标上本发明也优于大部分模型,这说明本发明的模型能生成多样性的对话。当本发明的模型正确识别对话中的情感与行为标签时能提高对话回复的各项性能,取得较好的效果且具有泛化能力。
[0093]
一种基于语义感知的一对多对话生成装置,包括:
[0094]
获取模块,用于实时获取输入语句;
[0095]
编码器模块,用于对获取模块的输入语句进行编码,得到输入语句的向量表示;
[0096]
识别模块,用于拟合编码器模块得到的向量表示,得到包含对话类别信息的隐变量;
[0097]
分类模块,用于根据隐变量确定输入语句的语义分类结果;
[0098]
生成模块,用于根据语义分类结果确定对应的解码器,根据解码器生成相应语义的回复。
[0099]
具体地,生成模块根据输入句子的分类结果选择对应的解码器来生成正确语义的
回复。同一个问题每次生成的句子是不同的,这是由于z=μ σε这一步中的ε是从标准高斯分布中随机采样得到的。由于预训练时的分类任务,使得不同类别的句子在隐空间采样的位置不同,如图2中解耦的隐空间分布所示,不同类别的对话编码到了隐空间的不同位置。
[0100]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献