🏠 总目录📚 本教程 附录A · 速查 ←
📑 本页目录(点开跳转)

附录A · 速查

⏱ 18 分钟 | ⭐ 公式、数字、症状反查 —— 用到哪查哪,不用从头读


🧭 怎么用这一页

四张表各管一件事:公式用来回忆推导落点,数字用来判断量级对不对, 症状反查用来定位问题,旋钮用来调参。每一行都能点回本板块的某一章。


🔢 一、公式速查

在做什么 式子 出处
前向加噪(一步) $x_t = \sqrt{1-\beta_t}\,x_{t-1} + \sqrt{\beta_t}\,\varepsilon$ 02 · 加噪与去噪
⭐ 闭式采样(一步跳到任意 $t$) $x_t = \sqrt{\bar\alpha_t}\,x_0 + \sqrt{1-\bar\alpha_t}\,\varepsilon$,其中 $\bar\alpha_t=\prod_s \alpha_s$ 02
训练损失 $L_{\text{simple}} = \|\varepsilon - \varepsilon_\theta(x_t, t)\|^2$ 03 · 训练目标
从 $\varepsilon$ 反推干净图 $\hat x_0 = (x_t - \sqrt{1-\bar\alpha_t}\,\varepsilon_\theta)/\sqrt{\bar\alpha_t}$ 04 · DDIM
CFG 合成 $\tilde\varepsilon = \varepsilon_{\text{uncond}} + s\,(\varepsilon_{\text{cond}} - \varepsilon_{\text{uncond}})$ 06 · 条件控制与 CFG
LoRA 旁路 $W' = W + B(Ax)$,中间宽度就是 rank 08 · ControlNet 与风格 LoRA

⭐ 闭式采样那一行是整套东西的支点:它是恒等不是近似(靠「独立高斯相加、方差相加」), 所以训练能并行 —— 不必为 batch 里每张图各跑几百步。


📐 二、数字速查(都是本板块实测出来的)

量 值 它说明什么
$\beta_t$ 的范围(DDPM linear) 0.0001 → 0.02,$T=1000$ 一张写死的表,零个可训练参数
闭式 vs 迭代($t{=}1000$) 0.29 ms vs 182.5 ms 闭式不随 $t$ 增长,迭代线性涨
$x_T$ 与 $x_0$ 的相关系数 0.0031 终点和原图基本无关 —— 所以采样能凭空起手
8 倍下采样后的高频保留 0.0000 U-Net 跳跃连接救的就是这个
512²×3 → 64²×4 786432 → 16384,压缩 48 倍 但卷积省 64 倍、注意力省 4096 倍
一个潜空间格子 8×8=64 个像素,192 个数压成 4 个 💀 画不好小字的第一层原因
CLIP ViT-L/14 文本输出 77 × 768 77 就是「提示词太长后面不起作用」的根
CFG 训练时丢条件的概率 约 10% free 指的是不用额外分类器
ControlNet 零初始化(第 0 步) 输出差 0.0,而梯度 2501.0 ⭐ 不破坏原模型,但学得动
同样位置用默认初始化 第 0 步就把主干改动 2.217 对照组:为什么必须零初始化
LoRA rank(768→320 那层) r=4 → 1.77% 参数,r=64 → 28.33% 常见取值 4~64
FID:同分布、真值应为 0 n=100 → 21.4,n=10000 → 0.214 💀 样本量不够时 FID 毫无意义
FID:高斯 vs 每维 ±1 0.1127(同分布基线 0.1088) 💀 两个天差地别的分布,得分没区别

🚨 三、症状反查

