“Scaling laws are decided by god;
The constants are determined by members of the technical staff”
— Sam Altman
《倚天屠龙记》中有一传说:“武林至尊,宝刀屠龙,号令天下,莫敢不从” ,为了得到屠龙刀江湖血雨腥风。但最后张无忌方知,所谓“武林至尊”,不在宝刀本身,而在刀中所藏的武穆遗书,以此兵法临敌,定能战必胜,攻必克,最终自是“号令天下,莫敢不从”。
同样,在 scaling laws 这个方向,似乎有一把屠龙刀的魅力,掌握 scaling laws 到底对大模型训练有什么帮助。
近期,美团发布的一项关于 scaling laws 的研究引起了不少关注。本文旨在解读该论文,感兴趣的同学可以将该论文和 OpenAI 原始论文一起研读,同时也期待更多 scaling laws 的研究。
Scaling laws 在大型模型训练的众多方面扮演着关键角色,诸如 GPT-4、Gemini 等模型的成就,都有 scaling laws 的深刻影响。尽管 OpenAI 在其早期的关于 scaling laws 的论文 [1] 中提出了基础理论,但该文缺乏一些具体的求解过程,且未能在更大规模的模型上进行验证。与此同时,后续研究,例如 DeepMind 的 ChinChilla [2] 还提出了不同的结论。
针对这一点,该论文着手探究了原始 scaling laws 研究所遗漏的细节,力求复现一套可靠和精确的 scaling laws 公式。同时,它还揭示了 ChinChilla 研究结果与 OpenAI 理论不一致的根本原因(数据分布和长下文长度不同),以期为大模型训练领域提供更深入的洞察。
论文题目:
Unraveling the Mystery of Scaling Laws: Part I
论文地址:
https://arxiv.org/abs/2403.06563
论文作者:
Hui Su, Zhi Tian, Xiaoyu Shen, Xunliang Cai
作者单位:
Meituan Inc.
概述
1.1 Take-away
超参,例如批处理大小(batch size)、学习率(learning rate)和学习率调度器(learning rate scheduler),在模型的收敛速度上起着显著作用。然而,只要这些参数设置在一个合理的范围之内,并结合充足的训练步数与大量数据进行训练,它们对于最终的收敛损失(loss)值的影响可以忽略不计。
调整 batch size 大小的主旨在于找到训练时间与计算资源消耗(也就是成本)之间的最佳平衡点。我们能够基于 loss 值确定一个关键的批处理大小(critical batch size),以实现时间和计算成本的相对最优。采用这一 critical batch size 进行训练,相较于使用无限大的 batch size(以实现最小训练步数),需要双倍的训练步数来达到同样的 loss 值。
上下文长度、tokenization、数据分布和模型架构本身,对于 scaling laws 公式中的系数有着显著的影响。然而,这些因素并不改变 scaling laws 的基本形式。这也解释了为何 ChinChilla 研究得出了不同的结论ÿ