Redian新闻
>
Chinchilla之死:只要训练足够长时间,小模型也能超过大模型

Chinchilla之死:只要训练足够长时间,小模型也能超过大模型

公众号新闻

选自espadrine

机器之心编译


2022 年 3 月,DeepMind 一篇论文《Training Compute-Optimal Large Language Models》通过构建的 Chinchilla 模型得出了一个结论:大模型存在训练不足的缺陷,模型大小和训练 token 的数量应该以相等的比例扩展。也就是说模型越大,所使用的训练 token 也应该越多。


但事实可能并非如此,近日,博主 Thaddée Yann TYL 写了一篇题为《Chinchilla 之死》的文章,其中分析解读了 OpenAI 与 DeepMind 几篇论文中的细节,得到了一个出人意料的结论:如果有充足的计算资源和数据,训练足够长时间,小模型的表现也可以超越大模型。


多算胜,少算不胜。——《孙子兵法》


为了避免将算力浪费于缓慢的收敛过程中,进行外推是非常重要的。毕竟,如果你不得不步行去珠穆朗玛峰,你不会只靠眼睛辨别方向,而是会使用 GPS。


但有时候,你又不得不把视线从 GPS 上移开,看看道路。有些东西是无法通过简单的公式推断出来的。对十九世纪的物理学家来说,紫外灾变( Ultraviolet catastrophe)便是如此;而现在,LLM 亦是如此。我们估计在中心位置附近有效的东西可能在远处会出现巨大的偏差……


《我的世界》的边境之地(far lands),这是突然扭曲并与自身重叠的悬崖之地。


Chinchilla 到底是什么?


更小的模型执行的乘法更少,因而训练得也更快。但是,按照理论,更小的模型最终会触及自身知识容量的极限,并且学习速度会变慢;而有更大知识容量的大型模型在经过给定的训练时间后会超过小模型,取得更好的性能表现。


在评估如何在训练期间获得最佳性价比时,OpenAI 和 DeepMind 都会试图绘制帕累托边界(Pareto frontier)。虽然他们没有明确说明他们使用了该理论来绘制,但 OpenAI 曾说过的一句话暗示存在这个隐藏假设:

我们预计更大模型的表现应当总是优于更小的模型…… 大小固定的模型的能力是有限的。

这一假设是他们计算帕累托边界的基石。在 Chinchilla 研究中,图 2 展示了不同大小的模型经过大量训练时的训练损失变化情况。初看之下,这些曲线与理论相符:更小的模型一开始的损失更低(表现更好),但损失降低的速度最终变慢并被更大模型的曲线超越。


比较许多不同模型大小的损失曲线的 Chinchilla 图。


在这幅图中,每当更小的模型输给一个更大的模型时,他们就会标记一个灰点。这些点连成的灰线便是帕累托边界,这是他们计算缩放定律(scaling laws)的方式。


这一假设有个问题:我们不知道如果让更小的模型训练更长时间会发生什么,因为他们在小模型被超越时就不再继续训练它们了。


接下来在看看 Llama 论文。


Chinchilla 会有 Llama 的视野吗?


今年初,Meta 训练了四个不同大小的模型。不同于其它研究,其中每个模型都被训练了非常长时间,较小的模型也一样。


他们公布了所得到的训练曲线:


四个不同大小的  Llama 模型的训练损失曲线


1. 每条曲线首先按照幂律大幅下降。

2. 然后损失开始近乎线性地下降(对应于一个相当恒定的知识获取率)。

3. 在这条曲线的最右端,直线趋势被稍微打破,因为它们稍微变更平缓了一些。


首先,对于曲线末端的变平情况,这里解释一下人们可能有的一个微妙的误解。这些模型都是通过梯度下降训练的并且使用了可变的学习率(大致来说,这个超参数定义了每次朝梯度方向前进的程度)。为了获得优良的训练效果,学习率必须不断降低,这样模型才能检测到源材料中更细微的模式。他们用于降低学习率的公式是最常用的余弦调度(cosine schedule)。


在余弦调度下,学习率与训练步数的函数关系:学习率首先线性增长,然后下降且下降速度变快,之后到达中途一个转折点,下降速度再减慢。


