基于对话约束的回复生成研究

管梦雨,王中卿,李寿山,周国栋

(苏州大学 计算机科学与技术学院,江苏 苏州 215006)

人机对话系统目前受到学术界和工业界的广泛关注。构建一个较完备的人机对话系统涉及NLP技术的很多方面,如句法分析[1]、命名实体识别[2]等。文本研究的是多轮对话生成任务,具体来说就是根据说话者之间已经发生的对话信息,自动生成自然合理的回复,在信息交互的过程中协助用户完成特定的任务。随着端到端框架在机器翻译[3]领域取得了较好的效果,学者们将其应用到对话生成任务中,即将历史对话信息作为编码器的输入,经过编码器与解码器的映射得到回复。

在对话中,主题简要地表明了整段对话的内容,用于理解对话的含义;
情感表明了话语的极性,用于识别说话者的观点;
意图作为话语的语义标签,用于描述说话者的动作意图。原则上,对主题、情感和意图的识别有助于对话语内容的理解。表1给出了一组对话示例,整段对话是关于“日常生活”的讨论且对话中的每句话都有明确的情感和意图倾向。我们发现,同一说话者的情感往往是保持不变的;
说话者B作为对话中被动的一方,意图往往受到对话发起者A的意图的影响。因此本文通过识别对话的主题及每个话语的情感和意图,对生成的回复进行约束。若我们要生成的是第二轮回话中说话者B的回复,本文方法将生成与对话主题相关、情感倾向于“中性”、意图倾向于“承诺”的回复,而不是我们通常得到的例如“好的”“我不知道”等安全回复[4]。

表1 对话示例

以往的对话生成模型中往往忽视了主题、情感和意图倾向的重要性,因此本文提出了基于对话约束的回复生成模型。具体来说,在训练阶段,一方面,编码器中我们采用单词级别的LSTM网络对对话历史信息中的每个子句进行特征抽取,得到每个上下文特征向量。我们将所有的上下文特征向量整合为一个固定维度的向量作为整组对话的中间语义向量。解码器中我们同样采用单词级别的LSTM网络,同时考虑中间语义向量和目标回复向量生成回复。另一方面,我们用上下文的特征向量和生成回复的特征向量来预测整段对话的主题和每个子句的情感和意图。本文方法中,主题预测模型、情感预测模型、意图预测模型和对话生成模型共享了编码和解码阶段的参数。在编码阶段,通过对主题、情感、意图的识别,我们可以更好地理解对话中各子句的语义,生成更高质量的中间向量;
在解码阶段,在更高质量的中间语义向量的基础上,对生成回复的情感和意图进行识别,使得我们生成的回复与对话信息相关且具有合理的情感和意图倾向。在生成阶段,我们仅需将历史对话信息作为模型输入,即可生成更高质量的回复。在DailyDialog数据集上的相关实验结果表示,我们提出的模型明显优于基线系统。

本文的组织结构如下: 第1节主要介绍对话生成的相关工作;
第2节主要描述基于对话约束的回复生成模型;
第3节是实验设置的介绍和实验结果分析;
最后,在第4节中对研究工作进行总结,同时提出了下一步的研究方向。

