← 总目录 / 板块四 · 多模态模型的发展
板块四 · 多模态模型的发展

第34篇 · Stable Diffusion(LDM)

把扩散模型搬进潜空间——用一次温和的压缩,换来数量级的算力节省
High-Resolution Image Synthesis with Latent Diffusion Models · Rombach, Blattmann et al., LMU Munich & IWR Heidelberg & Runway ML · 2021 · arXiv:2112.10752

来源声明:本页所有数字均复述自论文原文(arXiv v2),未做外部验证;标注【解读者补充】【解读者观点】的内容不来自论文。原文附录E超参数、附录F算力对照表、附录G自编码器通道数等在抓取中未能完整核验,涉及处已标注。

一、全局大图

摘要拆解对照表(兼导航)

摘要短语对应原文章节本页解读位置
"DM直接在像素空间运行,训练耗数百GPU日、推理昂贵"§1引言(150–1000 V100日;50k样本≈5天/A100)第二章·失效模式
"把扩散模型应用于预训练自编码器的潜空间"§3.1感知压缩 / §3.2 LDM第三章·逐章精读 A/B
"引入cross-attention层,支持文本/边界框等通用条件输入"§3.3条件机制第三章·逐章精读 C
"图像修复与类条件生成新SOTA;文生图、无条件生成、超分高度竞争"§4.2–4.5实验第三章·逐章精读 D / 第四章
"显著降低计算需求"§4.1压缩权衡 / §4.5效率表第四章·第二坐标轴
"局限性与社会影响"§5第四章·批判性阅读

主要贡献与证据强度预评

#论文声称的贡献预评证据强度
1f=4~16的下采样因子是效率-保真的近优点;LDM-1与LDM-8训练2M步后FID差距达38强实验支撑 图6同预算对照实验
2跨注意力条件机制使单一架构支持类条件、文生图、layout-to-image多任务强实验支撑 §4.3多个任务实测
3相比像素扩散,训练资源约省至1/4、推理加速≥2.7倍,质量几乎不降较强,口径分散 §4.2文字声明+表6效率表,无统一对照大表(附录F未能核验)
4CelebA-HQ FID 5.11新SOTA;ImageNet类条件FID 3.60超ADM-G的4.59;修复任务超LaMa强实验支撑 表1/3/7
5"两阶段分离避免重建与先验的艰难权衡"这一设计主张部分支撑 与LSGM对比间接验证,无专门消融
知识依赖主干线:像素扩散的成本痛点(§1)→ 感知压缩 vs 语义压缩的两阶段分解(图2)→ 自编码器与下采样因子f(§3.1,枢纽节点:f的选择决定后面所有实验的格局)→ 潜空间去噪目标LLDM(§3.2)→ cross-attention条件注入(§3.3)→ 五个任务的结果矩阵(§4)。
推荐阅读路线。必读主线:§1 → 图1/图2 → §3.1 → §3.2损失函数 → §3.3 → 表3(ImageNet主战场)→ §5局限。可跳读支线:§2相关工作(读完主线再回看更有味)、§4.4超分与§4.5修复的细节(结论一句话即可)。跳过§3.1的代价:不理解f为何取4/8而非16/32,就看不懂图6那条最重要的曲线。

二、失效模式先行:像素空间扩散有多贵

【论文声称,§1】扩散模型(DM)已是类条件生成和超分的SOTA,且无GAN的模式崩塌与训练不稳定。但代价具体到疼:(1) 训练最强的ADM需要150–1000个V100 GPU日;(2) 推理要串行跑25–1000步去噪,产出50k样本单张A100要约5天。根源:likelihood型模型的mode-covering天性让它们把大量容量花在建模人眼不可察觉的高频细节上——即使DDPM的重加权目标已经 undersample 了前期去噪步,梯度与网络前向仍然要在RGB全维度上计算。

【解读者补充】注意问题的精确形状:不是"扩散模型不好",而是"它在错误的坐标系里干活"——像素空间的绝大部分比特承载的是感知无关信息。这决定了答案的方向:换一个感知等价但低维的空间,而不是改损失函数。

三、逐章精读

A. 两阶段分解与下采样因子f:本文真正的核心决策(原文§3.1、图1/图2、§4.1)

来源:论文§3.1、§4.1。学习目标:学完你能(a)说出KL-reg与VQ-reg的区别;(b)解释为什么f=32会封顶质量而f=1训练缓慢;(c)用图1的三个R-FID数字说明"温和压缩"的依据。

直觉类比:先把JPEG有损压缩一遍,再对压缩文件建模。【类比在哪里失效】JPEG压掉的是编码冗余,人眼不可察但有损;LDM的自编码器学的是"感知等价流形",重建R-FID可以低到0.58——比任何固定压缩器都聪明得多。而且JPEG没有"可被另一个生成模型接手语义"的接口。

