Transformer 模型的缩放近年来引发了众多学者的研究兴趣。然而,对于模型架构所施加的不同归纳偏置的缩放性质,人们了解得并不多。通常假设,在特定标度(计算、大小等)的改进可以迁移到不同的规模和计算区域。
不过,理解架构和标度律之间的相互作用至关重要,设计在不同标度上表现良好的模型具有重要的研究意义。有几个问题还需要搞清楚:模型体系架构之间的缩放性不同吗?如果是这样,归纳偏置如何影响缩放表现?又如何影响上游(预训练)和下游(迁移)任务?
在最近的一篇论文中,谷歌的研究者试图了解归纳偏置(体系架构)对语言模型标度律的影响。为此,研究者在多个计算区域和范围内(从 1500 万到 400 亿参数)预训练和微调了十种不同的模型架构。总体来说,他们预训练和微调了 100 多种不同体系架构和大小的模型,并提出了在缩放这十种不同体系架构方面的见解和挑战。
论文链接:https://arxiv.org/pdf/2207.10551.pdf
他们还注意到,缩放这些模型并不像看起来那么简单,也就是说,缩放的复杂细节与本文中详细研究的体系架构选择交织在一起。例如,Universal Transformers (和 ALBERT) 的一个特性是参数共享。与标准的 Transformer 相比,这种体系架构的选择不仅在性能方面,而且在计算指标如 FLOPs、速度和参数量方面显著 warp 了缩放行为。相反,像 Switch Transformers 这样的模型则截然不同,它的 FLOPs 和参数量之间的关系是不寻常的。
具体来说,本文的主要贡献如下:
- 首次推导出不同归纳偏置和模型架构的标度律。研究者发现这个标度系数在不同的模型中有很大的不同,并指出这是模型开发中的一个重要考虑因素。事实证明,在他们考虑的所有十种体系架构中,普通的 Transformer 拥有最好的缩放性能,即使它在每个计算区域的绝对性能不是最好的。
- 研究者观察到,在一个计算标度区域中运行良好的模型不一定是另一个计算标度区域中的最佳模型。此外,他们发现,某些模型尽管在低计算区域表现良好 ,但是难以进行缩放。这意味着很难通过在某个计算区域进行逐点对比来获得模型缩放性的全貌。
- 研究者发现,当涉及到缩放不同的模型架构时,上游预训练的困惑度可能与下游迁移不太相关。因此,底层架构和归纳偏置对于下游迁移也是至关重要的。
- 研究者强调了在某些架构下进行缩放的困难,并展示了一些模型没有进行缩放(或以消极趋势进行缩放)。他们还发现线性时间注意力模型(比如 Performer)难以进行扩展的趋势。
方法与实验
在论文的第三章,研究者概述了整体的实验设置,并介绍了实验中评估的模型。
下表 1 展示了本文的主要结果,包括可训练参数量、FLOPs(单次正向传递)和速度(每秒步数)等,此外还包括了验证困惑度(上游预训练)和 17 个下游任务的结果。
所有模型的缩放方式是否相同?
下图 2 展示了增加 FLOPs 数量时所有模型的缩放行为。可以观察到,所有模型的缩放行为是相当独特和不同的,即其中大多数不同于标准 Transformer。也许这里最大的发现是,大多数模型(例如 LConv、Evolution)似乎都与标准 Transformer 表现相当或更好,但无法按照更高的计算预算去缩放。
另一个有趣的趋势是,「线性」Transformer,如 Performer,不能按比例缩放。如图 2i 所示,从 base 到 large scale 相比,预训练的困惑度只下降了 2.7% 。而对于 vanilla Transformer 来说这一数字是 8.4%。
下图 3 展示了下游迁移任务上所有模型的缩放曲线,可以发现,和 Transformer 相比,大多数模型有着不同的缩放曲线,在下游任务中变化明显。值得注意的是,大多数模型都有不同的上游或下游缩放曲线。
研究者发现,一些模型如 Funnel Transformer 和 LConv,似乎在上游表现相当不错,但在下游受到很大影响。至于 Performer,上游和下游的性能差距似乎更大。值得注意的是,SuperGLUE 的下游任务通常需要编码器上的伪交叉注意力,而卷积这样的模型是无法处理的(Tay et al., 2021a)。
因此,研究者发现尽管某些模型拥有良好的上游性能,但可能还是难以学习下游任务。
每一标度的最佳模型是否有所不同?
下图 1 展示了根据上游或下游性能进行计算时的帕累托边界。图的颜色代表不同的模型,可以观察到,每个标度和计算区域的最佳模型可能是不同的。此外,从上图 3 中也可以看到这一点。例如,Evolved Transformer 似乎在微小(tiny)到小(small)的区域(下游)和标准 Transformer 一样表现很好,但是当放大模型时,这种情况迅速改变。研究者在 MoS-Transformer 也观察到了这一点,它在某些区域的表现明显优于普通的 Transformer ,但在其他区域则不然。
每个模型的标度律
下表 2 给出了多种情况下每个模型的拟合线性直线 α 的斜率。研究者通过绘制 F(FLOPs)、U (上游困惑度)、D (下游准确率)和 P(参数量)得到了α。一般来说,α 描述了模型的缩放性,例如 α_F,U 根据上游性能绘制 FLOPs。唯一的例外是α_U,D,它是衡量上游和下游性能的度量,高的 α_U,D 值意味着向下游任务迁移的模型缩放更佳。总体来说,α 值是一个度量,表示一个模型在缩放上的相对表现。
Scaling Protocols 是否以同样的方式影响模型体系架构?
下图 4 展示了四个模型体系架构(MoS-Transformer、Transformer、Evolved Transformer、LConv)中缩放深度的影响。
下图 5 展示了在相同的四个体系架构中缩放宽度的影响。首先,在上游(负对数困惑)曲线上可以注意到,虽然不同的架构在绝对性能上有明显的差异,但缩放趋势仍然非常相似。在下游,除了 LConv 之外,深度缩放(上图 4)在大多数体系架构上的作用似乎是一样的。同时,相对于宽度缩放,似乎 Evolved Transformer 在应用宽度缩放时会稍微好一点。值得注意的是,与宽度缩放相比,深度缩放对下游缩放的影响要大得多。
更多研究细节,可参考原论文。