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

技术编号:33289820 阅读:17 留言:0更新日期:2022-05-01 00:06
本发明专利技术涉及对话系统领域,特别涉及一种基于语义感知的一对多对话生成方法及装置,包括获取实时输入问题并送入训练好的对话生成模型,对话生成模型根据输入问题得到多样性的回复,对话生成模型包括输入编码器、输出编码器、识别网络、先验网络、分类器、no emotion解码器、positive解码器、negative解码器;本发明专利技术的模型分为预训练和训练两个训练过程,本发明专利技术在模型中引入一个能识别出对话的情感或动作的可控变量,通过该可控件变量来选择不同类别的解码器并在训练过程中迫使隐空间特征解耦成不同语义类别的子空间,让相同语义类别的对话能映射到隐空间的相近的位置,进而生成个性化、高质量、可解释、多样性的文本。多样性的文本。多样性的文本。

【技术实现步骤摘要】
一种基于语义感知的一对多对话生成方法及装置


[0001]本专利技术涉及对话系统领域,特别涉及一种基于语义感知的一对多对话生成方法及装置。

技术介绍

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

技术实现思路

[0004]为解决传统开放领域对话生成模型中将不同的情感动作混合在一起,倾向生成高频无意义回复的问题。本专利技术提供了一种基于语义感知的一对多对话生成方法,获取实时输入问题,将实时输入问题送入训练好的对话生成模型,对话生成模型根据输入问题得到多样性的回复,对话生成模型包括输入编码器、输出编码器、识别网络、先验网络、分类器、no emotion解码器、positive解码器、negative解码器;
[0005]对话生成模型的训练过程包括预训练和训练两个过程,具体表示为:
[0006]101、获取多组对话样本对输入编码器、输出编码器、识别网络、先验网络、分类器、预训练解码器进行预训练,预训练过程包括:
[0007]S11.对多组对话样本进行预处理,每组对话样本包括问题、回复和问题的情感标签;
[0008]S12.从多组预处理后的对话样本中抽取一组对话样本,将对话样本中预处理后的问题和回复分别送入输入编码器和输出编码器进行编码,得到问题向量表示和回复向量表示;
[0009]S13.将问题向量表示送入先验网络得到先验分布的参数,将回复向量表示送入识别网络得到近似后验分布的参数,计算先验分布和近似后验分布的KL散度并计算KL散度损失;
[0010]S14.根据近似后验分布的参数得到隐变量,将隐变量输入分类器计算当前对话样本属于各类别的归一化概率,取最大的归一化概率的类别作为分类结果,并计算分类损失;
[0011]S15.将隐变量作为预训练解码器的初始状态,将回复输入预训练解码器得到输出
结果,并根据输出结果计算重构期望损失;
[0012]S16.将KL散度损失、分类损失和重构期望损失相加,通过梯度反向传播更新对话生成模型的参数,参数更新后返回步骤S12进行迭代,直到参数收敛完成对话生成模型的预训练;
[0013]102、完成预训练后,固定输入编码器、输出编码器、识别网络、先验网络和分类器的参数,将对话样本按照无情感、积极情感和消极情感分为三种类型的对话数据,分别用于no emotion解码器、positive解码器、negative解码器,采用重构损失函数依次训练三种解码器,直到三种解码器的参数收敛完成对话生成模型的训练。
[0014]进一步的,对多组对话样本采用Word2vec进行预处理包括,得到问题词嵌入序列{e(C1),e(C2),...,e(C
n
)}和回复词嵌入序列{e(X1),e(X2),...,(X
n
)},e(
·
)表示对对话样本中的单词做词嵌入,{C1,C2,...,C
n
}为对话样本中的问题,{X1,X2,...,X
n
}为对话样本中的回复。
[0015]进一步的,计算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]本专利技术构建的对话生成模型通过分类器的结果来选择解码器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于语义感知的一对多对话生成方法,其特征在于,获取实时输入问题,将实时输入问题送入训练好的对话生成模型,对话生成模型根据输入问题得到多样性的回复,对话生成模型包括输入编码器、输出编码器、识别网络、先验网络、分类器、no emotion解码器、positive解码器、negative解码器;对话生成模型的训练过程包括预训练和训练两个过程,具体表示为:101、获取多组对话样本对输入编码器、输出编码器、识别网络、先验网络、分类器、预训练解码器进行预训练,预训练过程包括:S11.对多组对话样本进行预处理,每组对话样本包括问题、回复和问题的情感标签;S12.从多组预处理后的对话样本中抽取一组对话样本,将对话样本中预处理后的问题和回复分别送入输入编码器和输出编码器进行编码,得到问题向量表示和回复向量表示;S13.将问题向量表示送入先验网络得到先验分布的参数,将回复向量表示送入识别网络得到近似后验分布的参数,计算先验分布和近似后验分布的KL散度并计算KL散度损失;S14.根据近似后验分布的参数得到隐变量,将隐变量输入分类器计算当前对话样本属于各类别的归一化概率,取最大的归一化概率的类别作为分类结果,并计算分类损失;S15.将隐变量作为预训练解码器的初始状态,将回复输入预训练解码器得到输出结果,并根据输出结果计算重构期望损失;S16.将KL散度损失、分类损失和重构期望损失相加,通过梯度反向传播更新对话生成模型的参数,参数更新后返回步骤S12进行迭代,直到参数收敛完成对话生成模型的预训练;102、完成预训练后,固定输入编码器、输出编码器、识别网络、先验网络和分类器的参数,将对话样本按照无情感、积极情感和消极情感分为三种类型的对话数据,分别用于no emotion解码器、positive解码器、negative解码器,采用重构损失函数依次训练三种解码器,直到三种解码器的参数收敛完成对话生成模型的训练。2.根据权利要求1所述的一种基于语义感知的一对多对话生成方法,其特征在于,对多组对话样本采用Word2vec进行预处理包括,得到问题词嵌入序列{e(C1),e(C2),...,e(C
n
)}和回复词嵌入序列{e(X1),e(X2),...,(X
n
)},e(
·
)表示对对话样本中的单词做词嵌入,{C1,C2,...,C
n
}为对话样本中的问题,{X1,X2,...,X
n
}为对话样本中的回复。3.根据权利要求1所述的一种基于语义感知的一对多对话生成方法,其特征在于,计算KL散度的公式为:其中,μ、...

【专利技术属性】
技术研发人员:王烨廖靖波于洪冷佳旭刘立林安琪
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

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

1