公式手术:图像 x∈ℝH×W×3,编码器 ℰ 把它压成 z=ℰ(x)∈ℝh×w×c,下采样因子 f=H/h=W/w,实验取 f=2m

符号它是什么直觉
f空间下采样因子∈{1,2,4,8,16,32}每维缩多少倍;面积缩f²倍
ℰ, 𝒟编码器/解码器,感知损失+patch对抗损失训练只删不可察细节,保住图像流形上的局部真实性
KL-reg.对latent施加轻微KL惩罚拉向标准正态防方差爆炸,类似VAE但不追求生成能力
VQ-reg.解码器内含向量量化层可视为"量化层吸收进解码器的VQGAN"

关键设计点【原文】:因为下游DM用UNet处理二维结构,不需要像VQGAN/DALL-E那样为自回归transformer把z强行摊平成一维序列,所以可以用温和压缩率换取极高保真。图1证据链(512²、DIV2K/ImageNet-val):ours f=4 重建 R-FID=0.58、PSNR 27.4;DALL-E f=8 R-FID=32.01;VQGAN f=16 R-FID=4.98——激进压缩的代价一目了然。

手算验证(§4.1图6):同样在单张A100、同样参数量、训2M步做ImageNet类条件生成:像素级LDM-1与LDM-8之间FID差38分。同时LDM-32因压缩过度质量早早封顶。结论:f∈{4,8}是效率与保真的甜点区。为什么?f小→留太多感知压缩给扩散模型→回到老问题;f太大→第一阶段信息已丢→上限被锁死。

工程账单:两阶段缓解了算力压力,新增了"误差天花板"——解码器重建不到的细节永远出不来(§5作者自己承认超分可能已受限于此);另外埋了一笔债:latent空间的尺度(信噪比)会影响高分辨率外推,逼出附录D.1的重新缩放补丁。

常见误读①:"Stable Diffusion里的VAE就是普通VAE"。错——KL惩罚很轻,目的是规整潜空间而非让它本身能采样;生成全靠第二个模型。
常见误读②:"潜空间越小越好"。LDM-32的反例说明过度压缩锁死上限。
常见误读③:"自编码器和扩散模型联合训练"。原文明确分开:先训好冻结,且强调这正是相对LSGM(联合训练)的优势——不必在重建与先验间做艰难加权(贡献iii)。

一句话记住本节:f不是超参数而是战略决策——4到8倍下采样恰好切走"不可察细节",把昂贵的算力留给语义。

闭卷自检:我能说出三种下采样因子的失败模式吗?两种正则化的名字和区别?

B. 潜空间扩散目标:一行公式的迁移(原文§3.2)

来源:论文§3.2。学习目标:学完你能写出L_LDM并与像素版DDPM目标逐项对比,指出唯一改动在哪里。

LLDM = 𝔼ℰ(x), ε∼𝒩(0,1), t [ ‖ε − εθ(zt, t)‖²₂ ],t 从 {1,…,T} 均匀采样
符号它是什么直觉
ztlatent z 的第t步加噪版本(前向过程固定)训练时无需跑完整前向链,闭式可得
εθ时间条件UNet去噪器预测加进去的噪声
ℰ(x)干净latent(自编码器冻结)与像素版唯一的替换点:x₀→z₀

维度流(256²输入、f=8):x:[256,256,3] → ℰ → z:[32,32,4],元素量比 256×256×3 : 32×32×4 = 196608 : 4096 = 48:1。UNet每次前向的计算量随空间分辨率近似平方下降,这就是一切效率收益的来源。【解读者补充:48:1只是元素数之比,实际FLOPs收益还取决于UNet各层配置,不能直接当加速比用。】

数字对账:论文称LSUN-Bedrooms上LDM以ADM一半的参数量、1/4的训练资源取得接近成绩(2.95 vs ADM 1.90,§4.2)。表6另给出修复任务中像素版LDM-1训练吞吐0.11样本/秒、LDM-4为0.32–0.35样本/秒——约3倍,与正文宣称的"至少2.7×加速"一致,自洽。

一句话记住本节:DDPM公式原封不动,只把x换成z——一行代码的改动,一个数量级的账单变化。

闭卷自检:f=8时256²图像的latent形状是什么?元素压缩比是多少?

C. Cross-attention条件机制:让扩散模型听懂任意模态(原文§3.3)

来源:论文§3.3。学习目标:学完你能画出Q/K/V各自的来源与张量形状,并解释为什么这个设计让"一套UNet吃所有条件"成为可能。

