论文名称:Co-GAT: A Co-Interactive Graph Attention Network for Dialog Act Recognition and Sentiment Classification
论文链接:https://arxiv.org/pdf/2010.00190.pdf
代码链接:https://github.com/RaleLee/Co-GAT
1. 简介
1.1 研究背景与任务定义
在对话系统中,对话行为识别和情感分类是两个相关任务,能够帮助进行识别说话者的意图。其中,对话行为能够展示说话者显式的意图,而情感能展现说话者隐式的意图
[1]。
更具体的来说,对话行为识别和对话情感分类都可以看作是分类任务,目标是将对话中的每条语句标注上对应的DA标签和SC标签。
图1 任务示例
1.2 研究动机
直观上,有两个关键因素有助于对话行为识别和情感预测。一个是跨任务的相互交互信息mutual interaction information,另一个是对话中的上下文信息context information。
如图2所示,在预测
User B 的情感标签
Negative 的过程中,相互交互信息
User B 的对话行为标签
Agreement ,对话历史信息
User A 的情感标签
Negative ,对成功预测起到很大帮助。在预测过程中,
User B 的
Agreement 标签表明其认同
User A 的上一句话,因此
User B 的情感标签更倾向于与
UserA 的上一句话的情感标签
Negative 相同。
图3 前人工作示意
如图3所示,前人的联合建模工作中,Cerisara等人[1]专注于相互交互信息(图3左),Kim等人[2]专注于对话历史信息(图3右)。最近,Qin等人[3]提出DCR-Net模型,虽然取得了较好效果,但是该模型却是以一种pipeline的方式来获取两种信息:在Encoder端获取对话历史信息,在relation layer端获取交互信息。但是我们认为,该类流水线式的模型存在一个问题:
两种信息是单独建模的。
所以接下来的问题是:
我们是否可以在一个统一的框架中同时对相互交互信息和上下文信息建模,来将它们完全整合呢?
为了解决此问题,我们提出了
Co-Interactive
Graph
Attention Network(Co-GAT)模型来联合建模两个任务。核心模块是一个协同交互图层,在协同交互图中,我们使用了一个双重连接的交互模式,包含有跨语句连接和跨任务连接,并且能够相互迭代更新。更具体的来说,跨语句连接中,一个句子会和这段对话中其余的语句相连来获取对话中的上下文信息;跨任务连接中,一个句子会和另外一个任务中的这段对话中的所有句子连接来获取任务间的相互交互信息;同时这两种连接在一个统一的图网络中同时更新。
从而给出了之前提出问题的回答:
每个话语节点可以与上下文信息和相互交互信息同时更新。
图4 Co-GAT示意
2. 模型
2.1 整体框架
如图所示,这是模型的整体框架。由三部分组成,第一部分为分层对话者感知编码器;第二部分为核心模块——协同图交互层;第三部分为解码器部分。将在以下部分中作详细介绍。
2.2 Vanilla Graph Attention Network
对于单层图注意力网络[4],它接受一个图中所有节点的表示作为输入,输出更新后的这些节点的表示。
首先,由公式1计算出hi邻接节点hj的重要性,然后通过公式2获取attention分数,最后使用求和的方式得到节点更新后的表示。这里我们还引入了多头注意力机制。
2.3 Hierarchical Speaker-Aware Encoder
之后,为了更好的揭示对话者自我的逻辑,我们引入了Speaker-Aware graph。在该图中,节点是对话中的每句话;如果节点i和节点j同属于一个对话者,那么就将其连接。
2.4 Co-Interactive Graph Layer
-
顶点:一共有2N个顶点,每个顶点对应一个句子表示。
-
-
跨语句连接。节点i连接上其同属一个任务的节点来获取上下文信息
-
跨任务连接。节点i连接上另一个任务的所有节点来获取相互交互信息
2.5 Decoder and Joint Training
我们使用两个单独的Decoder来获取分类的结果:
3. 实验
3.1 数据集
我们在两个公开数据集Dailydialog和Mastodon上进行了实验,我们保持了两个数据集原分割不变。
-
Dailydialog中, 训练集11,118个对话, 验证集1,000个对话,测试集1,000个对话
-
Mastodon中,训练集239个对话,测试集266个对话
3.2 主实验结果
表1 主实验结果
如表所示,baseline结果分为三块,分别为单独的Dialogue Act Recognition模型、单独的Sentiment Classification模型和联合模型。从结果可以看出:
-
我们的实验结果在所有指标上超过了现有DAR和SC的单独建模的模型,这表明了我们联合建模中提取mutual interaction information的有效性。
-
我们的实验结果在所有指标上超过了现有的联合建模模型,这表明了将context information和mutual interaction information同时建模的有效性。
3.3 消融实验结果
表2 消融实验结果
-
without cross-tasks connection设置中,我们将cross-tasks connection去掉,来验证mutual interaction information的有效性。
-
without cross-utterances connection设置中,我们将cross-utterances connection去掉,来验证context information的有效性
-
separate modeling设置中,我们将co-interactive interaction layer去掉,使用两个单独的GAT建模两个任务,然后将两个模型的结果求和来表示交互,这表明了我们的co-interactive interaction layer能更好的同时获取两种信息。
-
co-attention mechanism设置中,我们用DCR-Net中的co-attention mechanism来替换我们的co-interactive interaction layer,表明了pipeline方法的劣势。
-
without speaker information设置中,我们去掉了hierarchical speaker-aware encoder中的speaker-aware graph,验证了合理的建模speaker的信息流可以帮助提高模型的效果。值得注意的是,在去掉该信息后,我们模型的结果依旧高于SOTA模型DCR-Net。
3.4 预训练模型探索实验
我们在Mastodon数据集上探索了预训练模型的效果。我们直接将预训练模型替换hierarchical speaker-aware encoder作为Encoder,来观察我们提出的co-interactive graph layer的效果。
图6 BERT模型探索结果
图6是对于BERT模型的探索结果,我们的模型超过了baseline DCR-Net+BERT的效果
表3 RoBERTa和XLNet探索结果
表3是对于RoBERTa和XLNet预训练模型的探索结果。其中
-
RoBERTa/XLNet+Linear是将RoBERTa/XLNet作为共享encoder,然后使用两个单独的线性层作为decoder获得预测结果。
-
Co-GAT+RoBERTa/XLNet是将RoBERTa/XLNet替换hierarchical speaker-aware encoder作为Encoder,保持我们的model剩余部分不变。
实验结果表明,Co-GAT和RoBERTa/XLNet的结合可以进一步提升模型效果,证明了我们的贡献与预训练模型是互补的。
4.结论
-
我们首次尝试同时结合上下文信息和相互交互信息来进行联合对话行为识别和情感分类。
-
我们提出了一个协同交互的图注意力网络,该网络构造了交叉任务连接和交叉话语连接,并相互进行迭代更新,从而实现了同时结合上下文信息和交互信息的建模。
-
在两个公开数据集上进行的实验表明,我们的模型取得了实质性的改进,并实现了最佳的性能。此外,我们框架的贡献与预训练模型(BERT,Roberta,XLNet)是互补的。
参考文献
[1] Cerisara, C.; Jafaritazehjani, S.; Oluokun, A.; and Le, H. T. Multi-task dialog act and sentiment recognition on mastodon. In Proc. of COLING 2018.
[2] Kim, M.; and Kim, H. Integrated neural network model for identifying speech acts, predicators, and sentiments of dialogue utterances. Pattern Recognition Letters 2018.
[3] Libo Qin, Wanxiang Che, Yangming Li, Mingheng Ni, Ting Liu. DCR-Net: A Deep Co-Interactive Relation Network for Joint Dialog Act Recognition and Sentiment Classification. AAAI 2020.
[4] Veličković P, Cucurull G, Casanova A, et al. Graph attention networks. ICLR 2018.
由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:
(1)点击页面最上方"AINLP",进入公众号主页。
(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。
感谢支持,比心。
进群请添加AINLP小助手微信 AINLPer(id: ainlper),备注NLP技术交流
推荐阅读
这个NLP工具,玩得根本停不下来
征稿启示| 200元稿费+5000DBC(价值20个小时GPU算力)
完结撒花!李宏毅老师深度学习与人类语言处理课程视频及课件(附下载)
从数据到模型,你可能需要1篇详实的pytorch踩坑指南
如何让Bert在finetune小数据集时更“稳”一点
模型压缩实践系列之——bert-of-theseus,一个非常亲民的bert压缩方法
文本自动摘要任务的“不完全”心得总结番外篇——submodular函数优化
Node2Vec 论文+代码笔记
模型压缩实践收尾篇——模型蒸馏以及其他一些技巧实践小结
中文命名实体识别工具(NER)哪家强?
学自然语言处理,其实更应该学好英语
斯坦福大学NLP组Python深度学习自然语言处理工具Stanza试用
关于AINLP
AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。
阅读至此了,分享、点赞、在看三选一吧🙏