引言
情感共鸣即在对话中能体现出来两个人的感情,它在心理咨询中被广泛应用,同时也是人类日常对话的一个关键特征。在深度学习这一大背景下,如何生成具有情感的对话回复呢?今天给大家分享的这篇文章,来自中科院,他们提出了一种串行编码和情感-知识交互(SEEK)的共鸣对话生成方法,该方法考虑到了知识与情感之间的相互关系,能够产生具有情感的对话回复,同时这也是第一个对情感动态建模的研究。
背景知识
具备丰富人类特征和能力的对话系统,是类人对话系统研究领域的一个热点。共鸣被广泛用于心理咨询,是人类日常对话的一个关键特征。「相比通过控制情感产生应答,共鸣对话系统的关键是理解用户的情绪并产生适当的应答」。一些研究集中于通过情绪模仿、对抗生成或混合的方法来提高共鸣模型捕捉情感的能力。另一方面,Sabour等人将常识知识引入共鸣模型,以便更好地感知内隐语义信息,并产生更多的信息和共鸣应答。
然而,现有的工作都是关于对话层面的情感感知。由于情感在整个对话过程中是动态变化的,在对话层面的粗建模方法(识别整个对话上下文的情绪)无法捕捉情感动态的过程,进而难以预测情感响应。Welivita等人研究了对话的变化模式,并绘制了两张图表,展示了在前四轮对话中最常见的情感意图变化,以及EMPATHETICDIALOGUES (ED)数据集中说话者和倾听者之间情感意图转换趋势。例如,在上图所示的第一种情况下,说话者的情绪从对话开始时的害怕转变为尴尬地自嘲自己以前的恐高经历(分享这样一个有趣的故事)。因此,对话Agent应该表达同样的自嘲情绪会更好。然而,基线模型很难捕捉说话者情绪的微妙变化,只能根据检测到的恐惧提供回复。此外,「仅仅引入知识而不做情感上的逻辑选择,可能会导致生成回复在知识和情感之间存在逻辑冲突」。如上图所示的第二种情况,CEM模型选择了错误的知识,无法正确地给出带有怀旧色彩的共鸣回复,导致知识和情感发生冲突。
模型方法
基于以上讨论,提出了一种用于产生共鸣对话的串行编码和情感知识交互(SEEK)方法。为了实现对情变化的更细粒度的感知,采用了一种对话级编码策略,该策略对对话中的情绪变化更加敏感;然后进一步引入了两个新的情感意图识别任务来理解上下文情绪并预测响应的情绪特征;最后针对知识与情感之间的冲突问题,设计了一个框架来建模它们之间的双向交互过程。
本文模型方法主要包含三个部分:对话知识编码器、情感流感知器、情感意图响应。具体如下图所示:
对话知识编码器
「对话编码」:为了得到每个对话的精确表示,首先在对话层面对语境进行编码,提取语境信息。使用Transformer对话语进行编码。输入的嵌入是单词嵌入、位置嵌入和对话状态嵌入的总和,得到。
「知识编码」:为相应的上下文生成高质量的常识推断,本文利用了一个预训练的GPT语言模型COMET,并在ATOMIC上进行了调优,生成五种类型的常识知识:人的效果(xEffect),说话人的影响(xReact),说话人之前的意图(xIntent),说话人当前意图(xNeed),说话人之后意图(xWant)。将这5个特殊关系标记附加到话语后,输入到COMET模型中,会得到输入话语的每个关系的5个常识推理文本,然后将它们连接到Ki。同样,使用相同的Transformer Encoder对知识文本Ki进行编码,并通过均值池(mean pooling)对编码后的隐藏状态进行平均。得到
情感流感知器
将每个话语的情感理解任务作为标记任务,使用Bi-LSTM模型来模拟语境理解过程中不同话语之间的情感变化和相互作用。Bi-LSTM的输入是经过编码的话语和知识的串联(),则有:
情感意图响应
仅仅将常识引入移情模型,而不进行情感上的逻辑选择是不理想的。Sabour等人(2021)使用隐式程序选择常识推理。相反,本文的方法模拟了对话中相应话语的情感和知识之间的双向互动过程。
本文采用s层交叉注意力Transformer来实现情感和知识的协调。由于话语表示序列经过了情感的三个任务,它包含了对应话语的情感特征。交叉注意力知识选择器的输入由充当查询向量的话语表示序列、键和值向量组成,它们都是从 COMET 模型 生成的知识文本。
实验结果
在对话级带注释的EMPATHETICDIALOGUES (ED)数据集上进行的大量实验结果表明,SEEK在自动和手动评估指标方面均优于强基线。1、基线和本文模型SEEK的自动评估结果。可以发现本文对四个强基线的改进具有一定的意义。
2、人类A/B测试(%)的三个方面:连贯性,共情和流利性。比较结果直接表明SEEK优于四种基线模型。
论文&&源码
Paper:https://arxiv.org/pdf/2210.11715v2.pdf
Code:https://github.com/wlr737/emnlp2022-seek