原文地址
文章目录
- 1. 介绍
- 2. 对话情感识别
- 2.1 任务介绍
- 2.2 数据集介绍
- 2.3 相关工作介绍
- 3. 对话情感生成
- 3.1 任务介绍
- 3.2 数据集介绍
- 3.3 相关工作介绍
- 4. 总结
- 5. 参考资料
1. 介绍
近年来,随着自然语言处理技术的快速发展,人机对话系统受到了很多关注,并逐渐成为了学术界和工业界的研究热点。人机对话系统不断发展进步,应用范围不断扩大,人们对它也有了更高的要求,希望机器在关注回复内容的基础上,可以与人进行更深入的交流。
近期的一些工作表明[10, 13, 15,16, 18-21, 23],在人机对话系统中,除了回复内容之外,机器与人的情感交流也是一个重要问题。人类可以通过语言进行情感上的交流,获得情感上的慰藉,对话系统想要和人类进行有效的情感沟通,就必须具备一定的情感能力。具体来说,机器一方面需要对用户情感进行识别和判断,另一方面也需要在其回复中融入合适的情感。因此,如何在对话中赋予机器理解情感和表达情感的能力,是人机对话和情感分析领域面临的新的机遇和挑战。
本文主要介绍对话情感中的两个关键任务:对话情感识别、对话情感生成,梳理了这两个任务常用的数据集和相关方法。本文在接下来的部分首先阐述对话情感识别任务的相关内容;接着围绕对话情感生成任务展开介绍;最后是全文总结和对未来的展望。
2. 对话情感识别
2.1 任务介绍
对话情感识别是一个分类任务,旨在对一段对话中的(所有)话语进行情感分类。任务的输入是一段连续的对话,输出是这段对话中所有话语的情绪,图1给出了一个简单的示例。由于对话本身具有很多要素,话语的情绪识别并不简单等同于单个句子的情绪识别,而是需要综合考虑对话中的背景、上下文、说话人等信息,这些都是对话情感识别任务中独特的挑战。
对话情感识别可广泛应用于各种对话场景中,如社交媒体中评论的情感分析、人工客服中客户的情绪分析等。此外,对话情感识别还可应用于聊天机器人中,实时分析用户的情绪状态,实现基于用户情感驱动的回复生成。
2.2 数据集介绍
IEMOCAP[2]。南加州大学的SAIL实验室收集,由人扮演的双人对话,12小时的多模态视听数据。10个专业演员(5男5女),一共分为5个Session,每个Session分配1男1女。对话分为两部分,一部分是固定的剧本,另一部分是给定主题情景下的自由发挥。151段对话,共7433句。标注了6类情绪:Neutral, Happiness, Sadness, Anger, Frustrated, Excited,非中性情绪占比77%。IEMOCAP是对话情感识别中最常用的数据集,质量较高,优点是有多模态信息,缺点是数据规模较小。
数据集链接
SEMAINE[3]。SEMAINE数据库收集的多模态对话数据,由四个固定形象的机器人与人进行对话,曾用于AVEC2012挑战赛。AVEC2012使用的数据有95段对话,共5798句。标注了4个情感维度:Valence (愉悦度), Arousal (激活度), Expectancy (预期), Power (力量)。Valence表示情感积极的程度,Arousal表示兴奋的程度,Expectancy表示与预期相符的程度,Power表示情感影响力。其中Valence、Arousa和Expectancy为[-1, 1]范围内的连续值,Power为大于等于0的连续值。SEMAINE是对话情感识别中常用的数据集之一,缺点是数据规模较小。
数据集链接
DailyDialog[4]。高质量多轮对话数据集,纯文本,噪声小,对话反映不同主题的日常生活,无固定说话人。数据集除了7类情绪标注,还有10类主题标注以及4类对话行为标注。12218段对话,共103607句。标注了7类情绪:Neutral, Happiness, Surprise, Sadness, Anger, Disgust, Fear,非中性情绪占比16.8%。DailyDialog在对话情绪识别中应用较少,优点是数据规模较大,缺点是中性情绪占比过高。
数据集链接
EmotionLines[5]。来源于老友记(多人对话)和私人Facebook聊天记录(双人对话),纯文本,有固定说话人。曾用于SocialNLP 2018 EmotionX Challenge。内容上两部分独立,各1000段对话,共29245句。标注了7类情绪:Neutral, Happiness, Surprise, Sadness, Anger, Disgust, Fear,非中性情绪占比44.5%。EmotionLines在对话情感识别中应用较少,通常使用多模态的MELD数据集。
数据集链接
EmoContext[6]。纯文本双人对话,每段对话三句,仅最后一句有情感标签。用于SemEval-2019 Task 3。38421段对话,共115263句。标注了4类情绪:Happiness, Sadness, Anger, Other,非中性情绪占比42.8%。EmoContext在对话情感识别中应用较少,优点是数据规模较大,缺点是对话长度过短和仅标注最后一句。
数据集链接
MELD[7]。来源于老友记,多人对话形式,是EmotionLines老友记部分的多模态扩充(文本+视频)。1433段对话,共13708句。标注了7类情绪:Neutral, Happiness, Surprise, Sadness, Anger, Disgust, Fear和3类情感:Positive, Negative, Neutral,非中性情绪占比53%。MELD是对话情感识别中常用的数据集之一,优点是数据集质量较高并且有多模态信息,缺点是数据集中的对话涉及到的剧情背景太多,情感识别难度很大。
数据集链接
2.3 相关工作介绍
- 第一类:上下文建模
区别于传统的单句情感分析,对话中的话语进行情感分类时,周围的话语可以提供重要的上下文信息。C-LSTM[8]是基于LSTM的能够捕捉上下文信息的模型,其模型如下图所示。每个话语(utterance)的输入特征经过LSTM单元以及一个全连接层得到话语的输出特征,用于话语情感分类。双向的LSTM可捕捉话语的上下文关系,优于单向LSTM。
- 第二类:说话人建模
对话中除了话语的上下文信息外,还需要考虑说话人的状态与相互影响。
CMN[9]对于当前要识别的话语,通过GRU分别建模每个说话人的历史话语,作为记忆单元。然后通过注意力机制将每个说话人的记忆与当前话语的表示进行融合,得到的结果用于话语分类,从而模拟说话人个人的状态以及不同说话人的状态对当前话语的影响,其模型如下图所示。
CMN对于不同的说话人采用了独立的记忆单元,在此基础之上,ICON[10]使用交互式的记忆单元,其模型如下图所示。
对于当前要识别的话语,ICON通过SIM(Self-Influence Module)模块分别对每个说话人的历史话语进行建模,接着通过DGIM(Dynamic Global Influence Module)模块对说话人之间的影响进行建模得到全局的状态,存入记忆单元,然后使用Attention机制得到记忆单元与当前话语表示的融合结果,用于话语情感分类。
- 第三类:区分说话人的建模
CMN、ICON等模型虽然对不同的说话人信息进行了建模,但是对于最终要识别的话语,并未区分该话语属于哪个说话人。DialogueRNN[11]解决了这个问题,同时认为对话中的话语情感取决于三个因素:说话人信息,先前话语的语境和情感信息,并分别使用说话人状态(Party GRU)、全局状态(Global GRU)和情感状态(Emotion GRU)进行捕捉,其模型如下图所示。
对于当前时刻的话语,全局状态由前一时刻的全局状态、当前话语的表示、当前话语说话人前一时刻的状态进行更新,说话人状态由当前话语说话人前一时刻的状态、当前话语的表示、之前时刻的全局状态进行更新,情感状态由说话人当前时刻的状态以及上一时刻的情感状态更新,之后用当前时刻的情感状态进行当前话语的分类。
3. 对话情感生成
3.1 任务介绍
对话情感生成是一个生成任务,旨在对话中生成蕴含情感、有针对性的回复。对于待生成回复的情感,一般有两种观点:一种认为待生成回复的情感需要明确指出,这类做法的输入是对话上文和目标情感,输出是蕴含该情感的回复,其优点是生成情感灵活可控,缺点是需要大规模情感标注的对话语料;另一种则认为待生成回复的情感已经隐含在对话上文之中,不需要明确指出,因此这类做法只需要提供对话上文,其优点是可利用已有的大规模对话语料,缺点是生成的情感不易控制。下图给出了对话情感生成的一个简单示例。
对话情感生成主要应用在聊天机器人之中,可以让聊天机器人在显式或隐式理解用户情感的基础上,生成情感合理的回复,解决聊天机器人的情感表达问题。
3.2 数据集介绍
STC[12]。新浪微博数据,无情感标注,中文,由问题和回复组成,可视为单轮对话(问答),共440万对,问题与回复的句子平均长度分别为20、15。ECM[13]中使用Bi-LSTM情感分类器自动标注了六类情感:Angry, Disgust, Happy, Like, Sad, Other。STC是对话情感生成中常用的数据集之一,优点是数据规模大,缺点是无人工情感标注,需要借助情感分类器自动标注,因此数据质量一般。
数据集链接
Cornell Movie Dialogs[14]。康奈尔大学收集的电影对话语料,无情感标注,22万段对话,30万个句子,涉及617部电影中的9035个角色,无标注,噪声相对较小。ANRG[15]和EMOTICONS[16]中用于seq2seq模型训练。Cornell Movie Dialogs是对话情感生成中常用的数据集之一,优点是数据质量较高,缺点是无人工情感标注。
数据集链接
OpenSubtitles[17]。多语言的电影字幕数据库,数据量大,无情感标注,噪声相对较大。ADGEE[18]使用OpenSubtitles2016,过滤后有1130万句子,训练了Bi-LSTM情感分类器进行自动情感标注。EMOTICONS[16]使用OpenSubtitles2018,过滤后的数据有至少四轮对话,250万句子。OpenSubtitles是对话情感生成中常用的数据集之一,优点是数据规模巨大,缺点是噪声大且无人工情感标注。
数据集链接
Twitter[19]。Twitter上获取的带emoji表情的对话,由问题和回复组成,可视为单轮对话,共66万对。使用句子带的emoji表情作为句子标注,共64种标签。Mojitalk[19]使用该语料训练模型,进行情感回复生成。Mojitalk[19]构造了该数据集,并使用该数据集训练模型进行情感回复生成。
数据集链接
DailyDialog[4]。高质量多轮对话数据集,10万句,详见对话情感识别数据集介绍。AR-S2S[20]使用该数据集作为测试集,评估模型在不同领域对话的泛化性能。
数据集链接
SEMAINE[3]。情感识别用的数据集,有情感属性,无情感类别标注。AAAI 2018的Emo-HERD[21]使用工具为其标注情感。约0.5万句,详见对话情绪识别数据集介绍。
数据集链接
3.3 相关工作介绍
- 第一类:情感语言模型
给定起始片段和情感信息,可生成具有指定情感的句子。
Affect-LM[22]是基于LSTM的语言模型,在单词的概率预测阶段融入了情感标签以及情感强度,从而期望模型可以生成一定强度的某种情感类别的回复。语言模型采用困惑度进行评价。其模型如下图所示。
- 第二类:指定回复情感的对话生成模型
给定上文和情感信息,可生成带有指定情感的回复。
ECM[13]是第一个在大规模对话生成中考虑情感因素的工作,其模型如图8所示。为了生成对话中指定情感的回复,在传统的Encoder-Decoder中引入了三个机制:情感类别嵌入,内部记忆和外部记忆。情感类别嵌入是将每个情感类别用向量代替,用于解码器的状态更新。内部记忆用于捕捉情感的动态变化,在解码过程中不断衰减。外部记忆显式地从通用词典和情感词典中选择输出词汇,以增强回复的情感性。最终评估采用了困惑度,回复的情感准确率,以及人工评价。
EmoDS[23]提出情感表达可以是使用强烈的情感词进行显式直接的表达,也可以是没有情感词的隐式含蓄的表达,因此在Encoder-Decoder中加入了两个模块:基于词典的Attention机制寻找期望的情感词进行显式表达,情感分类器通过增加情感表达的强度以一种隐式的方式为情感回复生成提供全局指导,其模型见下图。最终评估有嵌入得分、 BLEU、 Distinct、情感客观指标以及人工评价。
方法总结:此类型方法是情感回复生成的主流方法,在传统的Encoder-Decoder的基础上,增加一些机制,如情感向量、情感记忆、情感词典等,使生成的回复具备情感因素。同样方法的文章还有EMOTICONS[16],ADGEE[18],AR-S2S[20],Mojitalk[19],Emo-HERD[21]等。
- 第三类:不指定回复情感的对话生成模型
不需要指定情感信息,认为上文已经内在地决定了下文的情感。ANRG[15]是基于LSTM的Encoder-decoder模型,其模型如下图所示。为了加入情感因素,使用了三种方式:通过情感词典中词的情感信息改造词向量;使用带情感目标的损失函数;在解码时使用情感多样性的搜索算法。评价方法是在句法规范性、自然度、情感符合程度上做人工评价。
4. 总结
本文主要梳理了对话情感中的两个任务:对话情感识别、对话情感生成,总结了这两个任务相关的数据集和一些近期工作,这些工作解决了各自任务的很多关键挑战。未来,两个任务的关联融合可能会带来一些新的挑战,这可能也是一个潜在的研究方向。
5. 参考资料
[1] S. Poria, N. Majumder, R. Mihalcea, and E. Hovy. Emotion Recognition in Conversation: Research Challenges, Datasets, and Recent Advances. IEEE Access. 2019.
[2] C. Busso et al. IEMOCAP: interactive emotional dyadic motion capture database. Lang Resources & Evaluation. 2008.
[3] G. McKeown, M. Valstar, R. Cowie, M. Pantic, and M. Schroder. The SEMAINE Database: Annotated Multimodal Records of Emotionally Colored Conversations between a Person and a Limited Agent. IEEE Transactions on Affective Computing. 2012.
[4] Y. Li, H. Su, X. Shen, W. Li, Z. Cao, and S. Niu. DailyDialog: A Manually Labelled Multi-turn Dialogue Dataset. IJCNLP. 2017.
[5] S.-Y. Chen, C.-C. Hsu, C.-C. Kuo, Ting-Hao, Huang, and L.-W. Ku. EmotionLines: An Emotion Corpus of Multi-Party Conversations. arXiv. 2018.
[6] A. Chatterjee, U. Gupta, M. K. Chinnakotla, R. Srikanth, M. Galley, and P. Agrawal. EmoContext: Understanding Emotions in Text Using Deep Learning and Big Data. Computers in Human Behavior. 2019.
[7] S. Poria, D. Hazarika, N. Majumder, G. Naik, E. Cambria, and R. Mihalcea. MELD: A Multimodal Multi-Party Dataset for Emotion Recognition in Conversations. ACL. 2019.
[8] S. Poria, E. Cambria, D. Hazarika, N. Majumder, A. Zadeh, and L.-P. Morency. Context-Dependent Sentiment Analysis in User-Generated Videos. ACL. 2017.
[9] D. Hazarika, S. Poria, A. Zadeh, E. Cambria, L.-P. Morency, and R. Zimmermann. Conversational Memory Network for Emotion Recognition in Dyadic Dialogue Videos. NAACL. 2018.
[10] D. Hazarika, S. Poria, R. Mihalcea, E. Cambria, and R. Zimmermann. ICON: Interactive Conversational Memory Network for Multimodal Emotion Detection. EMNLP. 2018.
[11] N. Majumder, S. Poria, D. Hazarika, R. Mihalcea, A. Gelbukh, and E. Cambria. DialogueRNN: An Attentive RNN for Emotion Detection in Conversations. arXiv. 2019.
[12] L. Shang, Z. Lu, and H. Li. Neural Responding Machine for Short-Text Conversation. ACL. 2015.
[13] H. Zhou, M. Huang, T. Zhang, X. Zhu, and B. Liu. Emotional Chatting Machine: Emotional Conversation Generation with Internal and External Memory. AAAI. 2018.
[14] C. Danescu-Niculescu-Mizil and L. Lee. Chameleons in Imagined Conversations: A New Approach to Understanding Coordination of Linguistic Style in Dialogs. CMCL. 2011.
[15] N. Asghar, P. Poupart, J. Hoey, X. Jiang, and L. Mou. Affective Neural Response Generation. in Advances in Information Retrieval. 2018.
[16] P. Colombo, W. Witon, A. Modi, J. Kennedy, and M. Kapadia. Affect-Driven Dialog Generation. NAACL. 2019.
[17] J. Tiedemann. News from OPUS : A Collection of Multilingual Parallel Corpora with Tools and Interfaces. 2009.
[18] C. Huang, O. Zaïane, A. Trabelsi, and N. Dziri. Automatic Dialogue Generation with Expressed Emotions. NAACL. 2018.
[19] X. Zhou and W. Y. Wang. MojiTalk: Generating Emotional Responses at Scale. ACL. 2018.
[20] P. Zhong, D. Wang, and C. Miao. An Affect-Rich Neural Conversational Model with Biased Attention and Weighted Cross-Entropy Loss. AAAI. 2019.
[21] N. Lubis, S. Sakti, K. Yoshino, and S. Nakamura. Eliciting Positive Emotion through Affect-Sensitive Dialogue Response Generation: A Neural Network Approach. AAAI. 2018.
[22] S. Ghosh, M. Chollet, E. Laksana, L.-P. Morency, and S. Scherer. Affect-LM: A Neural Language Model for Customizable Affective Text Generation. ACL. 2017.
[23] Z. Song, X. Zheng, L. Liu, M. Xu, and X. Huang. Generating Responses with a Specific Emotion in Dialog. ACL. 2019.