全面碾压AdamW!谷歌新出优化器内存小、效率高,网友:训练GPT 2果然快

简介: 全面碾压AdamW!谷歌新出优化器内存小、效率高,网友:训练GPT 2果然快

谷歌的 Lion 优化器将成为训练大模型或大批量的「福音」。


优化器即优化算法,在神经网络训练中起着关键作用。近年来,研究者引入了大量的手工优化器,其中大部分是自适应优化器。Adam 以及 Adafactor 优化器仍然占据训练神经网络的主流,尤其在语言、视觉和多模态领域更是如此。

除了人工引入优化器外,还有一个方向是程序自动发现优化算法。此前有人提出过 L2O(learning to optimize),该方法通过训练神经网络来发现优化器。然而,这些黑盒优化器通常是在有限数量的小任务上训练而成,很难泛化到大模型。

还有人尝试了其他方法,他们应用强化学习或蒙特卡罗采样来发现新的优化器。然而,为了简化搜索,这些方法通常会限制搜索空间,从而限制发现其他优化器的可能性。因此,目前方法尚未达到 SOTA 水平。

最近几年,值得一提的是 AutoML-Zero,它试图在评估任务时搜索机器学习 pipeline 的每个组件,对优化器的发现很有借鉴意义。

在本文中,来自谷歌、 UCLA 的研究者提出了一种通过程序搜索发现深度神经网络训练的优化算法的方法,进而发现 Lion(EvoLved Sign Momentum)优化器。实现这一目标面临两个挑战:首先是在无限稀疏的程序空间中寻找高质量的算法,其次是选择可以从小型任务泛化到更大、SOTA 任务的算法。为了应对这些挑战,该研究采用了一系列技术,包括具有热启动和重启的进化搜索、抽象执行、funnel 选择和程序简化。


与 AdamW 和各种自适应优化器(这些优化器需要同时保存一阶和二阶矩)相比,Lion 只需要动量并利用符号操作来计算更新,并且将额外的内存占用减半。这在训练大模型或大批量时很有用。例如,AdamW 需要至少 16 个 TPU V4 来训练图像大小为 224、批大小为 4096 的 ViT-B/16,而 Lion 只需要 8 个。另一个实际好处是,由于 Lion 的简单性,Lion 在实验中具有更快的运行时间(steps /sec),通常比 AdamW 和 Adafactor 提速 2-15%,具体取决于任务、代码库和硬件。

论文一作 Xiangning Chen 表示:我们的符号程序搜索发现了一个只跟踪动量的有效优化器 ——Lion。与 Adam 相比,它获得了 88.3% 的零样本和 91.1% 的微调 ImageNet 准确率,以及高达 5 倍(与 ViT 相比)、2.3 倍(与扩散模型相比)和 2 倍(与 LM 想比)训练效率。

Lion 在一系列模型(Transformer、MLP、ResNet、U-Net 和 Hybrid)和任务(图像分类、视觉 - 语言对比学习、扩散、语言建模和微调)中展示了出色的性能。值得注意的是,通过在 BASIC 中用 Lion 替换 Adafactor,该研究在 ImageNet 上实现了 88.3% 的零样本和 91.1% 的微调精度(Pham 等人,2021),分别超过之前的 SOTA 结果 2% 和 0.1%。

此外,Lion 将 JFT 上的预训练计算量减少了多达 5 倍,将扩散模型的训练效率提高了 2.3 倍,并获得了更好的 FID 分数,并在语言建模方面提供了类似或更好的性能,节省了多达 2 倍的计算量。

推特用户 crumb 表示:自己使用谷歌的 Lion 优化器训练了一个 124M 参数 GPT2 模型,发现达到与 Adam 相同的损失所需的 step 数减少了 37.5%。

图源:https://twitter.com/aicrumb/status/1626053855329898496

算法的符号发现

本文使用程序形式的符号表示具有以下优点:(1)它符合算法必须作为程序来执行的事实;(2) 与神经网络等参数化模型相比,程序等符号表示更易于分析、理解和迁移到新任务;(3) 程序长度可用于估计不同程序的复杂性,从而更容易选择更简单、通常更具通用性的程序。这项工作侧重于深度神经网络训练的优化器,但该方法通常适用于其他任务

下图中,程序 2 这个简化代码片段使用与 AdamW 相同的 signature ,以确保发现的算法具有更小或相等的内存占用空间;程序 3 中给出了 AdamW 的示例表示。