从这张图中可以看到,在训练结束时,余弦调度会停止降低学习率,此时已经得到一个很好的近乎线性的训练损失曲线。学习速度减慢就是这种做法造成的。模型并不一定不再具有以同样近乎线性的速率学习的能力!事实上,如果我们能为其提供更多文本,我们就能延长其余弦调度,这样其学习率就会继续以同样速率下降。


模型的适应度图景并不取决于我们供给它训练的数据量;所以学习率下降趋势的改变是没有道理的。


不过这并非本文的重点。

训练损失曲线可能在另一方向上也存在误导性。当然,它们训练使用的数据是一样的,但它们处理这些数据的速度不同。我们想知道的并不是模型的样本效率如何(在这方面,更大的模型显然可以从其所见数据中学到更多)。让我们想象一场比赛:所有这些模型同时开始起步,我们想知道哪个模型首先冲过终点线。换句话说,当在训练时间投入固定量的算力时,哪个模型能在那段时间内学到更多?


幸好我们可以把这些损失曲线与 Meta 提供的另一些数据组合起来看:每个模型训练所用的时间。


先来谈谈上面我们看过的那张 Chinchilla 图,其仅占这张图左侧的一小部分。在这一小部分,可以看到 Chinchilla 记录的相同行为。以 7B 版本为例:其损失的下降速度一开始比更大的模型快得多,然后减慢;之后 13B 版本模型超过了它,率先到达 1.9。


然后,抵达边境之地,意外的转折出现了:7B 版本进入了近乎线性的疆域,损失稳步下降,看起来似乎走上了反超 13B 版本之路?如果能训练 7B 版本更长时间,说不好会发生什么。


但是,13B 和 33B 版本之间似乎也有类似的现象,其中 13B 版本起初的 Chinchilla 减慢也使其呈现出近乎线性的趋势,这时候 13B 版本的损失下降速度似乎很快!33B 其实胜之不武,因为它超越 13B 版本时已经用去了超过两倍的计算时间。


33B 和 65B 版本之间也有同样的先减速再加速的现象,以至于 33B 实际上从未被 65B 超越。这幅图的内容击破了 OpenAI 和 Chinchilla 的假设:更大的模型并未取得胜利(至少说还没有)。他们检测到的这种减速实际上并不是由于达到了某个能力极限!


尽管如此,7B 模型的线还是有点不尽如人意。如果 Meta 能训练更长时间就好了……

不卖关子了:他们训练了!他们发布了  Llama 2!

是时候证实我们的怀疑了


四个不同大小的 Llama 2 模型的训练损失曲线


同样,可以得到训练时间:


Llama 2 训练损失与所耗费的 GPU 时间


一眼便能看出,这里的训练损失曲线与 Llama 1 的不一样,即便这些基础模型是一样的。事实证明, Llama 2 的训练使用了双倍上下文大小和更长的余弦调度 —— 不幸的是,这会对所有模型大小产生负面影响。但是,更小的模型受到的影响比更大的模型更严重。由此造成的结果是:在 Llama 1 的训练时间,33B 模型总是优于 65B 模型;而在 Llama 2 的训练时间,34B 模型则在重新超过 70B 模型之前要略逊一筹。



更重要的是,对训练速度的比较强烈地佐证了之前对 Llama 1 的猜想:


1. 一开始时,更小的模型快于更大的模型。

2. 然后,更小的模型速度变慢,并被更大的模型超越(按照 Chinchilla)。

3. 但再然后,模型进入近乎线性的区域,这时候更小的模型能更快地下降,获取更优的知识,它们再次超越更大的模型。


这就带来了一个有关训练方法的结论:与普遍的看法相反,更大的模型会产生更差的结果。如果你必须选择一个参数大小和数据集,你可能最好选择 7B 模型,然后在数万亿 token 上训练 7 epoch。


请看看 7B 模型近乎线性的区域,然后将其模式外推给 70B 模型,看看 70B 模型训练停止时的情况:如果将 70B 模型的训练资源花在 7B 模型上,可能会达到更低的困惑度!


从 Llama 2 的曲线还能看到另一点:Llama 1 曲线末端的学习减速实际上是余弦调度造成的。在  Llama 2 的训练中,在对应于 1 万亿 token 读取数的位置,就完全没有这种减速。