失效模式先行:此前的条件扩散要么只有类别标签(ADM)、要么拼接模糊输入图(SR3),文本、语义布局等模态"远未被探索"。逐模态设计专用架构不可扩展。

Attention(Q,K,V)=softmax(QKT/√d)·V
Q=WQ(i)·φi(zt) K=WK(i)·τθ(y) V=WV(i)·τθ(y)
符号它是什么直觉
φi(zt) ∈ ℝN×d_εUNet中间层特征展平(N个空间位置)Query方:"图像这边在问"
τθ(y) ∈ ℝM×d_τ领域专用编码器输出(如BERT分词+transformer)Key/Value方:"条件那边在答"
y任意条件:文本prompt/类别/layout…换模态只需换τ_θ,UNet不动

直觉类比:每个空间位置举着问题向条件序列"查字典";文本的每个token是一个词条,attention权重是检索相关度。【类比在哪里失效】字典检索是一次性静态查询;这里是每个去噪步、每一层都动态重查,且K/V投影矩阵随训练共同演化。

训练目标(式3):L_LDM = 𝔼[‖ε − εθ(zt, t, τθ(y))‖²₂],τθ与εθ联合优化。

实证回报:文生图模型1.45B参数(KL-reg LDM-8,LAION-400M上训练),MS-COCO零样本文生图FID 23.31;开classifier-free guidance(s=1.5)后降至12.63、IS 30.29——与GLIDE(12.24,6B参数)、Make-A-Scene(11.84,4B)同档而参数少一个数量级(表2)。类条件ImageNet上LDM-4-G达FID 3.60超ADM-G的4.59,参数400M对608M(表3)。

常见误读:"cross-attention只在UNet最高分辨率层"。原文说映射到中间层(intermediate layers),big版修复模型在特征层级的三层放了attention(§4.5)。

一句话记住本节:条件信息从"拼在输入上"升级为"每层随时查阅"——这是LDM从玩具走向文生图引擎的关键一步。

闭卷自检:Q来自哪里?τ_θ(y)的形状含义?换一种条件模态要重训什么?

D. 结果矩阵速读(原文§4.2–4.5)

来源:论文§4.2–4.5各表。学习目标:能用一张表复述四个任务的胜负格局,并说出两个"输"的场景。

任务代表结果主要对手与对比
无条件生成CelebA-HQ FID 5.11(新SOTA);FFHQ 4.98;LSUN-Churches 4.02胜LSGM/UDM等likelihood系;Precision/Recall普遍优于GAN
无条件生成(败仗)LSUN-Bedrooms 2.95ADM 1.90、ProjectedGAN 1.52仍更好——但ADM参数翻倍、资源4倍
文生图MS-COCO FID 12.63(cfg s=1.5)追平GLIDE/Make-A-Scene,参数1.45B vs 6B/4B
类条件ImageNetFID 3.60(cfg s=1.5)超BigGAN-deep(6.95)、ADM-G(4.59)
×4超分big版FID 2.4 vs SR3 5.2;但PSNR 24.7 < SR3 26.4用户研究中70.6%偏好LDM-SR;回归基线PSNR最高但偏糊
修复(Places 512²)big+微调 FID 9.39(难例)/1.50(全体)超LaMa(12.0/2.21)、CoModGAN;速度≥2.7×于像素版

主张vs事实:"新SOTA(修复、类条件)"【实验支持】;"高质量合成几乎无损"【部分成立——f=4重建R-FID 0.58极低,但§5承认精细像素精度任务可能撞上天花板】;"卷积式外推到兆像素级一致图像"【论文声称,展示于图9,缺定量基准】。

一句话记住本节:五个任务里赢四个半,输的那半个(LSUN-Bedrooms域内FID)恰好用四倍的资源差找回了场子——这篇论文的论证风格是"效果+成本"双轴并进。

四、批判性阅读

4.1 benchmark到底测什么

FID衡量生成分布与真实分布在Inception特征空间的距离,对模式覆盖敏感但对细节伪影不敏感;PSNR/SSIM则奖励模糊的平均图像(论文自己在超分一节引用这一点为LDM的低PSNR辩护,并用用户研究补位)。也就是说:每个指标都在给LDM递刀或递糖——超分赢FID输PSNR,论文选择相信FID+人类偏好;这个取舍合理,但读者应意识到指标组合是被挑选过的。

4.2 比较是否公平

