当前位置: 首页 > 专利查询>福州大学专利>正文

对话风格感知与主题引导的多轮对话方法及系统技术方案

技术编号:39058886 阅读:11 留言:0更新日期:2023-10-12 19:51
本发明专利技术提出对话风格感知与主题引导的多轮对话方法及系统,所述方法包括以下步骤;步骤A:采集特定场景多轮对话文本,标注每个对话的响应所属的类别,构建带正负类别标签的多轮对话训练集DS;步骤B:使用训练集DS,训练多任务深度学习网络模型,用于多轮对话响应选择;步骤C:将多轮对话上下文及候选响应输入到训练后的深度学习网络模型中,得到对应多轮对话上下文最合适的响应;本发明专利技术有利于提高人机对话过程多轮对话响应选择的准确性。机对话过程多轮对话响应选择的准确性。机对话过程多轮对话响应选择的准确性。

【技术实现步骤摘要】
对话风格感知与主题引导的多轮对话方法及系统


[0001]本专利技术涉及自然语言处理领域,尤其是对话风格感知与主题引导的多轮对话方法及系统。

技术介绍

[0002]随着计算机技术的不断发展,人工智能技术的发展也越来越迅速,人工智能在各个领域都发挥了重要作用。近些年来,随着机器学习和深度学习网络的发展,自然语言处理在人与计算机之间的对话中取得了巨大进步,人机对话系统逐渐成为研究的关键问题。人机对话系统是一种通过自然语言处理,让人和计算机进行对话交流的人机互动系统。人机对话系统有着重要的意义和应用价值,并且可以广泛地应用于多个领域。人机对话系统具有广泛的商业价值,目前有很多商业公司已经推出了和对话系统相关的产品,如苹果的Siri,微软的Cortana与小冰,谷歌的Google Now和阿里巴巴的阿里精灵等。目前的对话系统主要有基于生成和基于检索两种方法,前一种方法旨在给定上下文并根据给定的上下文生成合适的响应,后一种方法旨在从候选响应答案中选择正确的答案。
[0003]随着机器学习方法的不断发展,基于生成的方法被不断提出。基于生成的对话系统其生成的响应具有多样性,但往往逻辑性不强,有时还会陷入安全回复的陷阱中。而基于检索的对话系统是根据特定的上下文在语料库里检索最合适的响应,能够挖掘上下文与正确响应之间的关联信息,并根据这些信息推理出合适的响应,相较于生成式对话系统模型更加可靠,更具实用性。
[0004]目前基于检索的方法在不断发展,早期基于信息检索的系统主要运用于短文本和单轮的对话,使用简单的文本匹配和规则方法去解决,但是难以将这些方法运用于更贴近实际场景的多轮对话问题,多轮对话需要考虑对话上下文的长期依赖,相较于单轮对话而言更具挑战。深度学习在近年来的飞速发展为多轮对话问题提供了解决思路,Wu等人提出了SMN模型,它将候选的回答和对话上下文的每一句话分别匹配相似度,计算出最终分数。An等人使用了交叉卷积操作拓展了编码器,并且通过从数据集中学习不同的表征向量,来改善稀有词的表示。Dong和Huang提出了通过预训练词向量,来处理超出词汇表以外的词。随着BERT模型的提出,Whang等人提出的BERT

VFT模型,使用了后训练的方法,让预训练语言模型在对话领域的数据集上继续训练,掌握对话的语言风格;由Gu等人提出的SA

BERT模型,在预训练模型的输入中加入了特殊的标记来捕捉不同对话参与者的语言风格,更好的让预训练模型掌握了对话的信息。由TWhang等人提出了辅助任务来改善预训练模型,他们所提出的辅助策略都可以提升性能。由Xu等人提出的BERT

SL模型,设计了四个辅助任务,让模型更好地学习对话信息。由Han Janghoon等人提出的BERT

FP模型,通过生成简短的上下文,引入了细粒度后训练任务,模型的性能进一步提升。Chen Xiuyi等人提出的MDKEMN模型引入知识图谱,在KdConv数据集上取得了SOTA性能。Ma Hui等人提出的GLIMM模型分别从局部和全局角度对话语和响应进行交互。Zhang Wentao等人提出的模型对数据集进行数据增强,并通过有监督的对比学习使模型的性能进一步提升。

技术实现思路

