📑 本页目录(点开跳转)
10b · 图像生成:扩散模型
⏱ 14 分钟 | ⭐ 和 LLM 完全不同的一种生成范式
🎯 一句话
LLM 是一个词一个词写出来(自回归);扩散模型是从纯噪声开始一步步擦出图像。 ⭐ 为什么图像走这条路:语言天然有顺序,图像天然没有 —— 强行自回归等于给它加一个不存在的约束。
⚠️ 这一页不需要先读 10 章的 VLM 部分,可以直接看。
🎨 二、图像生成(扩散模型)
和 LLM 完全不同的范式:
LLM:一个词一个词地「写」出来(自回归)。
扩散模型:从纯噪声开始,一步步「擦」出图像 ——
训练:给干净图片加噪声,让模型学会「预测加了什么噪声」。
生成:反过来,一步步去噪。
关键组件:
| 组件 | 作用 |
|---|---|
| U-Net / DiT | 去噪的主干网络(DiT = 用 Transformer 做去噪,现在的主流) |
| VAE | 把图压缩到低维「潜空间」再扩散,省算力(Latent Diffusion) |
| 文本编码器 | 把提示词变成条件,引导生成方向 |
| CFG | 分类器自由引导,控制「多听话 vs 多自由」 |
| ControlNet / LoRA | 精确控制构图 / 注入特定风格(LoRA 和第 5 章同源!) |
💡 为什么扩散比自回归更适合图像
关键信息
🔗 和第 2 章对照着看: 自回归适合语言是因为语言本来就是线性的; 图像没有"下一个像素"这个概念,所以强行自回归是在给它加一个不存在的约束。
⚠️ 但两者正在互相靠拢:
图像生成开始用 Transformer 做去噪主干(DiT), 而语言模型也在探索扩散式生成。"哪种范式适合哪种数据"还没有定论。
📦 深挖的话要学什么
📍 每条后面标了它在哪:📗 本库有 = 站内已经讲透,点进去就行; 📙 半有 = 站内讲了一部分;📕 要外找 = 站内没有,得去别处。
图像生成:扩散过程的数学(前向加噪/反向去噪)、DDPM→DDIM 采样加速、Latent Diffusion、DiT、ControlNet、风格 LoRA 训练、图生图/局部重绘、评估(FID/CLIP Score)
→ 📗 本库有:《扩散模型》整套 11 页就是为这一行清单写的 —— 加噪与去噪、为什么训练目标是「预测噪声」、DDIM 为什么能跳步、Latent Diffusion 省的是哪一部分算力、CFG 那个 guidance scale 在权衡什么、U-Net 与 DiT、ControlNet 与风格 LoRA、以及 FID 的四个坑。⭐ 第 1 章在二维数据上从头训一个出来,CPU 几十秒。
前置数学仍然建议先过一眼:数学原理 01b · KL散度(扩散的变分下界整个建在 KL 上,而 KL 在全站被引用过六次却直到那一章才被定义)、数学原理 13 · EM与高斯混合(变分推断的同一套思路)。15 · 数学地基 也明说了「马尔可夫链 / 变分推断——只有挖图像生成才需要」。把这两章当地基,然后去 DDPM 和 DDIM 两篇原论文。
🔗 想再深一层,去哪一套
| 去哪 | 为什么 |
|---|---|
| 主线 2 · 模型怎样看懂一句话 | 「自回归为什么适合语言」那条对照的另一半 —— DiT 用的去噪主干正是 Transformer |
| 主线 5 · 怎样把模型变成你的助手 | ⭐ 表格里那句「LoRA 和第 5 章同源」:图像风格 LoRA 和语言模型的 LoRA 是同一个低秩适配 |
| 机器学习的数学原理 01b · KL 散度 | 扩散模型训练目标的数学地基:变分下界那一套建在 KL 上 |
| AI基础设施 18 · 量化 | 图像模型同样吃显存;量化和显存优化那一套在这里一样适用 |
✅ 检查点
- 扩散模型和 LLM 的生成范式有什么根本不同?为什么图像更适合扩散?
- 训练时模型学的到底是什么?生成时又反过来做什么?
- Latent Diffusion(把扩散放进潜空间)省的是哪一部分开销?靠什么部件实现?
- CFG 和 ControlNet / LoRA 各自控制的是什么?
👀 答案
- LLM 是自回归(一个一个生成);扩散是从纯噪声开始迭代去噪,所有像素同时变清晰。图像更适合扩散是因为语言天然有顺序,图像天然没有——强行自回归是给它加一个不存在的约束;而且扩散的全局一致性天然更好、步数可控。
- 训练时给干净图片加噪声,让模型学会「预测加了什么噪声」;生成时反过来,从纯噪声开始一步步去噪。
- 省的是扩散过程本身的算力:先用 VAE 把图压缩到低维潜空间,在那里做扩散,最后再解码回像素。去噪主干是 U-Net / DiT(DiT 用 Transformer 做去噪,是现在的主流)。
- CFG(分类器自由引导)控制「多听话 vs 多自由」—— 提示词的约束力有多强;ControlNet 精确控制构图,LoRA 注入特定风格。
🛑 可以停在这里
⚠️ 一条别忽略的动向:两种范式正在互相靠拢 —— 图像生成开始用 Transformer 做去噪主干(DiT),语言模型也在探索扩散式生成。「哪种范式适合哪种数据」还没有定论,所以别把「图像=扩散、语言=自回归」当成铁律。
⚡ 走神救援
先记住这几件事
- 扩散生成从噪声逐步恢复结构,与逐词续写的生成方式不同。
- 主干负责去噪,潜空间压缩计算,文本与控制组件提供条件。
- 先区分想控制内容、构图还是风格,再选择对应方法。
下一节 👉 10c-语音与视频.md