见过几层的mlp,也见过几十层的GoogleNet,还见过上百层的Resnet,上千层的transformer见过没!这篇论文<DeepNet: Scaling Transformers to 1000 Layers>它来了。它提出了一个简单有效的方法来训练"极深"的transformer。这篇论文提出了一个新的标准化方程(DEEPNORM)去修改transformer中的残差链接。该论文有着非常深入的理论分析模型在训练过程中参数更新是非常稳定的,使得1000层的transformer诞生,并且在各项指标上吊打其他模型。


DEEPNORM:千层transformer..._人工智能



DEEPNORM:千层transformer..._深度学习_02


基于Post-LN的transfomer,该文实现了DEEPNORM(如下图伪代码所示)。与Post-LN相比,DEEPNORM在进行layer-norm之前会扩大残差连接。除此以外,在初始化过程中降低了参数的比例。需要注意的是,该方法只会扩大前馈网络的权值的规模,以及attention层的投影值。


DEEPNORM:千层transformer..._计算机视觉_03



DEEPNORM:千层transformer..._计算机视觉_04


DEEPNET基于transformer架构,不同的就是用了deepnorm替换每层的post-LN,如下式所示,Gl是第l层attention和feed-forward网络:


DEEPNORM:千层transformer..._计算机视觉_05


下图中我们发现对比Post-LN,DeepNet更新更加稳定。


DEEPNORM:千层transformer..._网络_06



DEEPNORM:千层transformer..._机器学习_07



DEEPNORM:千层transformer..._深度学习_08



DEEPNORM:千层transformer..._计算机视觉_09



DEEPNORM:千层transformer..._人工智能_10



DEEPNORM:千层transformer..._人工智能_11