[0005]本专利技术提出对话风格感知与主题引导的多轮对话方法及系统,有利于提高人机对话过程多轮对话响应选择的准确性。
[0006]本专利技术采用以下技术方案。
[0007]对话风格感知与主题引导的多轮对话方法,所述方法包括以下步骤;
[0008]步骤A:采集特定场景多轮对话文本,标注每个对话的响应所属的类别,构建带正负类别标签的多轮对话训练集DS;
[0009]步骤B:使用训练集DS,训练多任务深度学习网络模型G,用于多轮对话响应选择;
[0010]步骤C:将多轮对话上下文及候选响应输入到训练后的深度学习网络模型G中,得到对应多轮对话上下文最合适的响应。
[0011]所述步骤B包括以下步骤;
[0012]步骤B1:对训练集DS中的每个训练样本根据其轮数抽取单一说话人的历史对话,将正确的候选响应拼接在历史对话后,得到对话历史样本H;随机抽取另一个说话人的一句话语替换响应,得到对话历史负样本H

;对训练集DS中的每个训练样本进行编码,得到上下文和响应的表征向量E
cr

[0013]步骤B2:将步骤B1得到的表征向量E
cr
输入到分类层计算得分,根据目标损失函数计算响应选择主任务的损失loss
main

[0014]步骤B3:将步骤B1得到的对话历史样本H进行数据增强,得到增强的对话历史样本H
+
,与对话历史样本及对话历史负样本构成三元组(H,H
+
,H

),将得到的三元组(H,H
+
,H

)进行编码,对得到的表示运用对比学习计算对比损失loss
CL

[0015]步骤B4:将步骤B1得到的表征向量E
cr
按位置切分出每一个话语的表示E
U
,通过可变大小的窗口计算当前窗口和相邻窗口的余弦相似度,根据相似度高低将除最后一句外的上下文切分为多个主题窗口W,将各个窗口内的所有话语的表示拼接得到主题窗口的表示将最后一句视为问题q,其表示为E
q

[0016]步骤B5:将步骤B4得到的窗口表示输入到卷积神经网络中,获得窗口的表征向量E
W
,对E
q
和所有窗口的表征向量计算注意力得分,根据得分选择窗口W
q
,将W
q
、q和响应拼接得到窗口

问题样本;
[0017]步骤B6:对步骤B5得到的窗口

问题样本进行编码,得到表征向量E
WQ
,将表征向量E
WQ
输入到分类层计算得分,根据目标损失函数计算问题导向窗口选择的损失loss
WQ

[0018]步骤B7:将步骤B2中得到的损失loss
main
、步骤B3中得到的损失loss
CL
和步骤B6中得到的损失loss
WQ
相加得到最终的损失loss,利用反向传播方法计算深度学习网络模型中各参数的梯度,并利用随机梯度下降方法更新各参数;
[0019]步骤B8:当深度学习网络模型产生的损失值迭代变化小于所给定阈值、或者达到最大迭代次数,则终止深度学习网络模型的训练过程。
[0020]所述步骤B1具体包括以下步骤;
[0021]步骤B11:根据对话上下文的轮数抽取单一说话人的所有历史对话h,与响应r构成对话历史样本H,随机选择另一说话人的一句话语u
other
与对话历史h构成对话历史负样本H

...

【技术保护点】

【技术特征摘要】
1.对话风格感知与主题引导的多轮对话方法,其特征在于:所述方法包括以下步骤;步骤A:采集特定场景多轮对话文本,标注每个对话的响应所属的类别,构建带正负类别标签的多轮对话训练集DS;步骤B:使用训练集DS,训练多任务深度学习网络模型G,用于多轮对话响应选择;步骤C:将多轮对话上下文及候选响应输入到训练后的深度学习网络模型G中,得到对应多轮对话上下文最合适的响应。2.根据权利要求1所述的对话风格感知与主题引导的多轮对话方法,其特征在于:所述步骤B包括以下步骤;步骤B1:对训练集DS中的每个训练样本根据其轮数抽取单一说话人的历史对话,将正确的候选响应拼接在历史对话后,得到对话历史样本H;随机抽取另一个说话人的一句话语替换响应,得到对话历史负样本H

;对训练集DS中的每个训练样本进行编码,得到上下文和响应的表征向量E
cr
;步骤B2:将步骤B1得到的表征向量E
cr
输入到分类层计算得分,根据目标损失函数计算响应选择主任务的损失loss
main
;步骤B3:将步骤B1得到的对话历史样本H进行数据增强,得到增强的对话历史样本H
+
,与对话历史样本及对话历史负样本构成三元组(H,H
+
,H

),将得到的三元组(H,H
+
,H

)进行编码,对得到的表示运用对比学习计算对比损失loss
CL
;步骤B4:将步骤B1得到的表征向量E
cr
按位置切分出每一个话语的表示E
U
,通过可变大小的窗口计算当前窗口和相邻窗口的余弦相似度,根据相似度高低将除最后一句外的上下文切分为多个主题窗口W,将各个窗口内的所有话语的表示拼接得到主题窗口的表示将最后一句视为问题q,其表示为E
q
;步骤B5:将步骤B4得到的窗口表示输入到卷积神经网络中,获得窗口的表征向量E
W
,对E
q
和所有窗口的表征向量计算注意力得分,根据得分选择窗口W
q
,将W
q
、q和响应拼接得到窗口

