资源技术动态图卷积网络(GCN)情感识别

图卷积网络(GCN)情感识别

2020-02-19 | |  137 |   0

原标题: 图卷积网络(GCN)情感识别

来源:AI 研习社    链接:https://www.yanxishe.com/TextTranslation/2216


近年来,深度学习在自然语言处理领域取得了很大的进展。随着注意力和转换器等的开发带来了诸如BERT和XLNet等最新模型的出现,文本情感识别等任务变得更加容易。本文将介绍一种利用图形进行会话情感识别的新方法。

什么是情绪识别?

简单地说,情绪识别(ERC)是指在一个书面任务之后对情绪进行分类的任务。给定一段文字,你能判断说话人是生气、高兴、悲伤还是困惑吗?它在医疗保健、教育、销售和人力资源方面有着广泛的应用。在最高层次上,ERC的任务是有用的,因为许多人相信它是构建一个能够与人交谈的智能人工智能的垫脚石。


01.png

  使用ERC为健康助手供电的示例(图片取自[1])


目前,大多数ERC的两大创新点是递归神经网络(RNN)和注意力机制。像LSTMs和GRUs这样的RNNs按顺序查看文本。当文本太长时,模型对开始部分的记忆就会丢失。注意力机制通过对句子的不同部分赋予不同的权重来很好地解决这个问题。

然而,RNNs+注意力仍然在考虑个性、话题和意图的上下文以及说话人(基本上是所有对话中非常重要的部分)方面仍然有困难。再加上缺乏个性/情感基准数据集,不仅难以实现,而且难以衡量新模型的结果。本文将总结一篇最近的论文,该论文通过使用一个相对较新的创新称为图形卷积网络:DialogueGCN:一个用于会话中情感识别的图形卷积神经网络[1]。

1582083221551094.png

语境很重要
在一个对话之中语境很重要。简单的“Okay”可能意思是“ Okay?”,“ Okay!”或“ Okay...”。这取决于您和对方之前说过的内容、您的感受、对方的感受、紧张程度以及许多其他因素。重要的语境有两种:

顺序语境:在序列中句子的含义。此语境要处理过去的单词如何影响将来的单词、单词间的关系,以及语义/句法特征。在RNN模型中要考虑顺序语境。

对话者级别语境:对话者之间和发言者之间的依赖性。这种情况涉及说话者之间的关系以及自我依赖性:您自己的个性会改变并影响您在谈话过程中的说话方式。

您可能会猜到,大多数模型都难以考虑对话者级别语境。事实证明,您可以使用图卷积神经网络很好地对对话者级别语境进行建模,而这正是DialogueGCN所采用的方法。

将对话表示为图
在一次对话中,有M个发言人/参与者,表示为p[1],p[2],…… p[M]。每段话语(某人发送的一段文本)都表示为u[1],u[2],……u[N]。 ERC的最终目标是,准确地将每种话语预测为:快乐、悲伤、中立、愤怒、激动、沮丧、厌恶或恐惧中的一种。

整个对话可以构建为有向图:

 一张含有2名说话者和5句话的对话图

G = (V, E, R, W)

  • 话语是节点(V)。 边是节点(E)间的路径/连接。 关系是边(R)的不同类型/标签。 权重表示边缘的重要性(W)。

  • 每两个节点v[i]和v[j]之间的边都有两个属性:关系(r)和权重(w)。 我们稍后将详细讨论。

  • 该图是有向图。 因此所有边都是一条路径。 从v[i]到v[j]的边不同于从v [j]到v[i]的边。

从图中可以注意到,每句话语都有一条与其自身相连的边, 这代表了话语与其自身的关系。 用更实际的话来说,这就是说出的话如何影响说话者自己的思想。


语境窗口
图表示的一个主要问题是,如果对话确实很长,则单个节点可能会有许多边。 而且由于每个节点都与其他节点相连,随着图规模的增加,它也会以平方的速度增加。 这非常耗费计算资源。

为了解决这个问题,在DialogueGCN中,图形的边是基于具有特定大小的语境窗口构造的。 因此对于第i个节点/话语,图中仅连接了过去大小至将来大小的话语(i-size 到i+size 范围内的任何节点)。

1582083272833780.png

以话语u3为中心、窗口大小为1的语境窗口