该研究采用以下技术来解决无限和稀疏搜索空间带来的挑战。首先应用正则化,因为它简单,可扩展,并在许多 AutoML 搜索任务中很成功;其次是简化程序空间中的冗余;最后,为了降低搜索成本,该研究通过减少模型大小、训练示例的数量和距离目标任务的 step 使成本降低。

左:显示了五次进化搜索实验的均值和标准误差。右:随着搜索的进行,冗余语句的百分比和缓存命中率都在增加。

Lion 的推导与分析

研究者表示,优化器 Lion 具有简洁性、高内存效率以及在搜索和元验证方面的强大性能。

推导

搜索和 funnel 选择过程促成了程序 4,它通过从原始程序 8(附录)自动删除冗余语句获得。研究者进一步简化并得到程序 1 中的最终算法(Lion)。在简化过程中从程序 4 中删除了几个不必要的元素。其中 cosh 函数被删除,因为 m 将在下一次迭代中重新分配(第 3 行)。使用 arcsin 和 clip 的语句也被删除,因为研究者观察到没有它们质量不会下降。三个红色语句转换为一个符号函数。

尽管程序 4 中同时使用了 m 和 v,但 v 仅改变了动量的更新方式(两个具有常数∼0.9 和 ∼1.1 的插值函数等同于一个具有 ∼0.99 的函数)并且不需要单独跟踪。注意不再需要偏差校正,因为它不会改变方向。

如下算法 2 显示了伪代码。

分析

符号更新和正则化。Lion 算法通过符号操作在所有维度上产生了具有统一幅度的更新,这在原理上不同于各种自适应优化器。直观来看,符号操作为更新添加了噪声,作为了一种正则化形式并有助于泛化。下图 11(右)展示了一个证据。

动量跟踪。与 AdamW 和动量 SGD 中常用的 0.9 相比,Lion 中用于跟踪动量的默认 EMA 因子为 0.99 (β_2)。EMA 因子和插值的这种选择,使得 Lion 在记住动量梯度的 10 倍 history 和在更新中对当前梯度施加更多权重之间取得平衡。

超参数和批大小选择。与 AdamW 和 Adafactor 相比,Lion 更简单并且超参数更少,因为它不需要 ϵ 和因式分解相关的参数。Lion 需要更小的学习率,进而需要更大的解耦权重衰减才能达到类似的有效权重衰减强度 (lr * λ)。

内存和运行时优势。Lion 只保存动量,比 AdamW 等流行的自适应优化器占用的内存更小,这在训练大模型和 / 或使用大批量时非常有用。例如,AdamW 需要至少 16 个 TPU V4 芯片来训练图像分辨率为 224 且批大小为 4,096 的 ViT-B/16,而 Lion 只需要 8 个(均具有 bfloat16 动量)。

Lion 评估结果

在实验部分,研究者在各种基准上对 Lion 进行了评估,主要将它与流行的 AdamW(或者当内存成为瓶颈时的 Adafactor)进行比较。

图像分类

研究者在图像分类任务上执行涵盖各种数据集和架构的实验。除了在 ImageNet 上从头开始训练之外,他们还在两个更大的成熟数据集 ImageNet-21K 和 JFT 上进行预训练。图片大小默认为 224。

首先在 ImageNet 上从头开始训练。研究者训练 ResNet-50 达到 90 个 epoch,批大小为 1,024,其他模型训练 300 个 epoch,批大小为 4,096。如下表 2 所示,Lion 在各种架构上显著优于 AdamW

其次在 ImageNet-21K 上进行预训练。研究者在 ImageNet-21K 上对 ViT-B/16 和 ViT-L/16 进行了 90 个 epoch 的预训练,批大小为 4,096。下表 2 显示,即使训练集扩大 10 倍,Lion 仍然优于 AdamW

最后在 JFT 上进行预训练。为了突破极限,研究者在 JFT 上进行大量实验。下图 4 显示了 JFT-300M 上不同预训练预算下三种 ViT 模型(ViT-B/16、ViT-L/16 和 ViT-H/14)的准确率。Lion 使 ViT-L/16 能够与 AdamW 在 ImageNet 和 ImageNet V2 上训练的 ViT-H/14 性能相匹配,但预训练成本降低了 3 倍。

下表 3 显示了微调结果,具有更高的分辨率和 Polyak 平均。研究者使用的 ViT-L/16 与之前由 AdamW 训练的 ViT-H/14 结果相匹配,同时参数减少了 2 倍。在将预训练数据集扩展到 JFT-3B 后,Lion 训练的 ViT-g/14 优于之前的 ViT-G/14 结果,参数减少了 1.8 倍。

