目前,大语言模型(LLMs)主要基于Transformer架构,其中多头注意力层在非常深的神经网络中堆叠。现有的LLMs采用与小型语言模型相似的Transformer架构和预训练目标(例如语言建模)。但是,LLMs在模型大小、数据大小和总计算量(数量级)上都有了显著的扩展。大量的研究表明,缩放可以大大提高LLMs的模型容量。因此,建立一个定量方法来描述缩放效果是很有用的。接下来,我们将介绍Transformer语言模型的两个代表性缩放规律(Scaling Laws)。

KM缩放规律:在2020年,Kaplan等人(OpenAI团队)首次提出模拟神经语言模型的模型性能与三个主要因素(即模型大小N、数据集大小D和训练计算量C)的幂律关系。给定一个计算预算c,他们经验性地提出了缩放规律的三个基本公式:

L(N) = \left(\frac{N_c}{N}\right)^{\alpha_N}, \text{其中 } \alpha_N \approx 0.076, N_c \approx 8.8 \times 10^{13}\\ L(D) = \left(\frac{D_c}{D}\right)^{\alpha_D}, \text{其中 } \alpha_D \approx 0.095, D_c \approx 5.4 \times 10^{13}\\ L(C) = \left(\frac{C_c}{C}\right)^{\alpha_C}, \text{其中 } \alpha_C \approx 0.050, C_c \approx 3.1 \times 10^{8}

其中,L(\cdot)表示交叉熵损失,单位为nats(如果我们使用自然对数e来计算交叉熵,那么结果会以 "nats" 为单位。如果我们使用以2为底的对数,结果则以 "bits" 为单位)。他们展示了模型性能与这三个因素有强烈的依赖关系。

Chinchilla缩放规律:作为另一个代表性研究,Hoffmann等人(Google DeepMind团队)提出了一种用于指导LLMs计算最优训练的替代缩放规律形式。他们进行了严格的实验,改变了更大范围的模型大小(从70M到16B)和数据大小(从5B到500B tokens),并拟合了具有不同系数的类似缩放规律:

L(N, D) = E + \frac{A}{N^\alpha} + \frac{B}{D^{\beta}}, \text{其中 } E = 1.69, A = 406.4, B = 410.7, \alpha=0.34 \text{ 和 } \beta=0.28

通过在约束C \approx 6ND下优化损失L(N, D),他们展示了可以导出计算预算分配给模型大小和数据大小的最优值:

N_{opt}(C) = G \left(\frac{C}{6}\right)^a \text{ 和 } D_{opt}(C) = G^{-1} \left(\frac{C}{6}\right)^b

其中,a = \frac{\alpha}{\alpha+\beta}b = \frac{\beta}{\alpha+\beta}G是一个可以通过AB\alpha\beta来计算的缩放系数。正如在文献中所分析的,给定计算预算的增加,KM缩放规律更倾向于在模型大小上分配更大的预算,而Chinchilla缩放规律认为两个大小应该等比例增加。

尽管这些缩放规律有一些限制性的假设,但它们为缩放效果提供了直观的理解,使得在训练过程中预测LLMs的性能成为可能。然而,一些能力(例如上下文学习)根据缩放规律是不可预测的,只有当模型大小超过某个水平时才能观察到。