边的权值
使用注意力函数来计算边的权值。 设置注意力函数,以便对于每个节点/话语,传入的边权值之和为1。边的权值是恒定的,在学习过程中不会改变。


简单来说,边缘权重代表了两个节点之间连接的重要性。

关系

边的关系取决于两个因素:

  • 发言者依赖性:谁说了u[i]?谁说了u[j]?

  • 时序依赖性:先说了u[i]?还是先说了u[j]?

在一个会话中,如果有M个不同的发言者,就会有最多M(u[i]的发言者)*M(u[j]的发言者)*2(无论u[i]在前还是u[j]在前) = 2M2个关系。

由上述例子中的图,我们可以列举出所有的关系:

05.png

表中包含上例中所有可能的关系

下图在上例中图的基础上根据表格标注了边的关系:

06.png

参考上表,对边的关系进行了标注

在本文的例子中,有8种不同的关系。从高层次上来讲,关系是边的一个很重要的性质,因为谁在什么时间说了什么对一个会话而言是至关重要的。假如Peter提问,然后Jenny回答,那么这跟Jenny先说出答案Peter再提问是不同的(时序依赖性)。类似地,假如Peter向Jenny和Bob提出了同一个问题,他们可能会有不同的回答(发言者依赖性)。

关系可以表示连接的类型,边的权重可以表示连接的重要性。

模型

DialogueGCN模型使用了图神经网络中的图卷积网络(GCN)。

上述例子中的图表示了2位发言人的5次发言。

1582083370153079.png

[1]中的图3

第1阶段中,通过顺序上下文编码器运行每个语句,得到表示每个语句u[i]的特征向量,并给出顺序上下文编码。这个阶段不需要图结构。具有顺序语境的新语句记为g[1]......g[N],并作为GCN的输入。

1582083389448283.png

第2阶段中,模型建立了一个如前文所述的图,并使用特征变换将发言者水平的文本加到图中。同时具有顺序和发言者水平的语句记为h[1]......h[N],并作为GCN的输出。

边和节点不同的表现形式(虚线或实线,不同的颜色)代表不同的关系。比如,绿色g[1]到绿色g[3]之间有一条绿实边表示表中的关系1。

特征变换——嵌入发言者水平的上下文

特征变换是GCN最重要的步骤之一——本质上是将发言者水平的上下文嵌入到语句中去。首先讨论其中所涉及的技术,然后阐述这种设计思想的来源。

特征变换有两个步骤。在步骤1中,聚合节点h[i]的相邻节点信息(上下文窗口中的信息)来创建新的特征向量h[i]。

1582083433298513.png

函数可能看起来比较复杂,但本质上就是当作网络中的一层来考虑的,其中包含两个可学习参数W[0]和W[r]。唯一多出来的就是正则化实数c[i,r],可以预先设置,也可以由网络本身来学习。

如前所述,边的权重是不变的,在整个过程中不能被学习也不会改变。

在步骤2中,本质上是重复步骤1中的计算,聚合邻近节点的信息,并使用相似的函数对步骤1的输出进行计算。

1582083451468373.png

等式2(步骤2)

再次,W² 和 W[0]² 表示在训练过程中修改的可学习参数。

在较高的层次上,这两步过程实质上是对每个话语的所有相邻话语信息进行标准化和。在更深的层次上,这种两步转换的根源是一个简单的可微消息传递框架[2]。这项技术是由致力于图形卷积神经网络的研究人员采用来建立关系数据模型的[3]。如果你有时间的话,我强烈建议你按这个顺序读那两篇论文。我相信这两篇论文给出了DialogueGCN的特征转换过程所需要的所有直觉。

GCN的输出在图上用h[1]….h[N]表示。

在第3阶段,原始的顺序上下文编码向量与说话人级上下文编码向量串联。这类似于将原始层与后面的层结合起来“总结”每个层的输出。

然后将连接后的特征向量输入到完全连接的网络中进行分类。最终输出是模型认为话语是不同情绪的概率分布。

1582083470970004.png

  该模型的训练是使用带有L2正则化的分类交叉熵损失来完成的。使用这种损失是因为模型预测了多个标签(情感类)的概率。

实验结果

基准数据集

