Foreword
作者提到,基于Transformer的模型NLP以及CV中应用时也会出现over-smoothing问题。由于该问题最初出现于GNN中,也是GNN研究中非常重要的方向,因此作者从Graph machine learning中借鉴了一套处理思路,搬运到Transformer中进行魔改,发现效果不错。另外,作者对self-attention与GNN的内在联系也进行了分析。
Intro
问题纷纷涌现出来:(1)Token uniformity: self-attention会使得token representations identical。(2)Over-smoothing problem for ViT: 不同的patch被映射到一个相似的潜在表示。(3)“overthinking” phenomenon: 在某些问题下,shallow representations比deep representations表现更好。总的来说,这些问题都可以被解释为过平滑问题,也就是token的representation会随着网络的加深趋向一致,丧失自身的特点。
over-smoothing最初在GNN中被提出。而另一方面self-attention matrix可以被看成加权图的normalized adjacency matrix,其中图节点就是句子的token。
Transformer
self-attention模块整个公式(包含残差)可以被写成如下: \[ \operatorname{Attn}(\boldsymbol{X})=\boldsymbol{X}+\sum_{k=1}^{h} \sigma\left(\boldsymbol{X} \boldsymbol{W}_{k}^{Q}\left(\boldsymbol{X} \boldsymbol{W}_{k}^{K}\right)^{\top}\right) \boldsymbol{X} \boldsymbol{W}_{k}^{V} \boldsymbol{W}_{k}^{O \top}=\boldsymbol{X}+\sum_{k=1}^{h} \hat{\boldsymbol{A}}_{k} \boldsymbol{X} \boldsymbol{W}_{k}^{V O} \] 其中最关键的注意力系数矩阵可以被看成图的邻接矩阵: \[ \hat{\boldsymbol{A}}=\sigma\left(\boldsymbol{X} \boldsymbol{W}^{Q}\left(\boldsymbol{X} \boldsymbol{W}^{K}\right)^{\top}\right)=\sigma\left(\boldsymbol{Q} \boldsymbol{K}^{\top}\right) \] 对应的transformer中feed-forward layer可以被写为图卷积(GCN)的形式: \[ FF(\boldsymbol{X})=\operatorname{Attn}(\boldsymbol{X})+\operatorname{ReLU}\left(\operatorname{Attn}(\boldsymbol{X}) \boldsymbol{W}_{1}+\boldsymbol{b}_{1}\right) \boldsymbol{W}_{2}+\boldsymbol{b}_{2} \]
ResGCN: \[ \operatorname{ResGCN}(\boldsymbol{X})=\boldsymbol{X}+\operatorname{Re} L U\left(\boldsymbol{D}^{-1 / 2} \boldsymbol{A} \boldsymbol{D}^{-1 / 2} \boldsymbol{X} \boldsymbol{W}\right)=\boldsymbol{X}+\operatorname{Re} L U(\hat{\boldsymbol{A}} \boldsymbol{X} \boldsymbol{W}) \]
over-smoothing
既然self-attention被表示为了针对句子构建的全连接图上的图神经网络,我们可以从图角度分析over-smoothing并借鉴其解决方案。在GNN上,节点通过message passing获取邻接点信息并聚合,而后更新自身特征。由于不断聚合,而且使用同一个邻接矩阵,导致节点相似度越来越高。作者用cosine similarity来评估over-smoothing程度: \[ \operatorname{CosSim}=\frac{1}{n(n-1)} \sum_{i \neq j} \frac{\boldsymbol{h}_{i}^{\top} \boldsymbol{h}_{j}}{\left\|\boldsymbol{h}_{i}\right\|_{2}\left\|\boldsymbol{h}_{j}\right\|_{2}} \] 而后作者对BERT中的过平滑问题进行了理论分析,发现Bert中的过平滑主要是在post-normalization这一部分引入。
hierarchical fusion strategy
针对过平滑的分析,作者提出了一种方法来缓解bert中的over-smoothing(保留post-normalization)具体而言,就是针对第L层的representation,将其与前面K的结果按照一定的规则进行结合,包括:Concat Fusion/Max Fusion/Gate Fusion。

其实这个方法的idea和早在18年关于图神经网络的模型Jumping Knowledge Networks (JKNet)非常相似