随着社交网络中聊天语料的积累和硬件计算性能的优化,模型得以利用深度学习[5]方法捕获历史对话中的特征信息,自动生成回复。Google的Vinyals等人[6]首先将机器翻译中的“序列-序列”模型应用于对话生成任务中,其将回复生成问题视作翻译问题,编码器与解码器均采用RNN提取特征,包括门控循环神经单元(Gated Recurrent Unit, GRU)[7]、长短时记忆网络[8](Long Short-Term Memory Network, LSTM)等,均取得了可观的效果。对话通常是一个持续、动态的过程,生成回复时需要考虑当前的对话语境,即历史信息。如何从历史信息中捕获到更多的信息成为提高生成回复质量的一个方向。多轮对话的历史信息由多个子句组成,而回复往往只与某些相关子句和相关单词有关,无差别地对所有上下文进行编码显然是不合理的。Tian等人[9]提出了Wseq模型,利用余弦相似度来衡量上下文子句的重要性。Xing等人[10]提出了HRAN模型,引入传统的注意力机制,分别从句子级别和单词级别捕获历史信息中的相关子句和相关单词。Chen等人[11]提出了HVMN模型,使用了内存网络,使得模型可以在解码中检索到相关上下文。Zhang等人[12]提出了ReCoSa模型,其应用自注意力机制来解决长距离依赖问题来捕获相关历史信息。是否拥有外部信息(包括常识信息、说话者的以往经验等)是人与模型的最大的不同。基于此,Kumar等人[13]提出了DMN模型,结合常识信息使得模型生成更加人性化的回复。对主题的约束能保证生成回复与对话语义的一致性。Mou等人[14]提出了seq2BF模型,其利用逐点互信息预测一个名词作为主题词,进而生成包含主题词的回复。主题词不一定出现在生成的回复中,可用作回复隐式约束。Yao等人[15]在Seq2Seq的基础上引入了控制主题的网络单元,主题则体现在每个时刻的状态更新中。Xing等人[16]提出了TA-Seq2Seq模型,引入了LDA主题模型,在解码时利用注意力机制增加主题词出现的概率。Dziri等人[17]提出了THRED模型,联合层次化的注意力机制,结合历史信息与主题信息,使得回复更加多样化。人与人的交流中总是蕴含着丰富的情感,因此增加模型的情感控制能力也至关重要。Ghosh等人[18]提出了Affect-LM模型,在解码时融入情感类别和情感强度来生成具有一定情感的回复。Zhou等人[19]提出了ECM模型,在情感编码的基础上引入了外部记忆和内部记忆,用来控制明确的外部情感和变换的内部情感。Song等人[20]提出了EmoDS模型,同时考虑显示和隐式的情感表征。Asghar等人[21]融合情感词向量、情感目标函数、情感搜索算法三个方面来生成具有强烈感情的回复。在对话过程中,意图起着关键作用,只有学习到说话者的动机,才能生成更合理的回复。Jo等人[22]提出了基于对话行为序列的无监督模型。Zhang等人[23]提出了HRG模型,利用分层响应机制来捕获对话中的意图。

受上述工作的启发,考虑对话中的主题、情感、意图能很好地缓解通用回复的问题,但以往的研究没有同时考虑这三个属性。因此,本文提出了基于对话约束的回复生成模型。通过对对话的主题、情感和意图的约束来生成更高质量的回复。

我们的任务旨在自动生成合理自然的对话回复。一组对话由两个对话者之间发起的m/2轮对话组成,可表示为对话序列D={U1,U2,…,Um},其中Ux(x=1,2,…)称为对话的子句。对话生成模型目的是在第m/2轮时,根据前面的m-1个子句{U1,U2,…,Um-1}计算在此情况下生成句子Um的概率,即P(Um|U1,U2,…,Um-1)。每个句子Um是可变长的单词序列,可表示为Um={wm,1,wm,2,…,wm,Nm}。wm,n表示第m个句子中的第n个单词,Nm表示Um中的单词个数。通过前m-1个子句和当前已经生成的单词来逐字预测下一个词,直到达到特定的句子长度或者生成结束符,预测结束,得到回复Um。P(Um|U1,U2,…,Um-1)可表示为如下公式:

(1)

2.1 模型

本文采用的是基于LSTM网络的Seq2Seq模型。该模型包括编码器(Encoder)、解码器(Decoder)、主题预测模型、情感预测模型和意图预测模型五个模块。编码器网络和解码器网络分别对应输入序列和输出序列的两个神经网络,本实验中编码器和解码器均采用LSTM网络分别对历史信息和生成回复进行编码。具体流程为历史上下文信息通过编码器编码,得到整个上下文的表征向量,即中间语义向量C,接着将该向量传递至解码器中,解码器则根据中间语义向量C和递归隐藏状态,计算词汇表中每个词的概率分布,生成下一个词,并将其作为下一个时刻的输入,直至遇到结束符标志或达到指定的长度时结束解码。另外,我们的模型(Joint Topic Emotion and Act,JTEA)在模型训练阶段,从编码器和解码器的LSTM网络中学习对话历史信息中每个子句和生成回复的特征表示。这些特征向量用于预测每个话语的情感和意图,以及整段对话的主题。主题预测、情感预测和意图预测作为对话回复生成的辅助任务,只在模型训练阶段进行,帮助学习编码器和解码器中的共享参数,对生成回复的主题、情感和意图进行约束。模型网络结构如图1所示。

