跳到正文
原文
Hugging Face Daily Papers· arXiv:2501.09223·本站收录 · 原文发表

《大语言模型基础》一书发布,覆盖预训练、对齐与推理六大主题

Foundations of Large Language Models

论文速读

其他

据论文 PDF 整理(AI 生成),以原文为准

Xiao与Zhu讲解自监督预训练与生成式大模型,称大规模语言建模可得到通用基础模型。

问题
自然语言处理正从针对任务的监督训练,转向先做大规模语言建模,再微调、对齐和提示。作者称这样能学到可迁移的语言与世界知识;监督预训练依赖标注,掩码预测还有训练与使用不一致的问题。
方法
自监督目标含因果与掩码语言建模、置换预测、判别训练和去噪。生成模型用 decoder-only Transformer 做下一 token 预测,再经指令微调与 RLHF 对齐;提示可用上下文学习与思维链。
实验与结果
第1–2章没有作者自跑实验。Table 2.3 转述预训练 token:GPT-3-175B 为 0.3T,Qwen3-235B-A22B 为 36T。书中另转述 Kaplan、Hoffmann 的损失—规模公式。
局限与可以继续做的
前言称侧重基础而非覆盖全部前沿方法。第1.5节称智能系统仍在早期,从有限数据学习以及复杂推理与规划仍待探索。第2.2.4节称测试损失更低不总意味着下游任务更好。
AI 导读一本名为《Foundations of Large Language Models》的大语言模型基础书籍发布,全书共六章,分别覆盖预训练、生成模型、提示词、对齐、推理和推理能力等关键领域。该书定位为基础概念读物,面向大学生、自然语言处理从业者及相关领域实践者,可作为大语言模型的参考读物。

一本名为《Foundations of Large Language Models》的大语言模型基础书籍发布,全书共六章,分别覆盖预训练、生成模型、提示词、对齐、推理和推理能力等关键领域。该书定位为基础概念读物,面向大学生、自然语言处理从业者及相关领域实践者,可作为大语言模型的参考读物。

深度解读

