论文阅读:Do Transformers Really Perform Bad for Graph Representation

该论文Do Transformers Really Perform Bad for Graph Representation探索了使用Transformer Encoder进行图神经网络的编码时,一些可以用到的技巧,包括:

  1. 在节点本身的特征基础上,添加入度和出度特征,论文称之为集中度编码(Centrality Encoding)
  2. 为了添加空间信息,计算每个节点和其他节点的attention score时,加入两节点最短路径长度信息(Spatial Encoding)
  3. 对于节点间连线包含了不同类型的情况,如分子间的化学键,加入对边类型的编码,两节点间最短路径上所有边的类型编码,点乘权重矩阵,求均值作为两节点间边类型的特征(Edge Encoding)
图1. 包含了三种特征的Transformer Encoder

原始的Transformer Encoder公式:


图2.

节点表示加入出度和入度:


图3.

将节点间最短距离作为bias项加入:


图4.

将节点间边的编码也作为bias项加入:


图5.

同时实现过程中适用pre-norm替换transformer encoder默认的post-norm,这也是业界通用的方式:


图6. g

为了获得一个整个图的表示,加入了一个虚拟加点VNode,该节点和图里面所有节点都相连,这种方式类似Sentense Embedding中的CLS节点。

同时,论文还测试了把Edge的信息求平均后直接累加到节点特征里的效果,如下表,结果显示不如放在attention bias中效果好。


图7.

推荐阅读更多精彩内容