【技术实现步骤摘要】
针对请求和情感标签生成的带有指定情感的机器回复方法
[0001]本专利技术涉及一种针对请求和情感标签生成的带有指定情感的机器回复方法,属于自然语言处理
技术介绍
[0002]随着人机对话系统的不断发展,在生活中越来越多地接触到这类能够与人类进行交谈的“机器人”,它们正在一点点融入人们的日常生活,在帮助完成很多事情中不断提升生活水平。
[0003]目前,现有的基于深度学习的人机对话系统,机器生成的回复往往都是“冷冰冰”、不带有情感倾向的回复。而情感被视为一种“人类智能”,情感表达和感知能够通过自然语言实现,体现了基于情感的对话生成的重要性。
[0004]基于情感的对话生成,成为一个新颖且有意义的研究。然而,现有研究主要采取在解码器输入端拼接情感嵌入或引入外部情感词典方式,忽略了情感词更细力度的分类。
技术实现思路
[0005]本专利技术的目的是针对现有技术存在的缺陷,创造性地提出一种针对请求和情感标签生成的带有指定情感的机器回复方法。
[0006]本专利技术的创新点在于:利用深 ...
【技术保护点】
【技术特征摘要】
1.针对请求和情感标签生成的带有指定情感的机器回复方法,其特征在于,包括以下步骤:步骤1:利用带情感标签的对话数据集,提取其中带有情感的句子,得到用于预训练模型的语料集,同时搜集全部语句作为正式训练语料集;计算词汇的词频
‑
逆文本频率,用于获取主题词典,同时,获取外部情感词典;利用整体语料集,训练获取词的向量表示;步骤2:构建预训练网络模型,用于情感打分;预训练网络模型由长短期记忆LSTM和全连接层构成,其输出为情感分类情况,其中,情感得分score由余弦相似度计算,如式1所示:其中,p
classify
表示情感分类结果,l
one
‑
hot
表示情感标签的独热向量;‖
·
‖表示向量
·
的2范数;预训练损失函数如下式所示:L
′
=L
′1+L
′2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)L
′1=(1
‑
score)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)L
′2=
‑
∑
j
y
j
log(p
j
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)其中,L
′
表示预训练损失函数,L
′1表示情感得分损失,L
′2表示情感分类损失;p
j
表示数据被分到第j类的概率;y
j
表示实际分类结果,当数据属于j类时为1,其余情况为0;步骤3:构建用于正式训练的损失函数;正式训练损失函数包含以下三个部分:一是条件变分自编码器分布之间的KL散度表示如下:其中,KL表示KL散度计算,P
r
()表示条件变分自编码器中的识别网络输出的分布,z表示隐变量,X表示输入请求,表示参考回复,P
p
()表示条件变分自编码器中的先验网络输出的分布;二是对隐变量的情感分类损失表示如下:其中,表示在分布下的交叉熵;P(label|z)表示对隐变量z的分类结果为label的概率,label表示目标情感类别;三是输出回复序列与参考回复序列之间的交叉熵损失表示如下:其中,Y表示目标输出,z表示隐变量,t表示时间步,y
t
表示第t个时间步的输出,y表示时间步的输出;则用于正式训练的损失函数表示如下:
其中,α为超参数,用于控制KL损失所占的权重,在训练过程中由0增至1;步骤4:利用步骤1获取的训练数据和步骤2构建的预训练网络模型,训练得到预训练情感打分网络参数Parameter
pre
‑
train
;步骤5:利用步骤1得到的训练数据、步骤3的损失函数,以及...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。