问题样本;步骤B6:对步骤B5得到的窗口

问题样本进行编码,得到表征向量E
WQ
,将表征向量E
WQ
输入到分类层计算得分,根据目标损失函数计算问题导向窗口选择的损失loss
WQ
;步骤B7:将步骤B2中得到的损失loss
main
、步骤B3中得到的损失loss
CL
和步骤B6中得到的损失loss
WQ
相加得到最终的损失loss,利用反向传播方法计算深度学习网络模型中各参数的梯度,并利用随机梯度下降方法更新各参数;步骤B8:当深度学习网络模型产生的损失值迭代变化小于所给定阈值、或者达到最大迭代次数,则终止深度学习网络模型的训练过程。3.根据权利要求2所述的对话风格感知与主题引导的多轮对话方法,其特征在于:所述步骤B1具体包括以下步骤;步骤B11:根据对话上下文的轮数抽取单一说话人的所有历史对话h,与响应r构成对话历史样本H,随机选择另一说话人的一句话语u
other
与对话历史h构成对话历史负样本H

:H={h,r}
ꢀꢀꢀꢀ
公式二;
H

={h,u
other
}
ꢀꢀꢀꢀ
公式三;步骤B12:将对话上下文中的话语和响应进行拼接,得到BERT模型的输入x:x={[CLS],u1,[EOS],u2,[EOS],...,u
n
,[EOS],[SEP],r,[SEP]}
ꢀꢀꢀꢀ
公式四;其中,x为拼接得到的长文本,[SEP]为分隔符,[CLS]为BERT模型用于学习全局特征的标记,[EOS]为区分每个话语的特殊标记;步骤B13:将步骤B12得到的x输入到BERT模型中,得到上下文和响应的表征向量E
cr
:E
cr
=BERT(x)
ꢀꢀꢀꢀ
公式五。4.根据权利要求3所述的对话风格感知与主题引导的多轮对话方法,其特征在于:所述步骤B2包括以下步骤;步骤B21:将步骤B13得到的表征向量E
cr
输入到分类层中计算得分,计算公式如下:g
main
(c,r)=σ(W1E
cr
+b1)
ꢀꢀꢀꢀ
公式六;其中,W1是可训练的参数矩阵,b1是偏执向量,c是上下文,r是响应,σ(
·
)是sigmoid激活函数;步骤B22:目标函数采用交叉熵损失函数计算多轮对话响应选择主任务损失值loss
main
:其中,DS为训练集,y为对应的标签。5.根据权利要求4所述的对话风格感知与主题引导的多轮对话方法,其特征在于:所述步骤B3具体包括以下步骤:步骤B31:将步骤B11中得到的对话历史样本H={h,r}中的h进行数据增强,得到增强后的历史对话h
+
,数据增强的方法包括:随机打乱、随机交换和交叉,其中,随机打乱为将一个话语的所有标记随机打乱,随机交换为将一个话语中的任意两个标记随机交换,交叉为分别将两个话语分成两半,各自交换后半部分,h
+
表示为:其中表示进行数据增强的话语,数据增强的具体做法为:若h中只有一个话语,则随机从随机打乱和随机交换中选择一种方法进行增强,若h中的话语数量大于1,则随机从三种方法中选择一种方法进行增强,进行增强的话语是从h中随机选择的,将增强后的历史对话h
+
与响应r组成增强的对话历史样本H
+
;步骤B32:将步骤B31中得到的增强对话历史样本H
+
与对话历史样本H及对话历史负样本H

构成三元组(H,H
+
,H

),对样本中的话语和响应进行拼接,得到BERT模型的输入x
h
:公式九;步骤B33:将步骤B32得到的x
h
输入到BERT模型中,得到对话历史上下文和响应的表征向量E
CL
:E
CL
=BERT(x
h
)
ꢀꢀꢀꢀ
公式十;E
CL
={E
H
,E
H+
,E
H

}
ꢀꢀꢀꢀ
公式十一;对得到的特征向量运用对比学习...

【专利技术属性】
技术研发人员:陈羽中李炜炜陈子阳
申请(专利权)人:福州大学
类型:发明
国别省市:

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

1