现象 先怀疑 去哪一章
训练 loss 降了但采样出来一团糊 采样器的调度表和训练时的 $\bar\alpha$ 对不上 02、04
数据没归一化就开训 ⚠️ 方差保持只在输入方差为 1 时成立,方差 3 的数据会从 3.00 漂到 1.00 02
采样太慢 步数,不是图大。DDIM 20~50 步就够 04
同一个种子出的图不一样 模型 / 步数 / 调度 / 提示词要全同,连浮点归约顺序都算 04
两个噪声之间插值出来是糊的 ⚠️ 必须走球面:线性中点范数只有 90.51,掉出了那个半径 128 的球壳 04
小字、远景人脸、手指画不好 💀 在 VAE 编码那一步就丢了,扩散再准也补不回来 05 · Latent Diffusion
提示词后半段像没生效 文本编码器只有 77 个 token 位 06
出图过饱和、构图崩、每次都差不多 CFG 的 s 太大 —— ⚠️ s>1 是外推不是插值 06
加了 ControlNet 显存爆了 它要多跑一份主干副本 08
两个 LoRA 一起用互相打架 权重要调,叠加会干扰 08
FID 比别人论文高/低很多 ⚠️ 先问三件事:样本量、真图取自哪、resize 方式 09 · 怎么评估

🎚️ 四、你会调到的旋钮

旋钮 调大会怎样 调小会怎样
采样步数 慢;收益会饱和 快;太少则细节垮掉
CFG scale s 更听话,但过饱和、构图崩、多样性塌缩 s=1 等于不引导,出图发散
η(DDIM 随机性) 越接近 1 越像 DDPM,少步数下越吃亏 η=0 确定性,种子可复现
strength(图生图) 改动越大,越不像原图 越贴近原图
LoRA rank r 表达力强、参数多(r=64 → 28.33%) 省参数(r=4 → 1.77%),但学不动复杂风格
LoRA 权重 风格越重,容易盖掉提示词 风格若隐若现

📖 五、术语对照

词 一句话
前向过程 加噪。固定的、不用学,$\beta$ 是一张写死的表
反向过程 去噪。这才是学出来的那一半
$\bar\alpha_t$ 从 0 到 $t$ 的 $\alpha$ 连乘。它一个数就决定了「这一步还剩多少原图」
方差保持 $(1-\beta)+\beta=1$,所以输入方差是 1 时每步都还是 1
ELBO / 变分下界 损失的出处。⚠️ 前置在数学原理 01b · KL 散度
$L_{\text{simple}}$ 把 ELBO 的系数直接扔掉的损失 —— 等于给 $t$ 大的样本更高权重
参数化(ε / x₀ / v) 三种等价写法,选预测 ε 是梯度量级的决定
DDIM 非马尔可夫的采样器。⭐ 不用重训,因为它和 DDPM 的边缘分布一样
η DDIM 的随机性总开关:0 确定性、1 退回 DDPM
Latent Diffusion 把扩散搬进 VAE 的潜空间。Stable Diffusion 名字里的 "Latent"
交叉注意力 条件进入去噪的通道:Q 来自图像、K/V 来自文本
CFG 同一步跑两次(带条件/不带),再外推。s 就是 UI 上的 guidance scale
U-Net U 形去噪主干。跳跃连接是拼接不是相加
DiT 把潜空间切 patch 当 token,用 Transformer 当去噪主干
adaLN-Zero DiT 里那个零初始化的门控 —— 和 ControlNet 是同一个想法
ControlNet 复制一份编码器当可训练支路,零初始化卷积接回主干
FID 两堆特征各当高斯,算 Fréchet 距离。⚠️ 只用了均值和协方差
CLIP Score 图文两个编码器输出的余弦相似度。⚠️ 只测对不对,不测好不好看

🔗 这一页连到哪里

去哪 为什么
00 · 怎么用这份教程 三条读法路线,以及这个板块不讲什么
大模型全景导论 10b · 图像生成 ⭐ 索引版,14 分钟。本板块就是它深挖清单上那条「📕 整块要外找」
机器学习的数学原理 01b · KL 散度 ELBO 的地基 —— 03 章那段推导建在它上面
大模型全景导论 06c · 解码参数怎么调 ⭐ CFG 的 s 和语言模型的 temperature 是同一类旋钮:都在「多听话 vs 多自由」之间取舍
AI基础设施 09 · 显存优化全家桶 潜空间省下来的那笔账,在训练侧还有一整套别的省法
打卡记录保存在你的浏览器里,首页能看到总进度