2.1.1 编码器

编码器是将输入序列编码成一个中间语义向量C。本实验中使每个子句分别经过LSTM神经网络,得到每个子句的特征向量,然后取这些特征向量的平均值,作为中间语义向量C。我们可以在两个层次上讨论话语序列: 每组对话由子句序列组成,而每个子句由单词序列组成。基于此,对于给定子句Ux={wx,1,wx,2,…,wx,Nx},经过LSTM网络,将最后一层的隐藏层的输出hNx作为该子句的语义向量。本文为历史信息中的每个子句分别构建一个LSTM模型,则历史信息中的子句经过编码后的表示为Hc={h1,h2,…,hm-1}。取所有LSTM模型输出的平均值作为整组对话的中间语义向量C。

2.1.2 解码器

解码器是将编码器中生成的中间语义向量C再转化成输出序列。解码器中我们同样采用LSTM神经网络对已经生成的回复进行编码,得到隐藏向量表示hr。在解码阶段,我们会用输出序列{y1,y2,…,yt-1}以及固定的中间语义向量C来预测下一个输出的单词yt,即

(2)

通常情况下,会为解码器指定生成文本最大长度和结束字符。在解码过程中,只要符合上述两个条件之一,解码过程就会结束。解码器的输出并不是文本,而是一个向量,这个向量代表着当前这个神经单元输出对应词表的概率分布,通常选择概率最高的作为输出,但概率最高的往往是“好的”“是的”等安全回复。因此,我们引入了主题、情感、意图识别帮助模型更好地理解对话内容,生成与对话语义一致且具有合理情感和意图倾向的回复。

图1 模型网络结构图

2.1.3 主题预测模型

2.1.4 情感预测模型

(6)

2.1.5 意图预测模型

(7)

2.2 训练

我们联合损失函数来同时优化主要任务和辅助任务。

主要任务多轮对话生成的目标是在给定输入历史信息序列H={U1,U2,…,Um-1}的情况下,最大化输出Um的概率。因此,主任务的损失main如式(8)、式(9)所示。

这里θ为模型需训练的参数,(H,Um)是训练集中的历史信息和回复序列对。

最后,联合损失为如式(13)所示。

=main+topic+senti+act

(13)

3.1 数据集

本实验选择DailyDialog作为语料[24],该语料收集于英语学习网站的对话练习。该语料的基本统计信息如表2所示,共包含13 118个多回合对话,平均每组对话轮数为7.9,平均每句对话的单词数为14.6,平均每组对话的单词数为114.7。该数据集中的对话反映了我们的日常交流方式,涵盖了我们日常生活的各种话题,每句话都标注了情感和意图类别。其中主题分为10类: 校园生活(School Life)、工作(Work)、健康(Health)、日常生活(Ordinary Life)、人际关系(Relationship)、文化与教育(Culture & Education)、政治(Politics)、态度与情感(Attitude & Emotion)、旅游(Tourism)、金融(Finance);
情感分为7类,在本实验中我们为了更好地识别情感,将情感重新分为中性(Neutral)、积极(Positive)、消极(Negative)三类;
意图分为4类: 陈述(Inform)、询问(Question)、指示(Directive)、许诺(Commissive)。

表2 DailyDialog基本信息统计

本实验中,我们研究四轮对话,因此过滤了少于八句的对话,并截取大于或等于八句对话中的前八句。在以上条件下,挑选5 835组对话作为训练集,200组作为测试集。图2、图3、图4分别给出了过滤后的数据集中主题、情感、意图的类别概率分布。从图中发现,对话中情感为中性的话语占大多数,意图为陈述和询问的话语占比高于其他两种意图。

