机器之心报道
编辑:Panda W
训练一个 GPT 那样的千亿参数规模的大型语言模型需要多少钱和时间?北京智源人工智能研究院和中国科学院计算技术研究所等多所机构近日的一项研究发现可以用 10 万美元在 26 天内训练出一个有 1010 亿参数的 LLM;不仅如此,他们还在这项研究中提出了一种用于评估 LLM 的智商(IQ)的基准,可基于事实性知识之外的四个新方面对 LLM 的智能水平进行更为全面的评估。该项目的模型已发布,代码也将在未来开源。
包括仅解码器结构(如 GPT 和 LLAMA 系列模型)、仅编码器结构(如 BERT)和编码器 - 解码器结构(如 T5)以及它们的变体模型在内的大型语言模型(LLM)已经取得了非凡的成功,并已被广泛用于各种语言处理和多模态任务。
尽管如此成功,训练 LLM 的成本还是过于高昂,以至于仅有少数公司能承受其训练成本。此外,当前的趋势说明未来还会使用更大规模的训练数据,这会进一步推升大模型的研发成本。举个例子,LLAMA-1 训练使用了 1-1.4 TB token,而 Llama 2 更是达到了 2 TB。
研发 LLM 的另一大关键性挑战是评估。主流的评估方法分为两类:知识评估(MMLU 和 C-Eval)和 NLP 任务评估。这些评估方法可能无法真实反映模型的能力,因为也许存在数据泄漏问题,即评估数据集中某些部分可能在模型训练过程中已被使用。此外,面向知识的评估方法可能不足以评估智能水平。一种更为公平客观的评估方法是测 LLM 的智商(IQ),即将 LLM 泛化用于未在训练数据中见过的条件和上下文。
增长策略。为了解决训练成本难题,北京智源人工智能研究院和中国科学院计算技术研究所等多所机构近日做出了一番尝试 —— 首次通过增长策略(growth strategy)训练千亿参数级的 LLM。增长意味着训练过程中参数的数量并不固定,而是会从更小的模型扩增成大型模型。
图 1 展示了增长策略的三种典型场景。由于 LLM 的 FLOPs 大致与其参数数量成正比,因此模型参数的变化曲线与 X 轴之间的面积便能表示训练的计算成本。
图 1 (a) 展示了没有模型增长的标准训练策略;1 (b) 是直线型的增长策略,其能节省 50% 的成本;1 (c) 是一种适量型的增长策略,其节省的成本不到 50%;1 (d) 则是一种激进型的增长策略,能节省超过 50% 的成本。这一分析说明,为了尽可能地节省计算成本,应当采用激进型增长策略。
这项新研究的增长算子的设计灵感来自论文《2x faster language model pre-training via masked structural growth》中的 MSG,这是一个完整的运算集,涵盖 Transformer 结构的所有四个增长维度。更重要的是,MSG 能在增长的同时严格地保存功能。因此,虽然小模型可以通过较小的参数搜索空间快速学习,但其知识可以被后续更大的模型继承。这让增长策略有可能使用相同或更少的计算成本实现更好的性能。
开源的 FLM-101B 模型。智源研究院的研究者通过逐步增长训练了一个有 1010 亿参数的 LLM 模型,他们也表示会开源发布该模型。该模型的架构是 FreeLM 的一种演进版。因此,研究者将其命名为 FLM-101B,其中 F 表示 Free。
FreeLM 框架有两个预训练目标,分别由语言信号和教师信号引导。在这项新研究中,这两个目标被统一到了一个通用语言建模范式中。
IQ 评估基准。除了低成本的训练范式,该团队还做出了另一项贡献,即为 LLM 的智商(IQ)评估提出了一套系统性的基准。
之前已有研究表明:尽管困惑度(PPL)指标能在一定程度上反映生成文本的质量,但却并不可靠。另一方面,LLM 的训练数据规模非常庞大,以至于我们难以辨别模型究竟只是在引述知识数据,还是真的实现了类似人类的推理、分析和概括能力,而这些能力正是这项研究定义 IQ 的基础。一些常用的评估指标(用于英语的 MMLU 和用于汉语的 C-Eval)明显是面向知识的,无法全面反映模型的智能水平。
为了进行完整性检查,该团队进行了一项测试:来自世界知名大学的五名计算机科学研究者使用 C-Eval 的化学试题进行了考试。结果发现他们的准确度几乎相当于随机乱猜,因为大多数志愿者都已忘记曾学过的化学知识。因此,强调对专业知识的了解程度的评估基准其实不足以衡量模型的 IQ。
为了全面衡量 LLM 的 IQ,该团队开发了一个 IQ 评估基准,其中考虑了智商的四个关键方面:符号映射、规则理解、模式挖掘和抗干扰。
当然,这四个指标绝非 LLM IQ 评估的定案,但它们可作为一个起点,激励后续的研究发展,并可望最终催生出一套全面的 LLM IQ 评估框架。
这项研究的主要贡献包括:
FLM-101B 设计概况
从架构上看,FLM-101B 以 FreeLM 为骨干网络,并集成了 xPos。在模型大小方面,得益于新的增长策略,研究者能在一次训练中得到 16B、51B 和 101B 三种大小的模型。
至于预训练设置,FLM-101B 继承了 FreeLM 的训练策略。
而在增长策略方面,不同于独立训练不同大小模型的常用实践方法,该团队可以依次训练具有 16B、51B 和 101B 参数的三个模型,其中每个模型都会继承其前一个较小模型的知识。
至于训练硬件,则是使用了 24 台 DGX-A800 GPU (8×80G) 服务器组成的集群;FLM-101B 的训练时长不到 26 天更多并行策略和模型配置请参阅下表 1 和 2。
FLM-101B 的训练稳定性
为了解决损失发散和梯度暴增等不稳定问题,研究者提出了一种颇具潜力的解决方案,简述如下。
损失预测。新提出的实现训练稳定的方法如下:
首先,在 FLM-16B 训练开始之前先确定数据的分布。
接下来,对三个超参数进行网格搜索,包括学习率、初始化标准差和输出层的 softmax 温度。该网格搜索的执行是通过运行一个代理模型,其隐藏状态维度(即模型宽度)为 256、头数为 2,参数数量为 4000 万。该代理模型的其它所有结构超参数和训练数据与 FLM-16B 相同。在 6 个节点上使用数据并行时,一次运行网格搜索耗时为 24.6 小时,这大致表示:如果使用 24 节点的配置,那么运行一次需要 6 小时。
通过这种网格搜索,研究者找到了最优的超参数:学习率 = 4e-4、标准差 = 1.6e-2、softmax 温度 = 2.0。
然后他们通过 µP 迁移这些超参数,能实现规避了不稳定问题的无缝训练体验。再组合使用 MSG,LM-51B 和 FLM-101B 也没出现后续的增长发散问题。
图 2 展示了完整的训练损失曲线。
通过 Bfloat16 实现混合精度。使用混合精度的目的是节省运行时的内存和时间成本,这里他们选择的是 Bfloat16。
基准评估
表 3 比较了 FLM-101B 与其它强大基准模型(LLAMA 系列模型和 GLM-130B)的性能表现。
研究者表示,这些结果说明 FLM-101B 在事实性知识方面并没有任何优势,而如果能使用更多训练数据,那么其性能还会继续提升。
表 4 展示了 eFLM-16B 与基准模型在专业知识评估方面的结果。
结果证明,在强调专业知识的数据集上的得分并不能反映 LLM 的智能水平,因为某些特定训练数据可能具有压倒性的贡献。
表 5 给出了 FLM 模型每一阶段的性能表现。
正如预期的那样,FLM 的性能表现会随模型增大而提升。FLM-101B 在几乎所有任务上都表现最佳。这意味着该模型每一次增长后都会继承前一阶段的知识。
IQ 实验
实验中,为了对 LLM 的 IQ 进行更为系统性的评估,智源研究院的这个团队使用了现有的 IQ 相关数据集并做了一些必要的修改,他们也生成了一些新的合成数据。
具体来说,他们提出的 IQ 评估主要考虑了四个方面:符号映射、规则理解、模式挖掘和抗干扰。这些任务有一个关键的共同点:它们全都依赖于在新的上下文中进行推理和泛化。
下面几张表格展示了 IQ 实验的结果:
从这些表格来看,在这四个 IQ 评估基准上,FLM-101B 凭借低得多的计算成本取得了与 GPT-3 媲美且优于 GLM-130B 的结果。
除了训练数据的影响外,研究者推测这种优势可能是由于早期阶段的小模型细化了较小的搜索空间,当模型变得更大更宽,泛化能力增强时,这种优势还在持续发挥作用。