Google Brain新提出的优化器“Lion”,效果要比Adam(W)更好
与 AdamW 和各种自适应优化器需要同时保存一阶和二阶矩相比,Lion 只需要动量,将额外的内存占用减半。 这在训练大型模型和大Batch size时很有用。 例如,AdamW 需要至少 16 个 TPU V4 芯片来训练图像大小为 224、批量大小为 4,096 的 ViT-B/16,而 Lion 只需要8个。
另一个显而易见的好处是,由于 Lion 的简单性,Lion 在我们的实验中具有更快的运行时间(step/s),通常比 AdamW 和 Adafactor 提速 2-15%,具体取决于任务、代码库和硬件。
2.1 图像分类
2.2 视觉-语言对比训练
2.3 扩散模型
2.4 语言建模
和因式分解相关的参数。 为了确保公平比较,我们使用对数标度为 AdamW (Adafactor) 和我们的 Lion 调整峰值学习率
和解耦权重衰减
。 AdamW 中
和
的默认值分别设置为 0.9 和 0.999,
为
,而在 Lion 中,
和
的默认值
是通过程序搜索过程发现的,分别设置为 0.9 和 0.99。 作者只调整语言任务中的那些超参数,其中
,
在 AdamW 中,
,
在 Lion 中。 此外,AdamW 中的
设置为
而不是默认的
,因为它提高了我们实验中的稳定性,类似于 RoBERTa 中的观察结果。
,作为符号操作的结果,因此它具有比其他优化器生成的更大的范数。 根据作者的经验,Lion 的合适学习率通常比 AdamW 小 10 倍,尽管有时小 3 倍的学习率可能表现稍好。 由于有效权重衰减为
,因此用于 Lion 的
值比 AdamW 大 10 倍,以保持相似的强度。 例如,
,
在 Lion 和
,
在 ImageNet 上训练 ViT-B/16 时使用强增强。
,
和 AdamW 中的
,
用于扩散模型。
、
和 Adafactor 中的
、
用于 7.5B 语言建模。
和
。 热图表明,与 AdamW 相比,Lion 对于不同的超参数选择更加稳健。
左:批量大小影响的消融实验。 Lion 比 AdamW 更喜欢更大的批次。 当我们为 AdamW(中间)和 Lion(右)改变
和