图2 话题类别分布

图3 情感类别分布

图4 意图类别分布

图5展示了同一轮对话中前一句的意图确定时,后一句话的意图类别的概率分布。从图中我们发现对话中不同角色的意图是有一定关联的。对话由前后两个说话者交替完成,前者往往占主导地位,后者的意图随着前者的意图的改变而变化。例如,询问和陈述往往是同时发生的,因为当有人向我们提问时,我们通常不会转移话题,而是礼貌地回复别人的问题。

图5 同一轮对话中意图的影响

图6展示了同一说话者前一句的情感确定的条件下,后一句的情感类别的概率分布,这里我们只考虑了话语的情感为积极或者消极的情况。从图中我们看出,同一情感同时出现的概率远远高于其他情感,这说明同一说话者的情感基调通常是保持不变的。基于上述分析,我们发现对对话的情感和意图进行识别在回复生成中是非常重要的。

图6 同一说话者情感的影响

3.2 评价指标

3.2.1 自动评估

本文使用BLEU(Bilingual Evaluation Under-study)[25]来衡量所产生的响应与真实响应之间的相关性。本文主要使用BLEU-1、BLEU-2和BLEU-3来评测实验效果。本文还使用词嵌入之间的余弦相似度来度量词之间的相似性,可分为三类: Average[26]、Greedy[27]和Extrema[28]。

3.2.2 人工评估

本文加入了人工评价指标[29],由三个具有相关知识背景的工作者进行打分。打分规则为:
0: 完全不合理或恶意回复;
1: 不相关的通用回复;
2: 稍微相关的回复;
3: 回复相关且合理。Score: 所有分数的加权求和。

3.3 实验参数设置

为了得到最优模型,经过调整本实验设置的相关参数如表3所示。

表3 模型参数设置

3.4 与基准模型比较

在前人关于对话回复生成的研究的基础上,本文选取了Seq2Seq、Multi、Dir-VHRED、ReCoSa、HRG五个模型进行对比实验。接下来,我们将分别介绍这五个模型。

(1)Seq2Seq模型[30]: 将前七句历史对话信息拼接成一个向量作为输入,为其构建一个LSTM模型,以此LSTM模型的输出作为中间语义向量,然后解码生成对话回复。此模型为一个单输入模型。

(2)Multi模型: 将前七句话分别作为输入,为每个子句构建LSTM模型,将所有LSTM的输出的平均值作为中间语义向量,然后解码生成对话回复。此模型为一个多输入模型。

(3)Dir-VHRED模型[31]: 使用Dirichlet分布来描述VHRED中的潜在变量。

(4)ReCoSa模型[32]: 使用自注意力机制来更新上下文和被屏蔽的响应表示,并在解码过程中使用上下文和响应表示之间的注意力权重。

(5)HRG模型[33]: 采用分层响应生成框架以自然和连贯的方式捕获对话意图。

表4、表5展示了我们的模型和基线模型的比较结果。从表中可以得出以下结论:

(1) 我们的模型相较于Multi模型,在BLEU-1、BLEU-2、BLEU-3值分别提升了3.77、4.76、3.68个百分点,Average、Greedy、Extrema分别提升了2.42、3.8、4.26个百分点。在人工评价指标上,我们的模型生成通用回复的比例有了明显的下降,生成相关回复的比例相应有所上升,这证明了我们的模型一定程度上解决了通用回复的问题。

(2) 我们模型不管是在自动评价指标还是人工评估指标上都超过了所有的基准模型,充分说明了对生成的回复进行条件约束能有效地提高生成的对话回复的质量。

表4 在自动评估指标上与基线模型比较

表5 在人工评估指标上与基线模型比较

3.5 不同因素的影响