视觉语言对比学习

本节重点介绍 CLIP 风格的视觉语言对比训练。研究者没有从头开始学习所有参数,而是使用强大的预训练模型初始化图像编码器。

对于锁定图像文本调整 (LiT) ,研究者通过使用相同的 frozen 预训练 ViT 以对比方式训练文本编码器,进而在 LiT 上对 Lion 和 AdamW 进行比较。下表 4 显示了 3 种模型尺度上的零样本图像分类结果,Lion 展示出了对 AdamW 的持续改进。

下图 5(左)展示了 LiT-B/16-B 的示例零样本学习曲线,并在其他两个数据集上得到了类似的结果。

扩散模型

最近,扩散模型在图像生成方面取得了巨大的成功。鉴于其巨大的潜力,研究者测试了 Lion 在无条件图像合成和多模式文本到图像生成方面的表现。

对于 ImageNet 上的图像合成,研究者利用 2021 年论文《 Diffusion models beat gans on image synthesis 》中引入的改进 U-Net 架构,在 ImageNet 上执行 64×64、128×128 和 256×256 图像生成。如上图 5(中和右)所示,Lion 可以在 FID 分数上实现更好的质量和更快的收敛速度。

对于文本到图像的生成,下图 6 展示了学习曲线。虽然 64 × 64 base 模型没有明显改进,但 Lion 在文本条件超分辨率模型上优于 AdamW。与 AdamW 相比,Lion 获得了更高的 CLIP 分数并且具有更小的噪声 FID 指标。

语言建模和微调

本节重点介绍语言建模和微调。在纯语言任务上,研究者发现调整 β_1 和 β_2 可以提高 AdamW 和 Lion 的质量。

对于自回归语言建模,下图 7 展示了 Wiki-40B 的 token 级困惑度和 PG-19 的 word 级困惑度。Lion 始终实现比 AdamW 更低的验证困惑度。在 Wiki-40B 和 PG-19 上训练中型模型时,它分别实现了 1.6 倍和 1.5 倍的加速。当模型增加到大尺寸时,PG-19 进一步实现了 2 倍加速。

对于掩蔽语言建模,研究者还在 C4 数据集上执行 BERT 训练,其中 Lion 在验证困惑度方面的表现略好于 AdamW。相关学习曲线如下图 11(左)所示。

对于微调,研究者在 GLUE 基准上微调 Base(220M)、Large(770M)和最大的 11B T5 模型。下表 6 显示了 GLUE 开发集上的结果,平均而言,Lion 在所有 3  个模型规模上都击败了 AdamW。

与其他流行优化器的比较

该研究还使用四种流行的优化器 RAdam、NAdam、AdaBelief 和 AMSGrad 在 ImageNet 上训练 ViT-S/16 和 ViT-B/16(使用 RandAug 和 Mixup)。如下表 7 所示,Lion 仍然是表现最好的。

更多技术细节请参阅原论文。

