Tensor Programs V: Tuning Large Neural Networks via Zero-Shot Hyperparameter Transfer
Greg Yang∗× Edward J. Hu∗׆ Igor Babuschkin◦ David Farhi◦ Nick Ryder◦
Jakub Pachocki◦ ×Microsoft Corporation
Szymon Sidor◦ Xiaodong Liu× Weizhu Chen× Jianfeng Gao× ◦OpenAI
主要贡献
核心问题:深度学习中的超参数(HP)调优是一个昂贵的过程,对于具有数十亿参数的神经网络(NNs)而言尤其如此,因为最先进的网络训练成本极高,导致调优变得不可行。现有方法在不同模型大小之间转移HP的效果不稳定,且传统参数化导致最优HP随模型宽度变化而变化。
研究目标:提出一种新的HP调优范式µTransfer,即在最近发现的最大更新参数化(µP)中参数化目标模型,在较小的代理模型上间接调优HP,并零-shot转移到全尺寸目标模型,而无需直接调优后者。通过此方法,将任意大模型的调优问题简化为固定大小小模型的调优问题,覆盖SGD和Adam训练,验证在Transformer和ResNet上的有效性。
创新点:演示通过来自【57,Feature learning in infinite-width neural networks, 2020, arXiv】的最大更新参数化(µP),可以从小型模型零-shot转移近最优HP到大型模型;扩展【57,Feature learning in infinite-width neural networks, 2020, arXiv】仅覆盖SGD的µP,推导出Adam的µP(详见表3);提出µTransfer技术,提供对大型神经网络的巨大加速;在机器翻译、大型语言模型预训练(第7.3节)和图像分类(附录G.1)上彻底验证方法;发布PyTorch包以轻松实现µTransfer(附录H提供包概述)。
背景知识/关键观察/设计原则
参数化重要性基础:本节给出为什么正确参数化允许跨宽度HP转移的基本基础,但更多数学细节见附录J.1至J.3。中心极限定理(CLT)表明,如果x1,...,xn是来自零均值、单位方差分布的iid样本,则(1/√n)(x1+···+xn)当n→∞时收敛到标准高斯N(0,1)。因此,√(1/n)是正确的缩放因子cn,使得cn(x1+···+xn)收敛到非平凡值。相反,如果cn=1/n,则cn(x1+···+xn)→0;如果cn=1,则cn(x1+···+xn)的方差随n→∞而爆炸。现在假设我们希望最小化函数F_n(c)=E f(∑_{i=1}^n x_i c),其中f:R→R是某个有界连续函数。如果我们重新参数化c=α/√n,其中α∈R,则由CLT,G_n(α)=F_n(c)→E f(N(0,α^2)),当n→∞时稳定为α的函数。然后,对于足够大的n,最优α_n^=arg min_α G_n(α)应该接近于更小问题(如F_m)的最优α_m^到更大问题(如F_N)的最优c_N^≈α_m^ √(m/N)。因为转移算法只是复制α,我们说参数化c=α/√n是这个问题正确参数化。在本文研究的场景中,x1,...,xn类似于宽度n神经网络的随机初始化参数,c类似于HP如学习率,f是训练后网络的测试性能,因此F_n给出其在随机初始化上的期望。正如本例所示,如果我们正确参数化学习率和其他HP,则可以直接复制窄网络的最优HP到宽网络,并期望近似最优性能——这就是我们提出的零-shot超参数转移。事实证明,【57,Feature learning in infinite-width neural networks, 2020, arXiv】引入的最大更新参数化(µP)是正确的(类似于上面的α参数化),而标准参数化(SP)是不正确的(类似于c参数化)。理论上,µP网络具有良定义的无限宽度极限——类似于CLT下(x1+···+xn)/√n具有N(0,1)极限——而SP网络没有(极限会爆炸)【57,Feature learning in infinite-width neural networks, 2020, arXiv】。事实上,基于【57,Feature learning in infinite-width neural networks, 2020, arXiv】奠定的理论基础,我们在附录J.3中论证µP应该是唯一允许跨宽度HP转移的参数化。关于参数化和转移术语的更正式讨论,见附录A。我们强调,要确保任何超参数(如学习率)的可转移性,仅重新参数化该超参数是不够的,而是需要识别并正确重新参数化表2中的所有超参数。例如,在图1中,SP中的宽模型即使学习率最优调优,仍不如µP中的对应模型。这正是因为SP没有正确缩放参数乘数和输入/输出层学习率,与µP相反(见表3)。见附录C,通过继续本例提供更多直观解释。我们将在第5节中在神经网络上下文中更具体地解释这一点。
超参数在传统参数化下不转移:社区中似乎存在关于HP稳定性的冲突假设。先验地,不同大小的模型没有理由共享最优HP。事实上,旨在实现最先进结果的论文通常分别调优它们。另一方面,深度学习中相当一部分论文在与基线比较时固定所有HP,这反映了最优HP应该稳定的假设——不仅在相同模型的不同大小之间,而且在不同设计模型之间——因此此类比较是公平的。这里,我们在标准参数化下的MLP和Transformer中明确演示跨宽度的HP不稳定性。我们仅查看训练损失以排除正则化效果。标准参数化的MLP:我们从具有激活函数φ的2隐藏层MLP开始,使用类似于PyTorch默认的LeCun初始化的标准参数化:x1=φ(W^1 x_0 + b^1),x2=φ(W^2 x1 + b2),logits=W^3 x2,其中W^1∈R^{d_in×n},b1∈R^n,W^2∈R^{n×n},b2∈R^n,W^3∈R^{n×d_out},d_in、n和d_out是输入、隐藏和输出维度。我们使用的特定MLP有φ=ReLU和交叉熵(xent)损失函数。我们定义MLP的宽度为隐藏大小n,从256到8192变化。模型在CIFAR-10上训练20个epoch,这足以确保收敛。如图3左所示,当宽度从256增加到8192时,最优学习率大致变化一个数量级;使用最小模型的最优学习率在大模型上给出非常差的性能,如果不是发散。标准参数化的Transformer:这个或许不令人惊讶的观察也适用于更复杂的架构如Transformer,如图1(左)所示。我们定义宽度为d_model,其中d_k=d_q=d_v=d_model/n_head,d_ffn=4 d_model。模型在wikitext-2上训练5个epoch。在附录中的图18中,我们还展示了初始化规模和其他HP的不稳定性。
使用µP解锁零-shot超参数转移:我们展示µP解决了第3节中看到的问题。对于第3节中的MLP,要切换到µP,我们只需修改方程(2)的最后一层初始化及其第一和最后一层以及偏置的学习率。基本形式是W^3∼N(0,1/n),η_{W^1}=η_{W^3}=η/n,η_{W^2}=η,η_{b1}=η_{b2}=η_{b3}=η/n,其中η指定“主”学习率,我们用紫色突出两个参数化的差异。这个基本形式清楚地显示了参数化随宽度n的缩放,但在实践中,我们经常在每个n出现前插入(可能可调的)乘法常数。例如,这在与基宽度n_0的SP MLP一致时有用。然后对于\tilde{n}=n/n_0,我们有W^3∼N(0,1/\tilde{n}),η_{W^1}=η_{W^3}=η/\tilde{n},η_{W^2}=η,η_{b1}=η_{b2}=η_{b3}=η/\tilde{n}。然后在宽度n=n_0时,所有紫色因子均为1,参数化与宽度n_0的SP(方程(2))相同。当然,随着n从n_0增加,方程(4)迅速偏离方程(2)。换句话说,对于特定n,µP和SP可以相同直到某些常数(这里是n_0)的选择,但µP在变化n时确定了与SP不同的“网络集”和优化轨迹。正如我们在下一节中经验看到的,这种偏差对HP转移至关重要。事实上,在图3(右)中,我们绘制了使用n_0=128的µP MLP在各种学习率和宽度下的CIFAR10性能。与SP相反,µP下的最优学习率是稳定的。这意味着宽度128网络的最优学习率也是宽度8192网络在µP中的最优——即HP转移有效——但在SP中不是。此外,我们观察到在µP中,对于固定学习率,性能总是随着宽度弱改善,但在SP中不是。这个MLP µP示例可以轻松推广到SGD或Adam训练的一般神经网络,如表3总结,其推导在附录J中。我们为Transformer重复基宽度n_0=128的实验:定义4.1。Transformer的最大更新参数化(µP)由表3和1/d注意力而不是1/√d给出,即注意力logit计算为q^k / d,其中查询q和键k具有维度d。结果显示在图1右,其中最优学习率稳定,且性能随宽度单调改善。见附录B对µP的进一步解释。
SP的缺陷以及µP如何修复它们:SP vs µP的问题已在【57,Feature learning in infinite-width neural networks, 2020, arXiv】中详细研究。这里我们重述关键洞见,更多解释在附录J.3中。如【57,Feature learning in infinite-width neural networks, 2020, arXiv】和附录J.3所示,在SP中,网络输出在SGD的1步后会随宽度爆炸。考虑一个1隐藏层线性感知机f(x)=V^> U x,具有标量输入和输出,以及权重V,U∈R^{n×1}是一个有启发性的例子。在SP中,V_α∼N(0,1/n),U_α∼N(0,1),对于每个α∈[n]。这个采样确保初始化时f(x)=Θ(|x|)。在学习率1的SGD 1步后,新权重为V'←V+θ U,U'←U+θ V,其中θ是某个Θ(1)大小的标量,取决于输入、标签和损失函数。但现在V'^> U' = V^> U + θ (V^> V + U^> U) + θ^2 n,随宽度n爆炸,因为U^> U=Θ(n)由大数定律。现在考虑µP中的相同网络。根据表3,我们现在有V_α∼N(0,1/n^2)与SP相反,但U_α∼N(0,1)如前,学习率η_V=1/n,η_U=n。在SGD 1步后,我们现在有V'^> U' = V^> U + (η_U θ) (V^> V / n + U^> U / n) + (η_U θ) (η_V θ) n,并且可以验证这是Θ(1),因此不随宽度爆炸。我们可以在更高级架构如Transformer和优化器如Adam中观察相同行为;事实上,在SP中,其他隐藏量如注意力logit会在1步后随宽度爆炸,但在µP中仍保持有界,如图5(中)所示。有人可能认为随宽度缩放学习率可以解决SP中的这个问题。然而,Transformer中的其他隐藏激活如词嵌入(图5右)在训练的每步中更新宽度独立的量,因此缩放学习率将有效意味着词嵌入在大宽度模型中不被学习。类似结论适用于其他模型如ResNet(事实上,可以在上面的SP线性MLP示例中观察到,输入层更新比输出层慢得多)。另一方面,µP设计为所有隐藏激活在宽度方面以相同速度更新(见附录J.2解释原因)。这就是为什么使用µTransfer调优的宽模型通常优于其SP对应物(全局)学习率最优调优的原因。例如,这是图1中宽度8192 Transformer的情况,其中在SP中,最优学习率需要缓和logit和注意力logit等量的爆炸,但这意味着词嵌入等其他量不显著学习。这种性能优势意味着µTransfer不仅仅是预测宽SP模型的最优学习率。相关地,我们观察到,对于任何固定HP组合,在µP中训练性能从未随宽度减少,与SP相反(例如,图1、3和16中的µP曲线不交叉,但SP曲线交叉;见第8节)。
哪些超参数可以µ转移:在本节中,我们探讨常见HP如何融入我们的框架。一般来说,它们可以分为三类,如表1总结:1.那些可以从小模型转移到大模型的,如学习率(表2);2.那些主要控制正则化且我们的技术不适用的;3.那些定义训练规模的,如上面讨论的宽度以及深度和批量大小,我们跨这些转移其他HP。第一类跨宽度转移,如第2节理论证明。为了推动我们技术的实用性和一般性,我们经验探索第三类中其他维度的转移。注意跨宽度的µTransfer相当一般,例如,它允许不同层的宽度比率变化或Transformer中注意力头的数量变化;见附录E.2。这在实践中非常有用。对于第二类,正则化量(用于控制过拟合)自然取决于模型大小和数据大小,因此如果参数化仅取决于模型大小,我们不应期望转移有效。我们在附录E.1中更详细讨论这些HP。经验验证和局限性:我们的经验调查聚焦于当今最流行的深度学习骨干Transformer(这里)和ResNet(附录G.1.1)。我们训练一个2层pre-layernorm µP Transformer,有4个注意力头,在Wikitext-2上。我们扫一个四个HP(学习率、输出权重乘数、初始化标准差和学习率调度)中的一个,同时固定其他,并在宽度和深度上扫(额外结果在图19中跨批量大小、序列长度和训练时间)。图4显示了平均5个随机种子的结果。经验上,我们发现对于Transformer上的语言建模,如果满足某些最小宽度(例如256)、深度(例如4)、批量大小(例如32)、序列长度(例如128)和训练步(例如5000),且目标规模在我们实验的“合理范围”内,则HP通常跨规模维度转移。现在,有一些注意事项。虽然确切最优可能随规模增加而轻微移位,但这种移位通常对损失的影响很小,与SP相比(图1和3左)。然而,有一些注意事项。例如,最优初始化标准差似乎不跨深度转移好(第二行,第三列),尽管跨宽度有更稳定的最优。此外,虽然我们对宽度、批量大小、序列长度和训练时间的成果仍适用于post-layernorm(图17),但跨深度的转移仅适用于pre-layernorm Transformer。尽管如此,在实践中(例如第7.3节的结果)我们发现固定初始化标准差同时调优其他HP在跨深度转移时效果好。
方法细节
µTransfer总体程序:我们的整体程序,我们称为µTransfer,如算法1和图2总结,涵盖的HP如表1和2总结。
µTransfer的好处:我们的方法有几个好处:1.更好性能:µTransfer不仅仅是预测SP中最优学习率如何缩放。一般来说,我们期望µ转移模型优于其SP对应物学习率最优调优。例如,这是图1中宽度8192
Transformer的情况。我们在第5节和附录C中讨论原因。2.加速:它为大模型调优提供巨大加速。例如,我们仅通过零-shot
HP转移就能优于(350M)BERT-large【11,BERT: Pre-training of Deep
Bidirectional Transformers for Language Understanding, 2019,
arXiv】的公布数字,调优成本约等于1次BERT-large预训练。同样,我们优于6.7B
GPT-3模型【7,Language models are few-shot learners, 2020,
arXiv】的公布数字,调优成本仅为总预训练成本的7%。对于这种规模的模型,没有我们的方法HP调优根本不可行。3.为整个家族调优一次:对于具有变化宽度和深度的固定模型家族(如BERT家族或GPT-3家族),我们只需调优单个小模型,并为其家族中所有模型重用其HP。例如,我们将使用此技术通过从13M模型转移同时调优BERT-base(110M参数)和BERT-large(350M参数)。4.更好计算利用:虽然大模型训练需要分布在许多GPU上,但小模型调优可以在单个GPU上发生,大大增加调优的并行度(在组织计算集群上下文中,更好调度和利用率)。5.从探索到扩展的无痛过渡:研究人员经常在小模型上探索新想法,但扩展时,发现探索期间优化的HP在大模型上效果差。µTransfer将解决这个问题。
额外观察:除了HP稳定性属性,我们发现µP中更宽在整个训练中总是更好,与SP相反(第8节)。这增加了深度学习中模型缩放的可靠性。在本工作中,我们主要关注与训练损失相关的超参数转移。在正则化不是测试性能瓶颈的设置中,如我们所有实验,这也转化为测试损失的有效性。在其他设置中,如在小数据集上微调模型,µTransfer可能不够,如第6.1节讨论。
µP和SP的表格总结:表3总结了µP【57,Feature learning in
infinite-width neural networks, 2020,
arXiv】和SP用于一般神经网络。这里,我们强调随宽度(fan_in或fan_out)的缩放;在实践中,我们可能在fan_in和fan_out前插入可调乘数如方程(4)。偏置向量的fan_out是其维度(而fan_in是1)。紫色文本突出与标准参数化(SP)的关键差异;灰色文本回忆对应的SP。这里的SGD(resp.
Adam)可以替换为变体如带动量的SGD(resp.
Adagrad等);见附录B.3对其他优化器。一般来说,这里三列可以解释为无限宽度网络中具有{有限,无限,无限}输入维度和{无限,有限,无限}输出维度的线性层;这个描述更容易推广到其他参数如layernorm的那些。Transformer
µP需要另一个修改(1/d注意力而不是1/√d);见定义4.1。这个µP版本去除了参数乘数;对于类似于【57,Feature
learning in infinite-width neural networks, 2020,
arXiv】的版本,见表9。还见表8用于更容易实现µP公式(兼容输入/输出权重共享)。这个表的进一步解释可在附录B中找到。其推导可在附录J中找到。
经验验证HP稳定性:图4显示了在µP中preLN
Transformer上四个代表性超参数的稳定性验证:学习率、最后一层权重乘数α_output、权重初始化标准差和学习率调度。我们使用以下学习率调度:(a)线性衰减;(b)
StepLR @ [5k,8k]衰减因子0.1;(c) StepLR @
[4k,7k]衰减因子0.3;(d)余弦退火;(e)常量;(f)逆平方根衰减。所有模型在wikitext-2上训练10k步。当图例中未指定时,使用宽度256、深度2、批量大小20、序列长度256和LR调度常量。我们扫一个特定HP,对应每列,同时固定其他常量。见第6.1节对这些结果的讨论。
激活在SP中爆炸但在µP中保持一致规模:图5显示Transformer的logits和注意力logit,但不是词嵌入,在SP中随宽度爆炸。相反,在µP中所有三个都随宽度行为良好。这里我们测量不同值在Adam更新的4步中从初始化坐标变化多少,作为宽度的函数。具体地,我们绘制xt
-
x0坐标的标准差,对于t=0,...,4,和x∈{logits,注意力logits,词嵌入},其中t=0表示初始化。
µTransfer算法:算法1总结了µTransfer过程:参数化代理模型和小模型在µP中;在代理模型上调优HP;将HP转移到目标模型并训练。见图2对µTransfer的说明。
µTransfer效率和性能:现在µTransfer的可行性已在玩具设置中确立,我们转向更现实场景,看是否能获得有形收益。具体地,我们仅在较小的代理模型上进行HP调优,直接在大型目标模型上测试获得的HP,并与使用目标模型调优的基线比较。我们寻求回答问题:µTransfer能否使HP调优更高效,同时实现与传统调优相当的性能?正如本节结束时所见,答案是肯定的。我们这里聚焦于Transformer,而ResNet在CIFAR10和Imagenet上的实验可在附录G.1中找到。我们所有实验在V100 GPU上运行。IWSLT14 De-En上的Transformer:设置IWSLT14 De-En是著名的机器翻译基准。我们使用fairseq【33,fairseq: A fast, extensible toolkit for sequence modeling, 2019, NAACL-HLT】中实现的默认IWSLT(post-layernorm)Transformer,有40M参数,我们记为1x模型。对于µTransfer,我们在宽度1/4的0.25x模型上调优,总计4M参数。对于这个实验,我们通过随机搜索调优学习率η、输出层参数乘数α_output和注意力键投影权重乘数α_attn。见附录F.1中的网格和其他实验细节。我们比较从0.25x模型转移与调优1x模型,同时控制FLOPs中的总调优预算。为了改善我们结果的可重复性:1)我们为每个设置重复整个HP搜索过程(试验)25次,样本数如表4所示,并报告BLEU分数的25th、50th、75th和100th百分位;2)我们使用5个随机初始化评估每个选定的HP组合,并报告平均性能。我们为每个试验选择实现最低验证损失的HP组合。报告的最佳结果根据调优期间的验证损失选择。我们与fairseq中的默认比较,后者假设被大量调优。结果如表4所示。性能Pareto前沿:以上结果仅描述特定计算预算。µTransfer在更多(或更少)计算时是否仍优选?为了回答这个问题,我们在图6(左)中产生计算-性能Pareto前沿,其中我们用不同计算预算重复以上实验。显然,我们的方法完全主导传统调优。代理模型 vs 目标模型的样本质量:图6(右)的Pareto前沿表明,给定HP空间的固定随机样本数,1)直接调优目标模型产生略好于调优代理模型的结果(当然花费更多计算),但2)这种性能差距似乎随着更多样本而消失。这可以用代理模型是宽目标模型的“噪声估计器”【57,Feature learning in infinite-width neural networks, 2020, arXiv】的直观解释。样本少时,这种噪声扭曲随机HP搜索,但样本多时,噪声被抑制。WMT14 En-De上的Transformer:我们扩展到WMT14 En-De,使用来自【50,Attention is all you need, 2017, arXiv】的大型(post-layernorm)Transformer,有211M参数。我们通过缩小d_model、d_ffn和n_head调优15M参数的代理模型。对于这个实验,我们通过随机搜索调优学习率η、输出层参数乘数α_output和注意力键投影权重乘数α_attn,遵循附录F.2中的网格。结果如表5所示:虽然3个HP样本的随机搜索远不如fairseq默认,但我们通过转移使用相同调优预算匹配它。BERT:最后,我们考虑大型语言模型预训练,其中HP调优已知具有挑战性。使用Megatron(pre-layernorm)BERT【43,Megatron-lm: Training multi-billion parameter language models using model parallelism, 2019, arXiv】作为基线,我们希望仅调优大约13M参数的代理模型(我们称为BERT-prototype)来恢复公布HP的性能。虽然之前实验仅缩放宽度,这里我们也将缩放深度,如第6节讨论并在图4中验证。我们所有运行使用批量大小256,并遵循标准微调程序。关于BERT-prototype、我们调优的HP以及如何微调训练模型的更多细节,见附录F.3。在HP调优期间,我们从搜索空间采样256个组合,并在BERT-prototype上训练每个组合10^5步。以FLOPs衡量的总调优成本大致等于训练1个BERT-large完整的10^6步;确切计算在附录F.3中显示。结果如表6所示。注意在BERT-large上,我们获得对良好调优的Megatron BERT-large基线的可观改进。GPT-3:为了进一步验证大规模µTransfer,我们将其应用于具有相对注意力的GPT-3 6.7B【7,Language models are few-shot learners, 2020, arXiv】。这个目标模型由32个残差块组成,宽度4096。我们通过将宽度缩小到256形成小代理模型,导致大约4000万可训练参数,比目标模型小168倍。然后通过代理模型上的随机搜索确定HP。总调优成本仅为总预训练成本的7%。HP扫描细节可在附录F.4中找到。为了排除代码差异作为可能混杂因素,我们还使用来自【7,Language models are few-shot learners, 2020, arXiv】的原始HP从头重新训练GPT-3 6.7B。不幸的是,在我们完成所有实验后,我们发现这个基线错误地使用了绝对注意力(如同【7,Language models are few-shot learners, 2020, arXiv】中的模型),而它应该像目标模型一样使用相对注意力。此外,在µTransfer模型的训练期间,我们遇到数值问题导致频繁发散。为了避免它们,模型使用FP32精度训练,即使原始6.7B模型和我们的重新运行使用FP16。结果µTransfer模型优于来自【7,Language models are few-shot learners, 2020, arXiv】的6.7B,并且在我们的评估套件中实际上与两倍大的13B模型相当(见表11)。选定的评估结果可在表7中找到,进一步细节在表10和附录F.4中。
更宽在µP整个训练中总是更好:在早期图如图1和3中,我们看到在训练结束时,更宽在µP中总是更好,但在SP中不是。事实上,我们发现这在整个训练中是真实的,如图7所示,模随机初始化和/或数据排序的噪声,并假设输出层零初始化(这对性能没有影响,如附录D.2讨论)。然后我们在µP
GPT-3
Transformer(在GPT-3训练数据上)上压力测试这个,通过使用固定HP集将宽度从256缩放到32768(图8)。更宽模型在训练的每个点一致匹配或优于更窄模型(除了围绕1e8训练标记的短暂时期,可能由于噪声,因为我们由于计算成本仅运行1个种子)。我们的观察表明,如果适当缩放,更宽模型严格更数据高效。通过在训练早期检查“更宽更好”,也可以廉价调试µP实现。
附录中µP的替代公式:表8是更容易实现的等价µP公式,与表3格式相同。与表3中的公式相反,这里所有“向量-like”参数(即那些只有一个维度趋向无穷的参数,包括输入和输出权重和偏置)对初始化方差和SGD/Adam
LR有相同的宽度缩放(注意输入权重/偏置初始化方差的1/fan_in在宽度中是Θ(1))。这在实践中有两个好处:1)所有“向量-like”参数的实现统一和简化;2)输入和输出权重现在可以绑定,与表3相反,这是Transformer模型的常见设计特征。注意在本表中,对于偏置,fan_in是1(比较PyTorch
nn.Linear偏置的默认初始化,其中fan_in指层的fan_in)。这个表可以通过引理J.1从表3推导。见附录B进一步解释。
表9是【57,Feature learning in infinite-width neural networks, 2020,
arXiv】风格的µP公式。这个表可以通过引理J.1从表3推导。
方法细节中的引用汇总:方法细节中引用的参考文献包括:[57,Feature learning in infinite-width neural networks, 2020, arXiv] 在多个段落中描述µP的引入和唯一性,用于解释参数化差异和无限宽度极限;在解释SP缺陷时引用,用于证明网络输出爆炸和特征学习极限;在µTransfer程序中引用,用于µP的理论基础。[11,BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding, 2019, arXiv] 在好处部分引用,用于BERT-large基线比较。[7,Language models are few-shot learners, 2020, arXiv] 在好处和GPT-3部分引用,用于GPT-3模型比较。[33,fairseq: A fast, extensible toolkit for sequence modeling, 2019, NAACL-HLT] 在IWSLT和WMT实验中引用,用于Transformer实现。[50,Attention is all you need, 2017, arXiv] 在WMT部分引用,用于大型Transformer。[43,Megatron-lm: Training multi-billion parameter language models using model parallelism, 2019, arXiv] 在BERT部分引用,用于基线。[10,Transformer-xl: Attentive language models beyond a fixed-length context, 2019, arXiv] 在GPT-3中引用,用于相对注意力。
实验环境
数据集名称、规模及用途:Wikitext-2,用于语言建模预训练,规模约200万词,用于验证HP稳定性;CIFAR-10,用于图像分类,规模5万训练图像+1万测试,用于MLP和ResNet实验;IWSLT14 De-En,用于机器翻译,规模约16万句对,用于Transformer调优;WMT14 En-De,用于机器翻译,规模约450万句对,用于大规模Transformer;BERT预训练数据集(BooksCorpus+Wikipedia),规模约33亿词,用于语言模型预训练;GPT-3数据集,规模约3000亿标记,用于大型语言模型预训练;ImageNet,用于图像分类,规模约128万训练图像+5万验证,用于Wide ResNet。
模型架构关键参数:Transformer:d_model从128到8192,d_ffn=4 d_model,n_head=4-16,d_head=32-128,层数2-32;MLP:2隐藏层,宽度256-8192;ResNet:宽度乘数0.125-8,层数50;BERT:层数10-24,d_model=256-1024,参数13M-350M;GPT-3:层数32,宽度256-4096,参数40M-6.7B。
硬件配置:V100 GPU,数量未指定但用于所有实验,连接关系为分布式训练;CPU架构未指定。
软件配置:PyTorch,用于实现µP包和模型;fairseq,用于IWSLT和WMT Transformer;Megatron,用于BERT;自定义GPT-3代码;OS未指定。
实验结果
MLP on CIFAR-10:实验内容:比较SP和µP下不同宽度(256-8192)的训练损失 vs 学习率,使用SGD 20 epoch。结果:SP中最优学习率随宽度移位1数量级,宽模型性能差;µP中稳定,宽模型性能改善。分析结论:µP实现HP稳定和“更宽更好”。引用:图3。
Transformer on Wikitext-2:实验内容:扫学习率 vs 宽度(128-8192),Adam 5 epoch。结果:SP中最优LR不稳定,宽模型不如窄;µP中稳定,性能单调改善。分析结论:SP导致激活爆炸,µP修复。引用:图1、图5、图4(HP稳定性验证,包括调度)。
ResNet on CIFAR-10:实验内容:从0.5x转移HP到8x,扫LR和α_output。结果:µP准确率94.43% ±0.01%,优于SP 94.00% ±0.01%。分析结论:µP主导Pareto前沿。引用:图16、表12。
Wide ResNet on ImageNet:实验内容:从0.125x转移HP到1x,扫LR、α_output、权重衰减、动量。结果:µP top-1准确率77.32%,优于SP 76.91%。分析结论:µP在随机搜索中更高效。引用:表13。
Transformer on IWSLT14 De-En:实验内容:从0.25x(4M)转移到1x(40M),随机搜索LR、α_output、α_attn,控制FLOPs预算。结果:µP中位BLEU 34.4,优于传统调优34.1;Pareto前沿主导。分析结论:µTransfer更可靠。引用:表4、图6。
Transformer on WMT14 En-De:实验内容:从15M转移到211M,随机搜索3样本。结果:BLEU 28.4 ±0.1,匹配默认。分析结论:µTransfer匹配基线低成本。引用:表5。
BERT预训练:实验内容:从13M原型转移到BERT-base/large,调优LR、乘数等,成本=1 BERT-large预训练。结果:MNLI 86.4/89.2,QQP 92.1/92.8,优于基线。分析结论:同时调优base/large。引用:表6。
GPT-3预训练:实验内容:从40M转移到6.7B,随机搜索,成本7%预训练。结果:LAMBADA 72.5,Wikitext 10.3 perplexity,优于原6.7B,接近13B。分析结论:大规模验证。引用:表7、表10、表11、图14、图15。
更宽更好验证:实验内容:训练曲线 vs 宽度/标记。结果:µP中宽模型始终优于窄;SP中不。分析结论:µP更数据高效。引用:图7、图8。
💬 评论讨论
欢迎在这里分享您的想法和见解!