为了验证本文模型的有效性,将我们的模型与分别单独考虑主题、情感、意图预测模型进行对比实验。实验结果如表6所示。我们共涉及了5组对比实验。Multi模型在上一节中已经介绍,不再赘述;
Joint Topic模型是在Multi模型的基础上加入对话意图的识别;
Joint Senti模型是在Multi模型的基础上加入话语情感的识别;
Joint Act模型是在Multi模型的基础上加入话语意图的识别。

表6 不同的预测模型比较

从表中可以发现,所有具有约束条件的模型(Joint Topic, Joint Senti, Joint Act, JTEA)都优于基准Multi模型,这表明所有的约束条件对于回复生成都是有效的。另外,本文模型优于单独考虑每个约束条件的模型,这表明应该集成所有约束条件来生成更高质量的回复。我们还发现,情感的约束相对于主题和意图的约束效果要稍差一点,是因为在我们的语料中绝大部分话语的情感都是中立的,情感对回复的影响相对较小。

3.6 案例分析

我们对基线Multi模型和本文模型生成的对话回复进行对比分析,表7给出了三组对话示例,截取了对话的主要内容,且对话内容都已翻译为中文展示。

从第1组示例中可以看出,此轮对话的主题是校园生活。对于最后说话者A的询问,Multi模型没能充分地理解该组对话的语义信息,所以生成了“你可以确定”这样与对话内容毫无联系回复。而我们的模型因为加入了对主题的识别,所以生成了与对话主题高度相关且自然合理的回复。在第2组示例中,我们发现最后说话者A的意图是“指示”。在同一轮对话中,当前一句的意图为“指示”时,后一句的意图最大概率为“承诺”。本文模型因为加入了对意图的识别,生成了意图为“承诺”的回答,而Multi模型则生成了意图为“陈述”的回答,显然我们模型生成的回复更加的合理。在第3组示例中,本文模型生成的回复在意图上显然更加合理。同一说话者的情感基调往往是不变的。本文模型因为加入了对情感的识别,生成了带有积极情感倾向的回复。

表7 生成回复示例对比

在大数据不断发展的今天,人机对话系统是人机交互领域一个非常重要的研究方向,开放域聊天机器人的研究受到了广泛关注。因此,提高对话生活的质量显得尤为重要。

日常对话中,人们往往是围绕特定的主题展开,且对话中的话语都蕴含明显情感和意图倾向。因此,本文提出了一种基于对话约束的回复生成模型。之前的模型往往倾向于生成类似“好的”“我不知道”等安全回复,虽然这样的回复看起来合理,但其实这样的模糊回复意义并不大,信息量很低。为了解决这个问题,我们在基于LSTM网络的Seq2Seq模型的基础上引入了对对话的主题、情感和意图的识别,使得生成具有合理的情感和意图倾向且与对话主题相关的回复。实验结果表明,与传统的Seq2Seq方法相比,本文方法取得了较好的效果。

本文研究的语料主要是一些日常交流文本,语境相对较为简单。因此,接下来将研究更加复杂情景多变的语料。另外,研究历史信息中各个子句之间的相互影响,对对话中的句子结构进行建模,进一步提升情感、意图识别的效果。

猜你喜欢 解码器意图向量 原始意图、对抗主义和非解释主义法律方法(2022年2期)2022-10-20基于高速公路的驾驶员换道意图识别汽车实用技术(2022年14期)2022-07-30向量的分解新高考·高一数学(2022年3期)2022-04-28自然教育《小蚂蚁的生日会》教案学校教育研究(2020年5期)2020-04-10基于Android环境下的数据包校验技术分析现代信息科技(2019年18期)2019-09-10浅谈SCOPUS解码器IRD—2600系列常用操作及故障处理科技创新与应用(2017年26期)2017-09-12做一个二进制解码器中国信息技术教育(2016年13期)2016-09-10向量垂直在解析几何中的应用高中生学习·高三版(2016年9期)2016-05-14向量五种“变身” 玩转圆锥曲线新高考·高二数学(2015年11期)2015-12-23因人而异调整播放设置电脑爱好者(2015年24期)2015-09-10

推荐访问:约束 生成 对话