机器心脏报告

编辑:杜威

来自脸书AI的研究人员提出了NormFormer,可以更快地达到目标预训练的困惑,更好地实现预训练的困惑和下游任务的执行。

在最初的transformer架构中,LayerNorm通常被称为残差之后的post-ln(后层规范化)Transformer,这种模型在机器翻译和文本分类等许多自然语言任务中表现突出。

最近的研究表明,在后LN变压器中,与前一层的网络相比,后一层的网络具有更大的梯度幅度。

实践表明,Pre-LN transformer可以以较高的学习率和较低的学习率(即预热)进行预热,并且通常比Post-LN Transformer产生更好的性能,因此最近大规模的预训练语言模型倾向于使用Pre-LN Transformer。

来自脸书AI的研究人员表明,尽管前LN与后LN相比提高了稳定性,但它也有缺点:前一层的梯度通常大于后一层的梯度。这些问题可以通过本研究中提出的NormFormer来缓解,该NormFormer通过在每一层增加三个归一化操作来缓解梯度幅值不匹配问题(见图1,中间):在注意之后增加层归一化,头部方向扩展注意输出,在第一个完全连接的层之后增加层归一化。这些操作降低了早期层的梯度,增加了后期层的梯度,使不同层的梯度大小更加接近。

此外,这些额外操作带来的计算成本可以忽略不计(参数增加0.4%),但这可以改善模型预训练的混乱和下游任务中的性能,包括1.25亿参数到27亿参数的因果模型和掩码语言模型的性能。例如,在本研究中,在最强的1.3B参数基线上加入NormFormer,可以将相同的混淆度提高24%,或者在相同的计算预算下,将混淆度更好地收敛0.27倍。该模型以60%的速度实现了与GPT3-大(1.3B)零样本相同的性能。对于掩码语言模型,NormFormer提高了微调GLUE的性能,平均提升1.9%。

梯度模式(侵染梯度模型-编程之家

地址:https://arxiv.org/pdf/2110.09456.pdf

与经过计算和微调的Pre-LN基线相比,NormFormer模型能够更快地达到目标预训练的混淆,更好地实现预训练的混淆和下游任务的执行。

第一篇论文Sam Shleifer在Twitter上说:我很高兴发布NormFormer,这是我们新的语言建模架构,在已经测试的每个扩展(最多2.7B个参数)上都优于GPT-3。

梯度模式(侵染梯度模型-编程之家

来自魁北克蒙特利尔学习算法研究所的机器学习研究员Ethan Caballero表示:“更多的归一化就是你所需要的,在GPT-3架构中使用NormFormer实现了SOTA性能,速度提升了22%,在下游任务中获得了更强的零样本性能。」

梯度模式(侵染梯度模型-编程之家

方法体系结构

NormFormer对Pre-LN转换器进行了三次修改:在注意模块内部应用头向缩放,并增加了两个额外的LayerNorm操作(一个在注意模块后面,另一个在第一个全连接层后面)。这些修改引入了少量额外的可学习参数,因此每个参数

个层都能以经济高效的方式改变特征大小,进而改变后续组件的梯度大小。这些变化的细节如下图 1 所示:

梯度模式(侵染梯度模型-编程之家

缩放注意力头。标准多头注意力操作定义如下:

梯度模式(侵染梯度模型-编程之家

研究者提出通过学得的标量系数γ_i 缩放每个注意力头的输出:

梯度模式(侵染梯度模型-编程之家

额外层归一化以及将所有组件放在一起。在 Pre-LN transformer 中,每个层 l 将输入 x_l 做出如下修改:

梯度模式(侵染梯度模型-编程之家

相反,NormFormer 将每个输入 x_l 修改如下:

梯度模式(侵染梯度模型-编程之家

其中,新引入了 bolded operations。

实验结果

对于因果语言模型(Casual Language Model),研究者预训练的 CLM 模型分别为 Small(1.25 亿参数)、Medium(3.55 亿参数)、Large(13 亿参数)和 XL(27 亿参数)。

他们训练了 3000 亿个 token 的基线模型,并用等量的 GPU 小时数训练 NormFormer 模型,由于归一化操作的额外开销,后者通常会减少 2%-6% 的 steps 和 tokens。

在使用的数据集上,研究者发现 GPT-3 中提出的学习率不是最理想的。因此,对于除了 27 亿参数之外的每个大小的基线和 NormFormer 模型,他们通过训练 5 万 steps 的模型并从 {1e−4, 6e−4, 3e−4, 6e−4, 1e−3, 3e−3} 中选择性能最佳的学习率来对学习率进行调整。这一过程中获得的学习率如下表 1 所示,NormFormer 的学习率是 GPT-3 的 3-5 倍。

梯度模式(侵染梯度模型-编程之家

对于掩码语言模型(Masked Language Model, MLM),研究者采用了 Liu et al. (2019)中使用的 RoBERTa-base、Pre-LN 架构和超参数。对于基线模型,他们对 100 万个 token 预训练了 200 万个 batch,是原始 roberta-base 训练预算的 1/4。相较之下,NormFormer 在相同时间内运行了 192 万个 batch。

对于预训练数据,研究者在包含 CC100 英语语料库以及由 BookCorpus、英文维基百科和 Common Crawl 过滤子集组成的 Liu et al. (2019)的数据英语文本集合上对所有模型进行预训练。

在下图 2 中,研究者将 CLM 和 MLM 的预训练困惑度表示训练时间,即 GPU days。可以看到,NormFormer 的训练速度明显更快,并且在给定训练计算预算下实现了更好的验证困惑度。

梯度模式(侵染梯度模型-编程之家

研究者在下游任务上也观察到了类似的趋势。如下表 2 所示,研究者使用 Brown et al. (2020)中的任务和 prompt 来观察 CLM 模型的零样本准确率。同样地,NormFormer 在所有大小上均优于 GPT-3。

梯度模式(侵染梯度模型-编程之家

对于 MLM 模型,研究者在下表 3 中报告了在 GLUE 上的微调准确率。再次,NormFormer MLM 模型在每个任务上都优于它们的 Pre-LN 模型。

梯度模式(侵染梯度模型-编程之家

为了度量架构的稳定性,研究者使用具有极大峰值学习率的学习率计划对其进行训练,使得学习率每个 step 增加一点,直到损失爆炸。图 5 显示了与基线相比,NormFormer 模型在此环境中可以承受更多的更新。

梯度模式(侵染梯度模型-编程之家