大语言模型是指在海量无标注文本数据上进行预训练得到的大型预训练语言模型

本部分将介绍大语言模型的构建过程、扩展法则(Scaling Law)、涌现能力(Emergent Abilities),然后将介绍GPT 系列模型的研发历程。

2.1 大语言模型的构建过程

  • Transformer结构
  • 两步骤:大规模预训练,指令微调&人类对齐

2.1.1 大规模预训练

解码器架构+预测下一个词

2.1.2 指令微调与人类对齐

  • 指令微调(也叫做有监督微调,Supervised Fine-tuning, SFT)
  • 人类对齐:将语言模型与人类价值观对齐

2.2 扩展法则

和小语言模型相似的结构,但是通过扩展参数规模、数据规模和计算算力,大语言模型的能力显著超越了小型语言模型的能力。

2.2.1 KM扩展法则(OpenAI)

KM 扩展法则(Kaplan 等人, 2020)描述了神经语言模型的性能如何随模型规模(N)、数据规模(D)和计算算力(C) 变化,采用幂律公式刻画其关系:

L(N)NαN,L(D)DαD,L(C)CαCL(N) \sim N^{-\alpha_N}, \quad L(D) \sim D^{-\alpha_D}, \quad L(C) \sim C^{-\alpha_C}

其中,L(·) 代表交叉熵损失,实验表明模型扩展后,损失呈幂律下降。

核心结论

  1. 模型规模、数据量和算力三者紧密相关,增加任一因素都能改善性能,但需确保资源匹配。
  2. 幂律关系提供优化指导,用于合理分配计算资源,提升模型效果。
  3. OpenAI 进一步拆分损失
    • 不可约损失(数据特性决定,无法优化)。
    • 可约损失(可通过增加计算或优化算法减少)。

意义

该法则为大规模神经网络的优化提供了经验指导,说明如何在算力有限的情况下合理扩展模型规模和数据量以获得最佳性能。

2.2.2 Chinchilla 扩展法则(DeepMind)

Chinchilla 扩展法则由 DeepMind 团队(2022)提出,旨在优化计算资源的利用,指导大语言模型如何在给定算力下合理分配模型规模(N)和数据规模(D),从而提高训练效率。

核心公式

Chinchilla 扩展法则给出的模型损失函数为:

L(N,D)=E+ANα+BDβL(N, D) = E + \frac{A}{N^\alpha} + \frac{B}{D^\beta}

其中,EEAABB 为实验拟合参数,α=0.34\alpha = 0.34β=0.28\beta = 0.28
在约束条件 C6NDC \approx 6ND 下,最优的 N 和 D 分配方案

Nopt(C)=G(C6)a,Dopt(C)=G1(C6)bN_{\text{opt}}(C) = G \left(\frac{C}{6}\right)^a, \quad D_{\text{opt}}(C) = G^{-1} \left(\frac{C}{6}\right)^b

其中,a=αα+βa = \frac{\alpha}{\alpha + \beta}b=βα+βb = \frac{\beta}{\alpha + \beta},用于计算模型参数与数据的最佳配比。

与 KM 扩展法则的对比

研究发现,Chinchilla 扩展法则和 KM 扩展法则均可近似表示为计算力主导的幂律关系

NoptCa,DoptCbN_{\text{opt}} \sim C^a, \quad D_{\text{opt}} \sim C^b

但二者在数据与参数的扩展趋势上有所不同:

  • KM 扩展法则a0.73,b0.27a \approx 0.73, b \approx 0.27):更倾向于增加模型参数 NN
  • Chinchilla 扩展法则a0.46,b0.54a \approx 0.46, b \approx 0.54):主张模型参数与数据规模接近等比例增长

重要意义

  1. 优化算力资源分配:以往预训练偏向扩大模型规模,忽视数据量,如 GPT-3(175B 参数)仅用 300B 词元训练,数据量远未达到模型性能饱和点。Chinchilla 研究表明,适量增加数据比单纯增大模型更有效,如 Chinchilla(70B 参数)使用 1.4T 词元 训练。
  2. 挑战“更大模型=更好”假设:LLama-2(7B)等新模型趋势表明,高质量数据+适当规模的模型,而非单纯增大参数,才是提升性能的关键。
  3. Transformer 架构的局限:当前尚无充分实验支持无限扩大模型规模能继续提高性能,而适当扩展数据可能更具性价比。

总结

Chinchilla 扩展法则提出了一种更均衡的参数与数据增长策略,突破了大模型仅靠参数扩展的惯性思维,为优化大语言模型训练资源的分配提供了更科学的指导。

但是扩展法则意义不大(单纯纠结数字,)因为小模型在数据量更大的情况效果也会更好。 例如,LLaMA-2 (7B) 的模型就使用了2T 的词元进行训练,很多更小的模型也能够通过使用超大规模的预训练数据获得较大的模型性能提升。这种现象的一个重要原因是由于Transformer 架构具有较好的数据扩展性,到目前为止,还没有实验能够有效验证特定参数规模语言模型的饱和数据规模(即随着数据规模的扩展,模型性能不再提升)。

2.2.3 关于扩展法则的讨论

  • 可预测的扩展: 较小算力资源预测较大资源投入后的模型性能
  • 任务层面的可预测性

2.3 涌现能力

在小型模型中不存在但在大模型中出现的能力

具体是指当模型扩展到一定规模时,模型的特定任务性能突然出现显著跃升的趋势,远超过随机水平。

2.3.1 代表性的涌现能力

  • 上下文学习: 在提示中为语言模型提供自然语言指令和多个任务示例(Demonstration),无需显式的训练或梯度更新,仅输入文本的单词序列就能为测试样本生成预期的输出。
  • 指令遵循: 指令遵循能力是指大语言模型能够按照自然语言指令来执行对应的任务[28, 39, 40]
  • 逐步推理: 大语言模型则可以利用思维链(Chain-of-Thought, CoT)提示策略[25] 来加强推理性能。具体来说,大语言模型可以在提示中引入任务相关的中间推理步骤来加强复杂任务的求解,从而获得更为可靠的答案。

2.3.2 涌现能力与扩展法则的关系

  • 扩展法则:语言建模损失
  • 涌现能力:任务性能衡量模型性能
  • 顿悟:持续训练测试误差突然下降

2.4 GPT 系列模型的技术演变

  1. 训练能够准确预测下一个词的Transformer (只包含解码器)语言模型
  2. 扩展语言模型的规模以及扩展预训练数据的规模。

2.4.1 早期探索阶段

  • GPT-1:Generative Pre-Training(仅有解码器的)参数100M
  • GPT-2:GPT-2 沿用了GPT-1 的类似架构,将参数规模扩大到1.5B,并使用 大规模网页数据集WebText 进行预训练。

2.4.2 规模扩展

  • GPT-3:175B,100倍的参数扩张,提出上下文学习概念(建立以提示学习方法为基础技术路线的任务求解范式)

2.4.3 能力增强

  • 代码数据训练:在代码数据上进行训练有助于提高GPT模型的综合性能
  • 人类对齐:使用人类反馈、协助人类评估、进行对齐研究

2.4.4 性能跃升

  • ChatGPT
  • GPT-4:单模态变多模态,干预策略缓解幻觉,隐私泄漏等问题,引入红队攻击减少生成有毒有害内容。
  • GPT-4V,GPT-4 Turbo以及多模态支持模型

本站由 @anonymity 使用 Stellar 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。