当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER

当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第1张图片

Method

依旧是一篇emotion recognition in conversations (ERC)的文章,因此不对背景进行过多的介绍。因为基于图的神经网络没有考虑话语中包含的顺序信息,本文提出了关系位置编码,为RGAT(关系图注意力网络)提供反映关系图结构的顺序信息。总体的结构如图所示:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第2张图片
模型一共分为三部分:contextual utterance embedding, speaker dependency
modeling with position encodings and emotion classification。

Contextual Utterance Embedding

通过Bert将对话中的每一个utterance中的单词转化为token的向量化表示,并使用最大池化得到utterance的表示 h i ( 0 ) , i = 1 , 2 , . . . , M h_i^{(0)}, i=1,2,...,M hi(0),i=1,2,...,M。这里 M M M表示speaker的数量。

Speaker Dependency Modeling with Position Encodings

Graphical Structure

接下来,为一个对话构建多关系的图结构。节点就是通过Bert得到的utterance的向量化表示,边则通过如下方式定义:
Labeled Edges Representation。边的类型主要依赖于两点:说话人依赖——这取决于自我依赖和说话人之间的依赖;时间依赖——这也取决于对话中的时间变化。也就是一个utterance u j u_j uj是在目标话语 u i u_i ui的过去还是未来发出的,这回产生不同的影响。基于此,构建出四种类型的边:

  1. self - past type( r 1 r_1 r1
  2. inter - past type( r 2 r_2 r2
  3. self - future type( r 3 r_3 r3
  4. inter - future type( r 4 r_4 r4

然后,使用两种不同的滑动窗口 p , f p,f p,f分别针对past以及feature的边,窗口内的utterance节点根据共现关系以及past或是feature关系进行构建。

EdgeWeight

在这里插入图片描述
接下来借助不同的关系进行GAT传播。 α i j r \alpha_{ijr} αijr表示节点 i , j i, j i,j在关系 r r r下的注意力。LRL是LeakyReLU。

Position Encodings

接下来不同边的相对位置信息进行位置编码。本文唯一有难度的点在这里。为什么叫相对位置编码呢?是因为对于当前的节点 i i i,要考虑与其邻居的相对距离,这个Transformer差不多。并且,由于RGAT是基于不同的关系类别的,因此需要为不同的关系设计不同的位置编码方式。具体看公式:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第3张图片
这里的 N 1 ( i ) N^1(i) N1(i)当然表示关系 1 1 1的邻居,所以每一种相对编码只针对某一种特定的关系。同样,这里还需要考虑past或是feature的不同,不能计算超过这个窗口的节点,因为窗口外部的节点是不予考虑的。下图说明了本文的编码与其他编码方式的不同:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第4张图片
接下来,需要子啊RGAT进行注意力聚合的时候将PE也考虑进去,也就是将公式(1)修改为:
在这里插入图片描述
用图描述一下:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第5张图片
接下来,就是基于关系注意力的聚合了:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第6张图片
(4)表示同一种关系类别下的聚合;(5)表示不同关系之间的聚合。

Emotion Classification

经过 L L L层之后,将 h i ( 0 ) h_i^{(0)} hi(0) h i ( L ) h_i^{(L)} hi(L)拼接起来进行转换分类:
在这里插入图片描述

实验

数据集是老四样:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第7张图片
实验结果:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第8张图片
消融实验:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第9张图片
这里,对比了不同的编码方法,以及不同的GAT方式。本文的方法在每个类别的平均结果中取得了最好的效果。
接下来,还需要验证本文的PE的有效性:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第10张图片
可以看到Figure2中给出的几种PE方法,还是本文给出的最有效。
past以及feature窗口大小的选择:
当GNN遇见NLP(十二):Relation-aware Graph Attention Networks with Relational Position Encodings for ER_第11张图片
像是这种窗口大小的选择一般都是类似倒U变化的,大家看看就好。

你可能感兴趣的:(GNN,NLP,自然语言处理,神经网络,深度学习)