事实上,原因可能是这样的:在同一位置, Llama 2 7B 模型的质量低于 Llama 1 7B 模型,可能是因为其余弦调度被拉长了!


现在我们回到那篇 Chinchilla 论文来论证这一点。在该论文的附录 A 的图 A1 中,他们给出了一个不同余弦调度参数的消融实验,换句话说就是对学习率曲线使用不同的延展方式。


Chinchilla 余弦调度消融研究


他们指出,当学习率曲线没有延展时,能实现最低的损失。这得到了图表的支持,但其中也有不对劲的地方。在读取了 600 万 token 后,上图模型的训练损失低于 2.8;与此同时,在相同的位置,下图模型的训练损失还更好。然而这两个模型的差异仅仅是余弦调度!由于下图模型注定会处理更多训练数据,所以就计算了「未拉伸的」余弦调度更多步骤,这实际上产生了拉伸效果。如果学习率遵循分配给更少训练步骤的余弦调度,其在同等训练时间下的损失会更低。


更广泛地说,这会引出一个有待解答的问题:如果余弦调度不是最优的,那么曲线的尾部形状应该是什么样子?


原文链接:

https://espadrine.github.io/blog/posts/chinchilla-s-death.html




© THE END 

转载请联系本公众号获得授权

投稿或寻求报道:[email protected]

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
北京理工大学发布双语轻量级语言模型,明德大模型—MindLLM,看小模型如何比肩大模型chì rè?zhì rè?千词万字“返场赛”来了!用魔法打败魔法 Prompt2Model:大模型辅助小模型全面拥抱大模型!腾讯正式开放全自研通用大模型:参数规模超千亿、预训练语料超 2 万亿 tokens专注高端市场,小模数齿轮龙头“夏厦精密”迎来发展新风口李开复零一万物发布首款大模型;马斯克xAI发布首个大模型;360、美团、昆仑万维等最新消息;vivo发布蓝心AI大模型招人,不只是在找足够好的人,更是在找足够匹配的人:给创业者的8个一线故事孩子长时间用嘴呼吸,小心腺样体肥大!平安基金钱晶:赚钱效应明显增强,小盘成长行情或持续很长时间《江山情》&《壁上观》一个千万富翁之死:精神病院是否存在收治漏洞?聊聊俺收藏的老连环画:聊斋志异性能超越Llama2-13B,可免费商用,姚星创业公司开源百亿参数通用大模型免费大模型实战课|首周聚焦百度智能云千帆大模型平台使用,《大模型应用实践》实训营11月16日开讲!小模型如何比肩大模型,北理工发布明德大模型MindLLM,小模型潜力巨大ChatGPT/GPT-4/Llama电车难题大PK!小模型道德感反而更高?不得癌症!最丑哺乳动物的抗癌妙招,也能帮助其他物种抗癌;ChatGPT写作业水平超过大学生 | 环球科学要闻打通大模型训练任督二脉!国内首个千亿参数、全面开源大模型来了,还联手开发者共训32卡176%训练加速,开源大模型训练框架Megatron-LLaMA来了基模型12项性能超越GPT-4,商汤语言大模型就等你来用“大麻不够,可卡因来凑”!《老友记》钱德勒之死:烈性毒品对战加拿大政府的胜利…清华团队攻破GPT-4V、谷歌Bard等模型,商用多模态大模型也脆弱?开源大模型FLM-101B:训练成本最低的超100B参数大模型惠誉调低美国信用评级是冲击波吗?总统之死:一个关于美国政治的寓言故事5128 血壮山河之武汉会战 信(阳)罗(山)战役 1普里戈任之死:俄罗斯高层政治资源再分配章鹏:大模型只是少数人的机会,小模型才是大多数人的机会英伟达推出大模型加速包;Meta将训练对标GPT-4的大模型;ChatGPT等成费水大户丨AIGC大事日报红色日记 12.1-10大模型+小模型,AI 产品的新沸点国产130亿参数大模型免费商用!性能超Llama2-13B,支持8k上下文,哈工大已用上小模型也能进行上下文学习!字节&华东师大联合提出自进化文本识别器Erklärung zur Zusammenarbeit1.3>7?微软新模型“以小博大”战胜Llama2,网友:用Benchmark训练的吧?
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。