一套生成系统,可以从不同部件上减负
上一页改的是条件怎样影响更新。这一页先看另一条路径:像素图经过编码器变成较紧凑的表示,再由解码器还原。杯柄在重建中已经丢掉的细节提醒我们,压缩并不免费。若表示没有保存某个细节,后面的解码器或生成过程可能补出看似合理的内容,却不能仅凭它们恢复原图中未被保留的确切事实。
Latent Diffusion 的关键分工是先学习这种表示,再在紧凑表示中执行反复生成,最后将生成出的表示解码回像素。生成一张新图时可以直接抽取latent噪声,不必先拿真实照片编码;编码真实图是训练表示或图像编辑等情境中的另一条路径。这样把许多次模型计算放在较小的空间中;并不是每一步都完整生成一张高分辨率照片再压回去。整体代价还取决于表示大小、骨干、步数和最后解码,压缩程度也要与任务所需细节权衡。
接着把预测器换成 Transformer。DiT 将表示切成 patch,由 Transformer 处理并学习扩散任务;它回答网络骨干及扩展方式的问题。把图切成patch交给Transformer,也不自动表示按位置先后自回归生成。William Peebles 与 Saining Xie 的 DiT 研究,和“先进入紧凑空间”的决定有关联,却不是同一选择。潜在空间可以搭配别的骨干,Transformer 也可以在其他表示中使用。
“用了 DiT,是不是就不需要逐步去噪?” 不能这样推断。图中换了处理表示的网络,迭代回路仍在。生成多少步、每步调用几次,由采样计划和学到的能力共同决定;网络叫 Transformer 没有自动授予一步跨到终点的能力。
把这一段发展放到同一地图中,就容易看清研究问题怎样接续:DDPM 提供有效的训练与生成路线,DDIM 等方法研究更新与速度,latent 方法调整表示成本,DiT 研究可扩展的骨干。它们不是依次消灭前一种方法,而是在不同部件上作决定,可以在同一系统里组合。
看一个新名字时,可以问四件事:在哪种表示里工作,网络是什么,让它预测什么,如何把预测用于更新。下一页专门改变第三项:面对同一张受损图,到底要求网络回答噪声、干净图,还是变化方向?
同一生成循环,本页改变表示 / 骨干
当前表示 → 模型预测 → 更新规则 → 下一状态 表示 / 骨干
画面怎样推进
第1步
图像经紧凑表示再解码,重建差异先暴露压缩误差。
打开这一停点第2步
反复生成可以发生在紧凑表示中,最后再解码回像素。
打开这一停点第3步
将预测器换为DiT骨干不删除迭代回路;表示、网络与更新次数属于不同选择。
打开这一停点学习材料
与当前画面直接相关
表示缩小与换成Transformer,是同一个改进吗?
如果网格边长缩成1/8,空间位置数会缩成1/64;但通道数、网络与重复次数仍影响成本,不能由这个几何比例直接宣称系统快64倍。潜空间扩散把多次预测放到紧凑表示上,最后解码;压缩器若丢掉杯柄细节,那是生成先验之前已有的重建限制。
DiT改变的是处理当前状态的骨干:把网格切成token,用Transformer组织交互。它可以与紧凑表示合作,却不会自动取消去噪回路,也不表示改为自回归。新文生图可以直接抽latent噪声;编码真实图是训练数据准备、压缩器学习或图像编辑等情境的另一条路径。
接着读:表示、骨干和目标怎样分别选择。
连续阅读
CLS 05 · 扩散:训练、采样与少步生成
按连续正文理解这条方法的训练信号、使用过程与算例;数学与实践在相关问题旁展开。
先看:第5章,从对象和问题开始
阅读与实践
LAB 09 · 学得去噪器与完整采样
固定初始噪声,仅改采样步数;把网络近似误差与数值步进误差分开。
先看:先看保存结果与读图解释
在 Deepnote 阅读与运行LAB 05 · 扩散的条件均值与流积分
先读本册保存结果,再按实现顺序核对一个算例;最后只改一个变量。
先看:先看保存结果与读图解释
在 Deepnote 阅读与运行来源与进一步阅读
Generative Models (part 2)
画出表示、预测器、更新规则和解码器各自的位置,解释计算成本改变在哪一层。
先看:Latent Diffusion与DiT相关页
Scalable Diffusion Models with Transformers
查看Transformer骨干在潜在扩散中的作用,避免把换骨干误读成改成一步生成。
先看:第2节与模型扩展实验