之前我们说过实验缺乏基准数据集,于是,本文的作者使用标记的多模态数据集(带有文本的视频或音频),然后忽略全部音频或视觉数据,只提取文本得到实验数据集。

DialogueGCN在以下数据集进行了评估:

  • IEMOCAP:视频中十位不同发言人的双向对话。所有对话标注快乐、悲伤、中立、愤怒、激动或沮丧的标签。

  • AVEC:人类与AI智能体之间的对话。对话具有四个标签:效价([-1,1]),唤醒([-1,1]),期望([-1,1])和效能([0,无穷大])。

  • MELD:包含《老友记》中的1400轮对话和13000句话。MELD还包含互补声和视觉信息。言语被标记为愤怒、厌恶、悲伤、喜悦、惊奇、恐惧或中立等标签。

MELD有预定义的训练/验证/测试集划分。AVEC和IEMOCAP没有预定义的划分,因此需将10%的对话用作验证集。

DialogueGCN与ERC的许多基线和最新模型进行了比较,其中就包括本文作者的另一项工作--DialogueRNN。

1582083570364320.png

DialogueGCN与IEMOCAP数据集上的其他模型(表取自[1])

在IEMOCAP的6个类别中,DialogueGCN显示出与所有模型(包括DialogueRNN)相比的显著改进。在“愤怒”类别中,DialogueGCN本质上与DialogueRNN联系在一起(GCN只比F1成绩差1.09)。只有“兴奋”类显示出足够大的差异。  

DialogueGCN能够在AVEC和MELD上产生类似的结果,击败现任的DialogueRNN。

1582083595958327.png

  DialogueGCN与AVEC和MELD数据集上的其他模型(表取自[1])

从结果中可以清楚地看到,在会话图中添加说话人级别的上下文本本质上提高了理解能力。DialogueRNN很好地捕获了连续的上下文,但缺乏对说话人上下文进行编码的能力。

分析

上下文窗口的大小是实验的一个参数。通过扩展窗口大小,可以增加特定话语的边缘数量。结果发现,尺寸的增加虽然增加了计算开销,但也改进了结果。

作者进行的另一个有趣的实验是消融研究。一次取下一个编码器,然后重新测量性能。发现说话者级上下文编码器(阶段2)比顺序上下文编码器(阶段1)更重要。

研究还发现错误的分类倾向于在两种情况下发生:  

  • 相似的情绪类别,例如“沮丧”和“愤怒”,或“激动”和“快乐”。

  • 简短的话语,例如“好的”或“是的”。

由于使用的所有数据集都是多模态的,并且包含音频和视频,因此可以通过整合音频和视频多模态学习来提高这两种情况下的准确性。尽管分类错误仍然会发生,但需要注意的是DialogueGCN仍在准确性方面取得了非常明显的改善。

重点

  • 语境很重要。一个好的模型不仅要考虑会话的上下文(句子的顺序,单词彼此之间的关联),还要考虑说话者的上下文(谁说了什么,当他们说话时是如何影响其他发言人和自己)。与传统的顺序模型和基于注意力的模型相比,本文关键步骤在于整合了说话者级别的上下文。

  • (对话)序列并不是表征对话的唯一方法。本文最大的贡献就在于指出,数据的结构可以帮助捕获很多上下文,在这种情况下,说话者级别的上下文更容易以图形格式编码。

  • 图神经网络是NLP研究非常具有研究价值的方向。关键在于聚合邻居信息,虽然说起来非常简单,但在捕获数据关系中表现出强大的能力。

THE END

免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。

合作及投稿邮箱:E-mail:editor@tusaishared.com

上一篇:计算机视觉、视觉SLAM 与 智能体

下一篇:【综述】Pytorch YOLO项目推荐 建议收藏学习

用户评价
全部评价

热门资源

  • 应用笔画宽度变换...

    应用背景:是盲人辅助系统,城市环境中的机器导航...

  • GAN之根据文本描述...

    一些比较好玩的任务也就应运而生,比如图像修复、...

  • 端到端语音识别时...

    从上世纪 50 年代诞生到 2012 年引入 DNN 后识别效...

  • 人体姿态估计的过...

    人体姿态估计是计算机视觉中一个很基础的问题。从...

  • 谷歌发布TyDi QA语...

    为了鼓励对多语言问答技术的研究,谷歌发布了 TyDi...