6 个问题,点开问题读完整回答

  1. 这篇论文试图解决什么问题?

    本书梳理自监督预训练与生成式大模型的基础,而非报告新实验。

    如何用大规模自监督预训练得到可适配多种任务的基础模型,并说明生成式大语言模型怎样训练、对齐和处理长上下文。

    • 场景:作者称,大语言模型说明世界与语言知识可通过大规模语言建模获得,从而做出处理多样问题的通用模型。研究方式已从用大量标注数据从头训练专用系统,转向预训练基础模型,再微调、对齐和提示。
    • 已有做法的不足:监督预训练随模型变复杂更需要标注。自训练依赖种子数据与伪标签。因果语言建模只看左侧上下文。掩码语言建模使用训练时才出现的 [MASK],且各被掩码 token 的预测相互独立。
    • 作者的看法:自监督可从无标注文本直接构造预测或分类信号,使编码器、解码器或编码器—解码器学到可迁移表示;把下一 token 预测做到大规模后,多种任务可以改写成文本生成。
    • 本书做什么:前言写明共六章,侧重基础概念与相关技术,而不是覆盖全部前沿方法。第 1 章讨论预训练任务、BERT 及其下游适配;第 2 章讨论 decoder-only 生成模型、规模化训练、缩放定律和长序列建模。前言还列出后四章将讨论提示、对齐、推理和推理能力。
  2. 有哪些相关研究?

    书中按预训练目标、生成式模型和缩放定律组织已有工作,自己不跑基线。

    书中相关讨论可分成四组;作者没有用统一实验把这些方法跑成自己的基线。

    早期预训练

    • 无监督与监督:Bengio 等(2006)用逐层重构做无监督预训练;Erhan 等(2010)讨论它与随后监督学习的关系。监督预训练的例子是先在一个分类任务上训练编码器,再换头迁移到另一任务。
    • 自训练:Yarowsky(1995)的词义消歧、Blum 与 Mitchell(1998)的文档分类,用种子分类器给无标注数据打伪标签。作者称自监督预训练不靠初始模型产生离散伪标签,信号直接来自文本。
    • 表示学习:Mikolov 等(2013)、Pennington 等(2014)从大规模文本学习词嵌入。He 等(2019)、Zoph 等(2020)在 ImageNet 上训练视觉骨干再用于下游。

    自监督语言预训练

    • 编码器:BERT(Devlin 等,2019)做掩码语言建模和下一句预测。Yang 等(2019)的置换语言建模针对 [MASK] 只在训练出现,以及被掩码 token 独立预测。Clark 等(2019)的 ELECTRA 用生成器替换 token、判别器做 token 级判断;书中称 GAN 式训练更难扩展。
    • 编码器—解码器:Raffel 等(2020)的 T5 把分类、问答、翻译甚至连续打分写成文本生成,并用哨兵 token 表示被掩盖片段。Lewis 等(2020)的 BART 比较掩码、删除、片段掩码、句子重排和文档旋转。Song 等(2019)、Joshi 等(2020)分别对应 MASS 式与连续片段掩码。
    • 多语言:Lample 与 Conneau(2019)的 XLM 在平行句上做翻译语言建模。Conneau 等(2020)讨论语言变多时需要更大模型和更大共享词表,并描述固定容量下的 curse of multilinguality。

    生成式模型、对齐与缩放

    • 语言建模谱系:Shannon(1951)估计英文可预测性;n-gram 见 Jurafsky 与 Martin(2008)等。Bengio 等(2003)用前馈网络估计 n-gram 概率并学习词嵌入。Radford 等与 Brown 等的 GPT 系列是书中 decoder-only 路线的主要例子。
    • 缩放与对齐:Hestness 等(2017)用数据规模描述测试误差曲线。Kaplan 等(2020)、Hoffmann 等(2022)给出损失与参数量、数据量的幂律。Wei 等(2022b)讨论规模增加到一定程度后出现新能力。RLHF 引自 Christiano 等(2017)、Stiennon 等(2020)和 Ouyang 等(2022)。思维链引自 Wei 等(2022c)与 Kojima 等(2022)。
    • 作者对缩放曲线的限定:作者称没有统一的缩放函数;只含幂律的形式也不能描述双下降等带拐点的曲线。

    基线、基准与本书定位

    • 基线与数据:本书没有自己的实验基线。Table 1.1 只对比预训练任务的输入输出和适用架构。Table 2.2、Table 2.3 汇总他人模型的结构与预训练 token 量。情感、蕴含、阅读理解和 GSM8K 只作为任务例子出现。
    • 定位:作者称本书关注基础而非全部前沿方法,并把生成式大模型的细节放在预训练概念之后展开。
  3. 论文如何解决这个问题?

    用自监督任务训练编码或生成模型,再以微调、RLHF 和提示适配。

    整体思路是用自监督任务训练序列模型,得到可微调或可提示的基础模型;生成式路线用 decoder-only Transformer 做下一 token 预测,再对齐与提示。

    问题设定与两种用法

    • 统一模型:输入是 token 序列。网络输出可以是词表上的分布,也可以是实值表示。预训练不假定单一下游任务。
    • 两类模型:序列编码模型把序列变成向量序列,再接分类或回归头。序列生成模型按上下文逐 token 生成。
    • 适配:编码模型常用微调,可只训练新头,也可连编码器一起更新。生成模型可直接微调,也可用提示把任务写成补全。作者称大模型仍需调优才能稳定遵循指令,与人类价值对齐也依赖微调。
    • 序列概率:下一 token 模型把序列概率写成 Pr(x0,…,xm)=∏i=0mPr(xi|x0,…,xi−1)。含义是从左到右的条件概率连乘;书中约定 i=0 时该条件概率为 1。

    自监督预训练任务

    • 因果与前缀语言建模:解码器只看左侧,用交叉熵或最大似然训练。前缀语言建模由编码器一次读入前缀,解码器再续写。
    • 掩码语言建模:随机掩盖部分 token,只在被掩盖位置计算重建损失。可只预测被掩盖位置,也可由解码器自回归还原整句,即去噪自编码。
    • 置换语言建模:输入顺序不变,只改变预测顺序,并用注意力掩码实现。作者称这样可让部分 token 同时看到左右上下文,并避免专门的 [MASK]。
    • 判别与破坏:下一句预测判断后句是否紧随前句。ELECTRA 用小生成器替换 token,判别器做 token 级二分类,训练后丢弃生成器。BART 的破坏包括 token 掩码、删除、片段掩码、句子重排和文档旋转。T5 用哨兵 token 表示连续被掩盖片段,以缩短训练序列。

    BERT 与下游适配

    • 损失:标准 BERT 是双向 Transformer 编码器。总损失是 LossBERT=Lossmlm+Lossnsp,即掩码语言建模与下一句预测之和。
    • 掩码细则:每个序列通常选出 15% 的 token;其中 80% 换成 [MASK],10% 换成随机 token,10% 保持不变。作者称保留未改 token,是为减轻预训练有 [MASK]、微调没有 [MASK] 的差异。
    • 输入与规模:每个位置的嵌入是 token、位置和片段嵌入之和。BERTbase 为 d=768、L=12、nhead=12、110M 参数;BERTlarge 为 d=1024、L=24、nhead=16、340M 参数。书中称常见做法是先在较短序列上训练很多步,再在全长序列上继续。
    • 使用方式:去掉预训练用的 Softmax,接任务头后在标注数据上微调。书中列出单文本分类、文本对分类、回归、序列标注、span 预测,以及把 BERT 当作编码器—解码器的编码器。序列标注例子用 BIO;阅读理解对上下文每个位置预测 span 的起止。

    生成、指令微调与 RLHF

    • 结构:decoder-only Transformer。嵌入为 token 嵌入加位置嵌入。每层含自注意力和 FFN,自注意力加因果掩码。输出层对最后一层表示做 Softmax。推理时取下一 token 并追加到上下文。
    • 训练:在数据集上最大化序列对数似然。作者称模型变大后训练更不稳定,常要改结构、并行方式和初始化。
    • 指令微调:样本分成输入段与输出段,损失只算在输出段上。作者称微调数据量通常比预训练小几个数量级,且不必覆盖全部下游任务;一定程度的零样本遵循指令,出现在用相对少量标注微调之后。
    • RLHF:作者把它放在预训练和监督微调之后。流程是先有初始策略,对同一输入采样多个输出并由人排序,用排序损失训练奖励模型,再在奖励下更新策略。书中举例提到 PPO。奖励模型与目标模型同架构但更小,在序列末尾特殊符号的顶层表示上打分。作者称人类偏好常常难以直接示范、但容易比较,因此不把偏好学习写成普通的分数回归。对齐目标包括遵循指令,以及无偏、真实、无害;作者并把安全写成在误用或对抗条件下仍保持可控。

    规模化训练与长序列

    • 数据:书中转述 Raffel 等,在未过滤数据上训练可能有害;并转述 Penedo 等,启发式处理后可丢掉 90% 网页抓取数据。书中称加入代码不仅与编程能力有关,也与需要思维链的推理有关。多语言效果取决于各语言数据的量与质量。隐私方面,作者称实践中难以删净敏感数据。
    • 结构改动:大模型多用 pre-norm。RMSNorm 用于 Llama 系列。FFN 激活包括 ReLU、GeLU(BERT、GPT-3、BLOOM)、GeGLU(Gemma)和 SwiGLU(PaLM、Llama)。书中转述 Chowdhery 等:去掉仿射变换的偏置项有助于训练稳定;Llama 与 Gemma 采用该做法。
    • 并行:数据并行把小批梯度汇总;朴素模型并行按层分设备,但设备大部分时间空闲;张量并行拆开大矩阵乘;流水线并用 micro-batch 重叠计算。作者称通信、同步、故障,以及低精度累加的非结合性,都会影响大规模训练。
    • 长上下文:标准自注意力的时间与显存随长度二次增长,KV cache 随长度线性增长。书中讨论稀疏注意力、线性注意力、循环模型、固定大小记忆、k 近邻检索和 RAG,以及 MQA、GQA 和跨层共享。可学习的绝对位置难以表示训练中未见的位置。正弦编码形式上可延长,作者称序列延长很多时效果不好。T5 bias 把 query 与 key 的偏移分桶:前半段一对一,后半段按对数加宽。
  4. 论文做了哪些实验?

    第1–2章未给出作者实验,只转述配置、token规模和缩放公式。

    实验设置

    • 作者实验:第 1 章以及第 2 章关于训练、对齐与长序列的讨论,没有作者自己训练或评测模型的实验,也没有评审模型、阈值、重复次数或人工一致性。
    • 转述对象:Table 2.2 汇总 GPT-1、GPT-2、GPT-3、Llama2、Llama3/3.1、Gemma2、Qwen2.5、DeepSeek-V3、Falcon、Mistral 的参数量、深度、宽度和头数。Table 2.3 汇总 7 个模型的预训练 token 量与数据类别。
    • 任务名:语法性、情感、语义等价、蕴含、常识推断、问答推断、阅读理解、NER、机器翻译和 GSM8K 只作为适配或提示例子,书中未给出自己的样本量或分数。
    • 指标:讨论的是交叉熵、对数似然、排序损失和测试损失,不是作者在某一基准上计算的准确率。
    • BERT:第 1.3.1.2 节只给结构数字,不是下游评测结果。
    • 对比:没有作者设定的基线系统。Table 1.1 对比的是预训练任务的输入输出格式。

    主结果

    书中没有作者实验的主结果。下表是 Table 2.3 转述的预训练规模。

    模型token 数主要数据类别(据 Table 2.3)
    GPT-3-175B0.3TWebpages, Books, Wikipedia
    Falcon-180B3.5TWebpages, Books, Conversations, Code, Technical Articles
    PaLM-540B0.78TWebpages, Books, Conversations, Code, Wikipedia, News
    Gemma-7B6TWebpages, Mathematics, Code
    Llama3.1-405B15.6TGeneral Text, Mathematics, Reasoning Data, Code, Multilingual Text
    DeepSeek-V314.8TMultilingual Text, Mathematics, Code
    Qwen3-235B-A22B36TMultilingual Text, Books, Code, Reasoning Data, Synthetic Data
    • 表注称 token 数依赖分词器,且可能包含训练数据的重复采样。
    • 作者称更大的训练集并不意味着更好的训练结果;质量、多样性、偏见和隐私都会限制可用数据。
    • 这些数字是书中对已有模型的汇总,不能读成作者复现实验。Table 2.2 的 Gemma2 规格与 Table 2.3 的 Gemma-7B 不是同一行,二者不应合并。

    转述的结构规模与缩放公式

    • Table 2.2:GPT-3 为 175B、深度 96、宽度 12288、头数 96/96。Llama3/3.1 的 405B 为深度 126、宽度 16384、头数 128/8。DeepSeek-V3 为 671B、深度 61、宽度 7168、头数 128/128。a/b 中 a 是 query 头数,b 是 key 与 value 的头数。
    • Kaplan 等(2020):书中写出 L(N)=(N/8.8×10^13)^(-0.076),L(D)=(D/5.4×10^13)^(-0.095)。作者称经历初期之后,损失随模型规模或数据规模呈幂律下降。
    • Hoffmann 等(2022):Chinchilla 公式写为 L(N,D)=406.4/N^0.34+410.7/D^0.28+1.69。作者称测试损失更低不总对应所有下游任务更好,不同任务的缩放关系在实践中可能不同。

    书中点出的例外

    • 掩码语言建模:训练使用 [MASK],推理不用;被掩盖 token 的预测忽略彼此依赖。置换语言建模被写成针对这两点的做法,书中未给对比分数。
    • 位置编码:只在训练位置上学习的绝对位置嵌入无法表示未见位置。正弦编码形式上可延长,作者称序列延长很多时效果不好。
    • 多语言:书中转述 Conneau 等,固定容量上语言过多会出现 curse of multilinguality,高资源语言表现下降。未附具体百分点。
    • 训练系统:朴素模型并行使设备大部分时间空闲;低精度梯度累加因浮点加法不可结合而可能出现数值差异。书中未给速度或收敛曲线上的读数。

    其他消融与分析

    • 掩码设定:选出 token 的 15%,再按 80%、10%、10% 做掩码、随机替换和保持不变(第 1.3.1.1 节);这是训练设定,不是消融分数。
    • RoBERTa:书中转述 Liu 等,扩大数据和计算后可不改结构而改进 BERT;去掉下一句预测,在扩大训练后不降低下游表现。无本书自己的分数。
    • 更大 BERT 式模型:书中转述 He 等的 15 亿参数模型,以及 Shoeybi 等的 39 亿参数模型;后者使用数百块 GPU。无下游分数。
    • mBERT:书中称在 104 种语言的文本上训练,与单语 BERT 的主要差别是更大词表。无跨语言分数。
    • 数据过滤:书中转述 Penedo 等,启发式处理后 90% 网页抓取数据可被丢弃。
    • 激活与偏置:GeLU 用于 BERT、GPT-3、BLOOM;SwiGLU 用于 PaLM 与 Llama;Chowdhery 等报告去掉偏置有助于稳定。均无本书测得的损失差。
  5. 有什么可以进一步探索的点?

    作者称侧重基础、系统仍在早期,且损失下降不总改善下游。

    作者指出的局限与后续方向

    • 写作范围:前言称本书更关注基础,而不是全面覆盖全部前沿方法。
    • 研究阶段:第 1.5 节称,真正智能的系统仍在早期,仍有很长的路。作者称仍待探索的包括从有限数据中高效学习,以及复杂推理和规划。
    • 第 1 章边界:第 1.5 节称该章主要是导论,不能覆盖预训练的全部方面;多种微调方法留到后面的章节。
    • 损失与下游:第 2.2.4 节称,测试损失更低并不总意味着所有下游任务更好。微调、提示等步骤会影响最终结果,不同下游任务的缩放定律在实践中可能不同。
    • 记忆容量:第 2.3.3.3 节称,大语言模型的记忆容量没有一般定义;实践中要在表现与内存占用之间权衡。
    • 书中没有单独的 Limitations 节。以上条目来自前言、第 1.5 节、第 2.2.4 节和第 2.3.3.3 节里明确写出的边界或未决问题。

    实验覆盖范围

    • 第 1 章和第 2 章的预训练、训练扩展与长序列讨论没有作者自己运行的训练或下游评测;论文未报告作者实验的样本量、重复次数、评审模型或人工一致性。
    • 结构数字写到 BERTbase 的 110M 参数与 BERTlarge 的 340M 参数,以及 mBERT 的 104 种语言。
    • Table 2.2 列出 GPT-1、GPT-2、GPT-3、Llama2、Llama3/3.1、Gemma2、Qwen2.5、DeepSeek-V3、Falcon、Mistral 共 10 个模型系列的参数量、深度、宽度和 Q/KV 头数;其中 Llama2、Llama3/3.1、Gemma2、Qwen2.5、Falcon 各有多个规格。
    • Table 2.3 转述 7 个模型的预训练 token 量,其中包括 GPT-3-175B 的 0.3T 和 Qwen3-235B-A22B 的 36T,并注明 token 数依赖分词器、可能重复采样。
    • 预训练任务的对比停在 Table 1.1 的格式示意。缩放公式转述 Kaplan 等与 Hoffmann 等,没有作者拟合的新曲线。
  6. 总结一下论文的主要内容

    导论式说明预训练、生成、对齐、扩展和长上下文,并转述规模数字。

    Xiao 与 Zhu 的这本书是大语言模型基础导论,不是一份新实验报告。

    • 问题:作者要说明如何用大规模自监督预训练得到基础模型,再通过微调、对齐和提示处理多种语言任务,而不是为每个任务从头训练专用系统。
    • 预训练:因果语言建模、掩码与置换语言建模、判别训练和去噪自编码,分别可用于解码器、编码器或编码器—解码器。BERT 把掩码语言建模和下一句预测相加;通常选出 15% token,再按 80%、10%、10% 做掩码、随机替换和保持不变。BERTbase 为 110M 参数,BERTlarge 为 340M。
    • 生成与对齐:decoder-only Transformer 最大化下一 token 的对数似然。指令微调只在输出段计算损失。RLHF 先收集输出排序,再训练奖励模型并更新策略。作者称目标包括准确遵循指令,以及无偏、真实、无害。提示部分用上下文学习和思维链说明如何在不改参数时完成新任务。
    • 规模与长上下文:Table 2.3 转述的预训练规模包括 GPT-3-175B 的 0.3T token 和 Qwen3-235B-A22B 的 36T。书中转述 Kaplan 与 Hoffmann 的幂律公式,并称损失更低不总对应所有下游任务更好。长序列部分讨论稀疏与线性注意力、固定记忆、检索增强,以及 MQA、GQA 和位置的外推或内插。
    • 作者结论:作者认为自监督预训练已经改变 NLP 的研究方式,但真正智能的系统仍在早期。作者称从有限数据中高效学习,以及复杂推理和规划,仍是开放问题。前言称本书侧重基础,不覆盖全部前沿方法。
阅读原文huggingface.co