該論文Do Transformers Really Perform Bad for Graph Representation探索了使用Transformer Encoder進(jìn)行圖神經(jīng)網(wǎng)絡(luò)的編碼時(shí),一些可以用到的技巧,包括:
- 在節(jié)點(diǎn)本身的特征基礎(chǔ)上,添加入度和出度特征,論文稱之為集中度編碼(Centrality Encoding)
- 為了添加空間信息,計(jì)算每個(gè)節(jié)點(diǎn)和其他節(jié)點(diǎn)的attention score時(shí),加入兩節(jié)點(diǎn)最短路徑長度信息(Spatial Encoding)
- 對(duì)于節(jié)點(diǎn)間連線包含了不同類型的情況,如分子間的化學(xué)鍵,加入對(duì)邊類型的編碼,兩節(jié)點(diǎn)間最短路徑上所有邊的類型編碼,點(diǎn)乘權(quán)重矩陣,求均值作為兩節(jié)點(diǎn)間邊類型的特征(Edge Encoding)

圖1. 包含了三種特征的Transformer Encoder
原始的Transformer Encoder公式:

圖2.
節(jié)點(diǎn)表示加入出度和入度:

圖3.
將節(jié)點(diǎn)間最短距離作為bias項(xiàng)加入:

圖4.
將節(jié)點(diǎn)間邊的編碼也作為bias項(xiàng)加入:

圖5.
同時(shí)實(shí)現(xiàn)過程中適用pre-norm替換transformer encoder默認(rèn)的post-norm,這也是業(yè)界通用的方式:

圖6. g
為了獲得一個(gè)整個(gè)圖的表示,加入了一個(gè)虛擬加點(diǎn)VNode,該節(jié)點(diǎn)和圖里面所有節(jié)點(diǎn)都相連,這種方式類似Sentense Embedding中的CLS節(jié)點(diǎn)。
同時(shí),論文還測試了把Edge的信息求平均后直接累加到節(jié)點(diǎn)特征里的效果,如下表,結(jié)果顯示不如放在attention bias中效果好。

圖7.