文生图对比中GLIDE/Make-A-Scene的数字转引自他人论文(表2脚注†/*),评测协议细节未必对齐;CogView标了self-ranking拒绝采样而LDM未使用类似技巧,配置不对称处论文未展开。修复对比中LaMa的原测试集不可得,作者在自己划分的测试集上重算其成绩(表7脚注†)——诚实标注了,但毕竟换了考场。类条件对比中LDM-4-G用了classifier-free guidance而ADM行单独列出G版本,算是同台竞技;不过guidance强度s=1.5的选择空间本身就是额外自由度。

4.3 第二坐标轴:成本

这是本文最硬的部分:训练吞吐3倍于像素版(表6)、LSUN-Bedrooms以一半参数+1/4资源接近ADM、推理50k样本不再需要5天。但要注意:"vs像素扩散"的巨大优势不等于"vs GAN"的优势——§5第一句就承认串行采样仍慢于GAN的单次前向。

4.4 论文没有告诉你什么

五、综合考核

5.1 重建因果链

  1. L4仅从"150–1000 V100日"、"50k样本≈5天"、"25–1000步"三个数字出发,推演论文必须解决哪两类问题,并说明为什么解决方案选择了"换空间"而不是"改调度器"。
    参考答案与评分标准要点:三个数字分别指向训练成本、推理吞吐、步数敏感性——前两者是根本问题(算力×维度),第三者已有DDIM等高级采样器部分缓解但仍受制于像素维度。选"换空间"的原因:改调度器只减少步数(乘法的一端),换潜空间直接缩小每次前向的维度(另一端),且两者正交可叠加;此外UNet的卷积归纳偏置天然适配二维latent,允许用温和压缩率避开DALL-E式激进压缩的质量损失。评分:两类问题各2分,"为什么换空间"论证占4分,须提到调度器路线已被尝试且不足。
  2. L3构造反例:设想一个场景,其中LDM的两阶段方案必然劣于像素级扩散。(提示:想想解码器重建误差)
    参考答案任何要求亚latent网格精度的任务都会暴露天花板:例如需要精确恢复高频细纹理/微小文字的超分辨率、医学影像的细微病灶保留、法证级图像复原。f=4自编码器重建虽R-FID仅0.58,但重建误差非零且系统性偏向"平均化",这些误差是扩散阶段无法弥补的信息论损失。评分要点:须指出"信息在ℰ处已丢,𝒟与ε_θ都无法找回"这一因果方向;泛泛说"画质差"不给分。

5.2 数字总对账

  1. L1表6中LDM-1训练吞吐0.11样本/秒@256,LDM-4(VQ,w/o attn)为0.35。加速比是多少?与正文宣称的"至少2.7×"对得上吗?
    标准答案0.35/0.11≈3.18≥2.7,对得上("至少"措辞与最保守的组合一致)。容差:按表中不同列组合计算比值在2.7~3.2间均算对。
  2. L2256²输入、f=8时latent为32×32×4。若改用f=4,latent形状与元素总数各变为多少?相对f=8膨胀几倍?这对扩散阶段的算力意味着什么?
    标准答案64×64×4;元素数16384,是4096的4倍。UNet在空间维上的计算量约随面积增长(attention项甚至平方级),扩散阶段每步成本显著上升——这正是f=8更便宜、但f=4保真更高的权衡来源。解析:面积比=(64/32)²=4。
  3. L2文生图表2:LDM-KL-8-G参数1.45B拿FID 12.63,GLIDE需6B拿12.24。粗略估算LDM的单位参数"性价比"是GLIDE的多少倍(按 参数量×FID 反向计)?
    标准答案GLIDE:6B×12.24≈73.4;LDM:1.45B×12.63≈18.3;比值≈73.4/18.3≈4.0倍。容差±15%。解析:这是粗糙的复合指标,仅用于量级感;严格比较还需训练数据与算力口径。

5.3 设计决策答辩

  1. L4答辩三连:(a)为什么自编码器冻结而不联合训练?(b)为什么用cross-attention而不是简单拼接条件?(c)为什么同时保留KL-reg和VQ-reg两条产品线?
    参考答案与评分标准(a)冻结保证重建保真不被生成目标侵蚀,避免LSGM式的"重建vs先验"艰难加权(贡献iii);且一次训练多处复用(多个DM、其他下游应用)。不这样做:联合训练需精调权重,论文§4.2以击败LSGM佐证。(b)拼接只适合与图像同构的条件(低清图、语义图);文本是变长离散序列,cross-attention让每个空间位置按需检索token,一套UNet通吃多模态。不这样做:每种模态都要专用架构。(c)实验发现VQ-reg latent有时反而带来更好的样本质量(§4开头),尽管其重建略逊于连续版——两条线各有胜场(如LSUN-Churches用KL、多数任务用VQ),保留灵活性。评分:每问理由2分+反事实1分。

5.4 证据审计(回看第一章预评)