第 1 章 模型与 LLM 总览
第 1 章 模型与 LLM 总览
学习目标
- 说清「模型」「参数」「超参数」「结构」「目标函数」这几个词在工程语境下的准确含义;
- 理解假设空间、归纳偏置、泛化与过拟合,知道它们为什么决定模型的选择与调试方向;
- 区分判别模型与生成模型,以及传统 ML、深度学习、基础模型、LLM 四代范式的本质差异;
- 建立「模型生命周期」的整体视角,为全书后续各章定位。
1.1 模型、参数、超参数、结构、目标函数
先给几个贯穿全书的基础词下一个工程视角的定义。它们听起来像是教科书概念,但实际工作中 90% 的讨论混乱都源于这些词没对齐。
模型(Model) 是一个从输入到输出的映射,这个映射由结构(Architecture) 和参数(Parameters) 共同决定。结构决定了映射的「形状」——例如是一个线性函数还是一个多层神经网络;参数决定了映射的「具体数值」——例如线性函数里的权重 和偏置 。
参数是模型内部可学习的数值,通过训练更新。超参数(Hyperparameters) 是训练过程本身的设置,不由梯度更新决定,而是由人设定:学习率、批大小、层数、词表大小、上下文窗口长度都算超参数。层数这种「改了结构」的超参数在文献里常叫架构超参数,与「优化超参数」(学习率)区分开。
目标函数(Objective Function) 是训练时模型努力优化的量。机器学习里通常拆成两部分:
- 损失函数(Loss):衡量预测与目标之间的差距,越小越好;
- 正则化项(Regularization):对模型复杂度或参数大小施加惩罚,抑制过拟合。
训练的本质就是:在给定结构下,寻找一组参数,使目标函数在训练数据上尽可能小,同时在未见数据上保持好表现。
# 用最朴素的线性回归串起这些概念
import numpy as np
# 结构:y = w * x + b(线性模型)
# 参数:w, b(可学习)
# 超参数:学习率 lr、迭代轮数 epochs(人为设定)
# 目标函数:均方误差 + L2 正则
def train(X, y, lr=0.01, epochs=100, lam=0.001):
w, b = 0.0, 0.0
for _ in range(epochs):
pred = w * X + b
loss = np.mean((pred - y) ** 2) # 数据拟合项
reg = lam * (w ** 2) # 正则项(L2)
dw = 2 * np.mean((pred - y) * X) + 2 * lam * w
db = 2 * np.mean(pred - y)
w -= lr * dw
b -= lr * db
return w, b这五行代码里的每个词,放大到千亿参数的 LLM 上含义不变——只是参数从 2 个变成 2000 亿个,结构从一行公式变成数万行 Transformer,损失从 MSE 变成交叉熵,训练从 numpy 循环变成万卡集群。概念不变,规模变了,这是全书最重要的心智模型。
1.2 假设空间、归纳偏置、泛化与过拟合
假设空间(Hypothesis Space) 是某个结构所能表达的全部映射的集合。线性模型只能表达直线,假设空间是「所有直线」;带 ReLU 的多层感知机(MLP)能表达任意连续函数(通用近似定理),假设空间大得多。
归纳偏置(Inductive Bias) 是结构自带的「先验偏好」:CNN 假设局部性与平移不变性,RNN 假设序列依赖,Transformer 假设任意两个位置都可能相关。归纳偏置小、假设空间大的模型更灵活,但需要更多数据来约束;归纳偏置强的模型在数据不足时更容易学好,但若先验错了就会学偏。
泛化(Generalization) 指模型在训练数据之外的新数据上的表现。过拟合(Overfitting) 是模型把训练数据里的噪声也记住了,导致训练好、测试差。欠拟合则是模型容量不足,连训练数据都拟合不好。
这张图对应了工程里最常见的两类问题:
%%{init: {"themeVariables": {"primaryTextColor": "#000000", "textColor": "#000000", "labelColor": "#000000", "nodeTextColor": "#000000", "labelTextColor": "#000000", "scaleLabelColor": "#000000"}}}%%
graph LR
A[训练误差高] --> B{泛化差距?}
B -->|差距小| C[欠拟合:增大容量/特征]
B -->|差距大| D[过拟合:加正则/加数据/降容量]
E[训练误差低] --> F{泛化差距?}
F -->|差距小| G[健康模型]
F -->|差距大| H[过拟合:正则化/早停/更多数据]对 LLM 而言,「泛化」换了个名字叫涌现与迁移:模型在预训练语料上学习后,能处理未见过的任务。但同样的道理依然成立——如果评测集和训练语料分布太近,就会产生评估集污染(Benchmark Contamination),本质是一种过拟合:模型不是学会了能力,而是背住了答案(第 9 章展开)。
1.3 判别模型 vs 生成模型
机器学习模型按「学什么」分成两大类:
- 判别模型(Discriminative):直接学习条件分布 ,即「给定输入,输出标签」。分类、回归、排序大多是判别式。它不关心数据是怎么生成的,只画分类边界,数据利用率高、任务上常更强。
- 生成模型(Generative):学习联合分布 或输入本身的分布 ,从而能「生成」新的数据样本。朴素贝叶斯、HMM、GAN、VAE、Diffusion 都属于生成模型。
| 维度 | 判别模型 | 生成模型 |
|---|---|---|
| 建模对象 | 或 | |
| 典型任务 | 分类、回归、排序 | 文本生成、图像生成、补全 |
| 代表 | 逻辑回归、SVM、CNN 分类头 | GAN、VAE、Diffusion、GPT |
| 能否生成新样本 | 不能 | 能 |
| 数据效率 | 通常更高 | 通常更低 |
LLM 为什么是生成模型?因为 GPT 家族的预训练目标是下一个词预测(CLM,Causal Language Modeling),学的就是 ——给定上文预测下一个 token。这个「生成式」选择带来两个深远结果:
- 任务统一:分类、翻译、摘要、对话全都能表达成「生成一段文本」,不需要为每个任务设计输出头;
- 自监督数据无限:文本本身就是标签,不需要人工标注,语料即答案。
这是 LLM 与传统深度学习最根本的分水岭之一:传统模型为任务定制结构,LLM 用生成式统一一切任务。
1.4 传统 ML、深度学习、基础模型、LLM
把机器学习四十年的演进压成一张表:
| 范式 | 特征表示 | 学习方式 | 数据 | 代表 |
|---|---|---|---|---|
| 传统 ML | 人工特征工程 | 有监督为主 | 千~百万级 | LR、SVM、GBDT、RF |
| 深度学习 | 端到端自动学特征 | 有监督 + 少量自监督 | 万~亿级 | CNN、RNN、Transformer |
| 基础模型 | 大规模自监督预训练 + 微调 | 自监督主导 | 十亿~万亿 token | BERT、GPT、CLIP |
| LLM | 生成式、指令跟随、涌现能力 | 自监督预训练 + 对齐 | 万亿级 token | GPT-4、Llama、Qwen |
四个阶段不是替代关系,而是分工关系。今天的生产系统里,GBDT 依然统治着结构化数据的排序与风控(第 24 章会讲),CNN 仍在图像任务上有不可替代的效率,而 LLM 接管了自然语言交互与开放任务。
几个关键区别值得记住:
- 传统 ML 靠特征工程:人的领域知识编码进特征,模型负责拟合。特征是瓶颈。
- 深度学习去掉特征工程:但每个任务仍需定制结构(检测要 anchor、翻译要 Seq2Seq)和标注数据。
- 基础模型引入预训练-微调:先在无标注大语料上自监督预训练,再在任务上微调。BERT 是里程碑。
- LLM 是「生成式 + 规模化 + 对齐」的合成产物:当参数量和语料量跨过某个规模,模型涌现出指令跟随、上下文学习等能力,再用 RLHF/DPO 对齐人类偏好,成为可对话、可服务的产品。
一句话总结差异:传统 ML 学「特征到标签的映射」,深度学习学「数据到特征再到标签」,基础模型学「世界知识」,LLM 学「世界知识 + 如何与人协作」。
1.5 LLM 的定义、能力、涌现与边界
LLM(Large Language Model,大语言模型):以 Transformer(Decoder-only)为基础架构、在超大规模文本语料上以自回归方式预训练、参数量通常达到十亿乃至万亿级别的语言模型。
它具备几类核心能力,这些能力大多不是被显式训练出来的,而是规模化后的副产品:
- 上下文学习(In-Context Learning, ICL):给几个示例就能完成新任务,不改参数只改 Prompt。
- 指令跟随(Instruction Following):理解自然语言指令并执行,这是 SFT 与 RLHF 对齐的结果。
- 思维链(Chain-of-Thought, CoT):通过「先推理再作答」提升复杂问题正确率。
- 代码与工具使用:生成代码、调用函数、操作工具,这是 Agent 化的基础(第 26 章)。
- 多语言与多任务:在预训练语料覆盖的语言和任务上普遍可用。
涌现(Emergence) 指某些能力在模型规模跨过阈值后才突然出现,小模型不具备。最著名的例子是算术、多步推理与上下文学习。但「涌现」在学术上仍有争议——有研究表明它可能只是评测指标的平滑转变(Schaeffer et al., 2023),能力其实是连续增长的,只是我们用二值化指标度量时才显得「突变」。工程上不必纠结哲学争议,记住结论即可:某些能力与规模强相关,规模是能力的重要杠杆,但不是唯一杠杆(数据质量、对齐同样关键)。
边界(Limitations) 同样要清醒认识:
%%{init: {"themeVariables": {"primaryTextColor": "#000000", "textColor": "#000000", "labelColor": "#000000", "nodeTextColor": "#000000", "labelTextColor": "#000000", "scaleLabelColor": "#000000"}}}%%
mindmap
root((LLM 的边界))
幻觉
编造事实
自信的错误
引用不存在的文献
知识截止
训练数据时间上限
实时性差
数学与精确计算
长链条算术易错
需要工具增强
上下文限制
窗口有限
长上下文成本高
安全风险
越狱
提示注入
隐私泄露
成本
Token 费用
GPU 依赖1.5.1 幻觉
幻觉(Hallucination)是 LLM 生成看似合理但事实上错误的内容。它源于生成模型的基本属性:模型输出的是「最可能的 token 序列」,而非「经过验证的事实」。幻觉分事实性幻觉(与事实不符)与忠实性幻觉(与用户输入/上下文不符,如不遵循指令、忽略 RAG 检索结果)。缓解手段包括 RAG、更可靠的对齐、以及推理时验证,但这些只能降低概率,无法根除(第 9、17、23 章反复涉及)。
1.5.2 涌现能力与 In-Context Learning
上下文学习(ICL)值得单独强调:它让「改行为」的成本从「重新训练」降为「写 Prompt」。这直接改变了模型生命周期——模型的「使用期」从纯推理扩展为 Prompt 工程、RAG、Agent 编排,也把一部分「训练工作」转移到了「服务层」(第 17 章)。
1.6 LLM 生命周期与工程视角
全书的核心主张:模型工程不是「训练完就结束」。
传统上,「机器学习项目」的终点是训练出一个好模型,然后部署上线。但 LLM 时代,训练只是漫长生命周期的中间一环。一个 LLM 产品从诞生到退役,要经历完整生命周期:
%%{init: {"themeVariables": {"primaryTextColor": "#000000", "textColor": "#000000", "labelColor": "#000000", "nodeTextColor": "#000000", "labelTextColor": "#000000", "scaleLabelColor": "#000000"}}}%%
graph LR
A[数据] --> B[预训练]
B --> C[后训练/对齐
SFT RLHF DPO]
C --> D[评估]
D -->|不达标| B
D --> E[压缩/量化]
E --> F[推理优化]
F --> G[服务 Serving]
G --> H[部署]
H --> I[监控]
I --> J{反馈}
J -->|数据回流| A
J -->|模型漂移| C
J -->|继续预训练| B这个环里的每一站,都是本书的一篇:
| 生命周期阶段 | 本书位置 | 核心问题 |
|---|---|---|
| 数据 | 第 2 篇(第 6 章) | 语料从哪来、怎么清洗、怎么配比 |
| 预训练与后训练 | 第 2 篇(第 7-8 章) | 怎么训练、怎么对齐、怎么高效微调 |
| 评估 | 第 2 篇(第 9 章) | 模型到底行不行 |
| 分布式训练 | 第 3 篇(第 10-12 章) | 单卡放不下怎么办 |
| 压缩与推理 | 第 4 篇(第 13-14 章) | 怎么跑得快、跑得省 |
| 服务与部署 | 第 5-6 篇(第 15-20 章) | 怎么对外提供稳定服务 |
| 监控与治理 | 第 7 篇(第 21-23 章) | 上线后怎么保证可靠与安全 |
| 案例与趋势 | 第 8 篇(第 24-28 章) | 别人怎么做的、接下来往哪走 |
1.6.1 工程视角 vs 研究视角
同样一个模型,研究和工程的关注点截然不同:
| 维度 | 研究视角 | 工程视角 |
|---|---|---|
| 目标 | 提升某个指标 | 稳定、可控、可解释地服务 |
| 时间尺度 | 周/月 | 持续运行、常年迭代 |
| 成功标准 | 论文指标 | SLA、成本、用户价值 |
| 关注对象 | 模型能力 | 模型 + 数据 + 系统 + 流程 |
| 对待失败 | 可接受、可复现 | 不可接受、要有预案 |
「从 Notebook 到生产系统」的鸿沟(research-to-production gap)指的就是:Notebook 里能跑通的模型,离一个高可用、低成本、可监控的生产服务,中间隔着分布式训练、压缩、服务、部署、监控、治理这一整条链路。本书就是为填平这条鸿沟而写。
本章要点回顾
- 模型 = 结构 + 参数;超参数是训练过程设置;目标函数 = 损失 + 正则。
- 假设空间与归纳偏置决定模型「能学什么、好不好意思学」;泛化与过拟合是所有调参决策的底层依据。
- 判别模型学 ,生成模型学 ;LLM 是生成模型,用下一个词预测统一所有任务。
- 传统 ML → 深度学习 → 基础模型 → LLM,是特征工程、结构工程、预训练、对齐四代范式的演进。
- LLM 的核心能力(ICL、指令跟随、CoT)大多是对齐与规模化的产物;幻觉、知识截止、成本是现实边界。
- 模型生命周期:数据 → 预训练 → 对齐 → 评估 → 压缩 → 推理 → 服务 → 部署 → 监控 → 反馈回流。这是全书的骨架。
习题
- 用你自己的话解释:为什么「生成式」让 LLM 可以用自监督方式无限获取训练数据?
- 一个 GBDT 模型和一个 GPT 模型同时过拟合,它们的应对手段分别是什么?为什么不同?
- 查资料确认:为什么评估集污染是「评估层面的过拟合」?举一个真实案例(如某模型在 GSM8K 上的争议)。
- 假如你的公司要做一个「给客服生成回复」的系统,你会选传统 ML、BERT 微调还是 LLM?你的判断依据是什么?
延伸阅读
- Vaswani et al., Attention Is All You Need, 2017(Transformer 原文,第 3 章会深入)
- Radford et al., Language Models are Unsupervised Multitask Learners, 2019(GPT-2)
- Brown et al., Language Models are Few-Shot Learners, 2020(GPT-3,ICL 的起点)
- Wei et al., Emergent Abilities of Large Language Models, 2022(涌现)
- Schaeffer et al., Are Emergent Abilities of Large Language Models a Mirage?, 2023(涌现的争议)
下一章预告
第 2 章把「模型」这个大家族按学习范式、任务、结构、模态、规模、部署形态六个维度做全景扫描,回答一个实际选型问题:面对一个具体业务,到底该选什么模型?