相关文章
|
6月前
|
人工智能 自然语言处理 算法
谷歌推出”自我发现“框架,极大增强GPT-4等大模型推理能力
【4月更文挑战第20天】谷歌DeepMind团队推出了SELF-DISCOVER框架,让大型语言模型能自我发现并构建推理结构,提升在复杂任务中的性能。该框架模仿人类解决问题方式,分两阶段选择和适应原子推理模块,以解决挑战。在多任务测试中,SELF-DISCOVER相比传统方法表现出色,性能提升42%,计算量减少10至40倍。它具有跨模型应用的普适性,并与人类思维方式相通。然而,它在某些任务类型上仍有优化空间,且需解决计算成本问题。论文链接:https://arxiv.org/abs/2402.03620
92 1
|
1月前
|
存储 数据采集 数据安全/隐私保护
商汤、清华、复旦等开源百亿级多模态数据集,可训练类GPT-4o模型
商汤科技、清华大学和复旦大学等机构联合开源了名为OmniCorpus的多模态数据集,规模达百亿级,旨在支持类似GPT-4级别的大型多模态模型训练。该数据集包含86亿张图像和1696亿个文本标记,远超现有数据集规模并保持高质量,具备广泛来源和灵活性,可轻松转换为纯文本或图像-文本对。经验证,该数据集质量优良,有望促进多模态模型研究,但同时也面临存储管理、数据偏见及隐私保护等挑战。
143 60
|
16天前
|
人工智能 语音技术 UED
仅用4块GPU、不到3天训练出开源版GPT-4o,这是国内团队最新研究
【10月更文挑战第19天】中国科学院计算技术研究所提出了一种名为LLaMA-Omni的新型模型架构,实现与大型语言模型(LLMs)的低延迟、高质量语音交互。该模型集成了预训练的语音编码器、语音适配器、LLM和流式语音解码器,能够在不进行语音转录的情况下直接生成文本和语音响应,显著提升了用户体验。实验结果显示,LLaMA-Omni的响应延迟低至226ms,具有创新性和实用性。
34 1
|
4月前
|
机器学习/深度学习 自然语言处理 Swift
从头构建和训练 GPT-2 |实战
从头构建和训练 GPT-2 |实战
52 4
|
4月前
|
数据采集 人工智能 自然语言处理
GPT被封锁了怎么办?轻松获取高质量的数据,训练自己的人工智能和大语言模型。
2023年标志着AI大模型时代的到来,GPT-4等模型在多个领域展现巨大潜力。然而,OpenAI对中国区服务的限制提出了挑战。本文探讨如何使用亮数据代理获取训练大模型所需的数据,包括确定目标、选择代理、数据抓取、清洗,并以西方历史为例,展示如何使用亮数据的静态住宅代理稳定获取DE区域数据,最终在国产AI平台上训练模型,提升知识库的丰富度和准确性。尽管面临外部障碍,但自主获取和训练数据能增强本土AI能力。
|
4月前
|
机器学习/深度学习 自然语言处理 算法
ICML 2024:零阶优化器微调大模型,大幅降低内存
【7月更文挑战第14天】ICML 2024研究表明,零阶优化用于大模型微调能大幅降低内存需求。该论文通过避免反向传播,减少LLM(大型语言模型)微调的内存开销,提出新方法,适用于资源受限环境。虽然性能可能不及一阶优化器,但为高效NLP计算开辟了新途径。论文链接:[arxiv.org/abs/2402.11592](https://arxiv.org/abs/2402.11592)**
82 3
|
5月前
|
机器学习/深度学习 人工智能 算法
谷歌DeepMind:GPT-4高阶心智理论彻底击败人类!第6阶推理讽刺暗示全懂了
【6月更文挑战第10天】谷歌DeepMind团队的最新论文显示,GPT-4在高阶心智理论任务中超越了人类水平,这是AI在理解和推理人类心理状态上的重大突破。研究人员通过MoToMQA测试套件评估了大型语言模型,发现GPT-4在第6阶推理上超过成人表现。这一进展意味着AI能更好地理解用户意图,提升交互体验,但也引发了关于操纵与控制人类以及模型是否真正理解心理状态的担忧。论文链接:https://arxiv.org/pdf/2405.18870
72 3
|
5月前
|
人工智能
拯救被掰弯的GPT-4!西交微软北大联合提出IN2训练治疗LLM中间迷失
【6月更文挑战第1天】研究人员为解决大型语言模型(LLM)的“中间迷失”问题,提出了IN2训练方法。此方法通过显式监督增强模型对长文本上下文的理解,改善了信息检索能力。应用IN2训练的FILM-7B模型在长文本任务上表现出色,尤其在NarrativeQA数据集上的F1分数提升了3.4。尽管面临数据合成和计算成本的挑战,IN2训练为LLM的进步开辟了新途径,预示着未来在长文本处理领域的潜力。论文链接:https://arxiv.org/pdf/2404.16811
72 5
|
6月前
|
自然语言处理
Meta首发变色龙挑战GPT-4o,34B参数引领多模态革命!10万亿token训练刷新SOTA
【5月更文挑战第27天】Meta推出34B参数的多模态模型Chameleon,通过早期融合技术处理图像和文本,实现全面的多模态建模。在10万亿token的训练数据下,Chameleon在图像字幕生成和文本推理任务中刷新SOTA,展现出在混合模态生成和推理的潜力。然而,模型可能无法完全捕捉图像语义信息,且在某些特定任务上有优化空间。[论文链接](https://arxiv.org/pdf/2405.09818)
98 1
|
6月前
|
人工智能 自然语言处理 物联网
极大降低大模型训练内存需求,Meta等推出高效方法
【2月更文挑战第27天】极大降低大模型训练内存需求,Meta等推出高效方法
92 2
极大降低大模型训练内存需求,Meta等推出高效方法
下一篇
无影云桌面