PixelDiT2: Representation-Grounded Pixel Diffusion Transformers¶
会议: NeurIPS2026
arXiv: 2609.24919
领域: 图像生成
关键词: 像素空间扩散、表示锚定、冻结视觉编码器、空间自适应层归一化、无分类器引导
一句话总结¶
PixelDiT2 在每次像素去噪时重新编码当前噪声图像,以冻结 DINO 的逐块表示和时间步适配器提供空间条件,在不引入自编码器的前提下取得 ImageNet-256 的 FID 1.46(600 epochs)和 ImageNet-512 的 FID 1.48(680 epochs)。
研究背景与动机¶
像素空间生成绕开了自编码器的重建瓶颈,但也失去了潜空间预先组织好的视觉结构。潜空间扩散开始学习去噪之前,编码器已经把语义和部分低层细节整理进较紧凑的坐标系;像素模型则直接面对 RGB,既要学会用什么内部表示理解图像,又要把噪声变成精确的像素。PixelDiT 用不同路径处理语义和细节,JiT 采用干净图像预测降低建模难度,但表示学习与生成仍主要在同一个去噪器内共同完成。
引入 DINO 等预训练视觉模型似乎是自然选择,不过“用预训练表示”有几种不同含义。REPA 用干净图像特征监督去噪器中间层,教师在采样时退出;RAE 在预训练表示空间生成,再通过解码器回到图像;Latent Forcing 同时生成像素流和表示流。本文尝试另一条路:不改变像素空间的生成变量,也不再生成一个额外的表示变量,而是从每一步当前的噪声图像中提取条件。
困难在于,DINO 原本学习的是干净图像,直接编码高噪声输入会发生明显特征漂移。若把所有适配压力推给 DINO,可能破坏预训练先验;若只提供一个全局语义向量,又丢失了逐块位置关系。核心 idea:保留冻结的视觉先验,把噪声水平适配放在时间步条件投影器中,并让逐块表示通过空间 AdaLN 持续参与像素去噪,而不是仅作为训练目标。
方法详解¶
整体框架¶
模型输入是当前 RGB 状态、扩散时间步和类别标签,输出是干净图像估计。主干是单路径、patch 级像素扩散 Transformer,基础配置使用 16×16 patches;它不是把 DINO 特征当作需要生成的潜变量,而是用这些特征调制自己的逐块隐状态。
每次条件去噪评估都把当前噪声图像送进冻结 DINO,再经时间步条件投影器得到表示锚定(representation grounding)token。空间 AdaLN 将这些 token 注入去噪器各块,保留“哪个位置的表示影响哪个位置的生成”这一对应关系。ODE 更新像素状态后,下一次评估必须重新提取表示,不能只在纯噪声起点编码一次。
训练还保留 REPA:另一个冻结教师编码干净图像,给主干中间层提供对齐监督。它与锚定路径的输入、角色及生命周期都不同:REPA 是干净图像上的训练监督,锚定编码器则在条件采样分支中实际运行。CFG 无条件分支使用训练见过的 null-grounding 状态,并绕开锚定编码器和投影器。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
X["当前噪声图像<br/>时间步与类别"] --> G["噪声感知表示锚定<br/>冻结 DINO → 时间步投影器"]
X --> S["空间 AdaLN 注入<br/>像素去噪主干"]
G --> S
T["干净图像 → REPA 教师<br/>仅训练"] -.->|中间层对齐监督| S
S -->|条件预测| N["匹配的空锚定分支<br/>无条件预测与 CFG 合成"]
U["时间步 + 空类别<br/>绕开 DINO 与投影器"] --> N
N --> O["ODE 更新 RGB<br/>下一次评估重新编码"]
关键设计¶
1. 噪声感知表示锚定:保留视觉先验,把噪声适配留在编码器之外
冻结 DINO 接收的不是目标干净图像,而是当前噪声图像。其 patch 网格与主干对齐:256 分辨率时产生 16×16,即 256 个位置;512 分辨率时产生 32×32,即 1024 个位置。不同时间步的输入偏离 DINO 预训练分布的程度不同,因此只加一个不看时间的线性投影,无法针对噪声水平解释同一组特征。
投影器先把 DINO 特征升到主干宽度,再使用一个 DiT 风格 Transformer 块进行自注意力和 MLP 处理,归一化由时间步嵌入通过 AdaLN 调制,最后线性输出锚定 token。它让模型能够学习“此时的编码器输出应怎样用”,而不必把“恢复干净图像视觉表征”这一任务重新塞回冻结编码器。默认 256px 使用 DINOv3-S/16,512px 使用 DINOv3-B/16;投影器始终可训练。
这个适配器不能理解成从纯噪声准确恢复某个目标对象。内部分析比较同一图像在不同噪声水平下的逐块平均余弦相似度:原始编码器特征会明显漂移,而经过投影器的输出与其干净输入输出的相似度保持在 0.77 以上。这里说明的是条件表示较稳定,不是其与真实干净 DINO 特征等价,也不是纯噪声已经包含目标图像的语义。
2. 空间 AdaLN 注入:让表示先验按位置调制生成,而不是压成全局标签
锚定 token 与主干 token 共享 patch 数量和位置,每个位置的条件可逐元素调制对应位置的 Transformer 状态。与把表示直接相加到输入相比,空间 AdaLN 把条件持续送入主干块;与 token 拼接相比,它不用让去噪器自行从另一段 token 序列中找回空间对应关系。论文控制实验支持这种注入方案效果最好,但并未单独证明优势究竟来自归一化、持续注入还是位置结构中的哪一个因素。
主干本身仍直接预测 RGB 图像,没有 DINO 特征解码器,也没有被联合去噪的第二条表示轨迹。REPA 同时对中间表示施加干净图像特征监督:标准配方的 REPA 教师为 DINOv2-B/14,H 模型对齐第 8 个 DiT 块,权重为 0.5。专门研究两种表示路径互补性的实验则统一用 DINOv3-S/16,不能把这组数值与默认模型混成同一训练轨迹。
这一区分也解释了为什么“同时用了 REPA”并不使表示锚定成为 REPA 的改名。前者改变训练信号,后者改变每一次条件推断的计算图;控制实验显示,二者在早期并非总是叠加受益,但在较长训练后可以互补。
3. 匹配的空锚定分支:避免 CFG 无条件分支继续接收类别信息
若只丢弃类别标签,噪声图像的 DINO 表示仍可能带有类别可分的信息,名义上的无条件分支就不是真正的空条件状态。本文额外训练 grounding dropout:跳过冻结编码器与投影器,改为把时间步和空类别嵌入广播为 null-grounding token。采样的 CFG 无条件分支采用同样的构造,因此它不是“没有标签但仍然保留 DINO 条件”的第二次前向。
默认训练从初始化起独立采样类别 dropout 和 grounding dropout,两者概率均为 0.1;独立并不等于两种条件总是同时丢弃。训练中的不同组合让模型见过有标签/无标签、真实锚定/null-grounding 状态。采样时条件分支保留类别和当前图像的锚定条件,无条件分支则使用空类别与 null grounding,再通过 CFG 合成速度预测。
论文还考察延迟启用 grounding dropout:先在保留锚定、使用类别 dropout 的情况下训练,到 epoch 160 再开启独立双 dropout。这是一种先学会利用视觉先验、再学习匹配空条件分支的课程。它改善了 256px 的中期收敛,但不是 600-epoch 主结果的默认配方,也不能仅凭一条延迟轨迹断言所有模型都适用同一切换时点。
一个完整示例¶
以 ImageNet-256 的一个类别条件采样为例,初始 RGB 状态是噪声,基础 patch 网格有 256 个位置。第一次条件评估让 DINOv3-S/16 在这些位置输出特征,时间步投影器据当前噪声水平生成条件;主干同时读取噪声 RGB patches,并被空间 AdaLN 调制,得到干净图像估计。
同一状态还要经过空类别/null-grounding 分支,此次不运行 DINO 与投影器。两次预测在启用引导的时间区间内进行 CFG 合成,随后 Heun 求解器更新 RGB 状态;其预测与校正涉及新的网络评估,锚定特征也随评估输入更新。到较低噪声阶段,DINO 输入逐渐接近它熟悉的自然图像,但整个过程始终没有调用自编码器解码图像。
训练时则从真实图像与噪声构造中间状态,REPA 教师额外读取真实干净图像提供监督。这幅干净图像只存在于训练示例中,不能画成采样阶段给锚定路径的外部参考。
损失函数 / 训练策略¶
采用像素空间 rectified flow,时间方向是从噪声到图像,而非从图像到噪声:
因此 \(t=0\) 为噪声,\(t=1\) 为干净图像。网络输出干净图像估计,但训练误差在速度空间计算:
分母下限避免临近干净端时数值发散;除这一裁剪区域外,它相当于对图像预测误差施加随时间变化的重加权。训练再加入权重 0.5 的 REPA 对齐损失;缓存没有展开其完整数学定义,因此这里不猜写作者的精确 REPA 公式。
时间步取 logit-normal,参数为 \(\mu=-0.8,\sigma=0.8\)。使用 AdamW,学习率 \(2\times10^{-4}\),5 epochs 线性 warmup 后保持常数,batch size 1024,weight decay 0,EMA 0.9999,梯度裁剪 1.0,bf16;附录另列 512px 的 noise scale 为 2.0,而 256px 为 1.0,复现时应保留这一区别。
主干、投影器和 REPA head 在同一个优化器下从头训练,教师编码器保持冻结。采样使用 Heun-50;默认 256px 的 600-epoch 最优 FID 配置为 CFG scale 2.4、区间 \([0.125,0.9]\),不同模型与 checkpoint 各自扫描引导设置。
实验关键数据¶
主实验¶
下表选取原文表 2、3、14 的代表结果,FID 越低越好,IS 越高越好。不同方法的结构、预训练资产和 epoch 预算并不相同,这不是等 FLOPs 或等墙钟时间比较。
| 分辨率 | 方法 | Epochs | 参数量 M | FID | IS |
|---|---|---|---|---|---|
| 256 | PixelDiT-XL | 320 | 797 | 1.61 | 292.7 |
| 256 | PixelDiT-XL | 800 | 797 | 1.54 | 297.0 |
| 256 | JiT-G/16 | 600 | 2000 | 1.82 | 292.6 |
| 256 | SiD2 | 1280 | 未报告 | 1.38 | 未报告 |
| 256 | RAE-XL(潜空间) | 800 | 839 | 1.13 | 262.6 |
| 256 | PixelDiT2-H/16 | 600 | 1008 | 1.46 | 301.6 |
| 256 | PixelDiT2-H/16(延迟 dropout) | 480 | 1008 | 1.48 | 299.1 |
| 512 | PixelDiT-XL | 850 | 797 | 1.81 | 278.6 |
| 512 | JiT-G/16 | 600 | 2000 | 1.78 | 306.8 |
| 512 | RAE-XL(潜空间) | 400 | 839 | 1.13 | 259.6 |
| 512 | PixelDiT2-H/16 | 680 | 1074 | 1.48 | 295.7 |
PixelDiT2 在 512px 的表内像素方法中 FID 最低,但 256px 的 SiD2 为 1.38,仍优于本文 1.46;不能把结果概括为所有像素扩散方法的统一最佳。512px 在 epoch 200 达到 1.78,已低于 PixelDiT 的 850-epoch 结果 1.81,4.25 倍指 epoch 预算比,不是实际训练加速倍数。
本文参数量包括采样时运行的冻结锚定编码器,排除仅训练使用的 REPA 教师。附录表 10 列 H 模型 256px/512px 的计算量为 568/2438 GFLOPs;这些前向计算量不能直接当作完整 Heun-50、CFG 采样成本。
消融实验¶
先看原文表 4 的双路径控制实验:主干相同,两条活动路径的编码器都固定为 DINOv3-S/16。它用于判断训练监督与推断条件是否互补,而非复述默认 DINOv2 REPA 配方的成绩。
| 配置 | FID@200 | FID@320 | FID@400 | FID@480 |
|---|---|---|---|---|
| 裸主干 | 2.53 | 2.30 | 2.13 | 2.19 |
| 仅 REPA | 1.89 | 1.75 | 1.71 | 1.73 |
| 仅表示锚定 | 2.28 | 2.08 | 1.95 | 1.83 |
| REPA + 表示锚定 | 1.90 | 1.70 | 1.63 | 1.59 |
组合在 epoch 200 的 1.90 略差于仅 REPA 的 1.89,从 epoch 320 起才持续占优。epoch 480 时,相比仅 REPA 降低 FID 0.14,相比仅锚定降低 0.24;这支持互补性,但不能说锚定替代了对齐监督。
下面集中展示原文表 5、7、8 的机制诊断。前两组为 H/16、256px、600 epochs;投影器组为 B/16、200 epochs、143M 可训练参数,组间绝不能横向比较 FID 高低。
| 诊断组 | 配置 | FID | 实验边界 |
|---|---|---|---|
| 注入方式 | 空间 AdaLN | 1.462 | H/16,600 epochs |
| 注入方式 | 输入相加 | 1.521 | 同上 |
| 注入方式 | layer 0 token 拼接 | 1.621 | 同上 |
| 注入方式 | layer 8 token 拼接 | 1.603 | 同上 |
| 编码器适配 | 冻结编码器 | 1.462 | H/16,600 epochs |
| 编码器适配 | 联合训练时间步 adapter | 1.623 | 同上 |
| 编码器适配 | 两阶段时间步 adapter | 1.581 | 同上 |
| 编码器适配 | 联合训练首个 DINO block | 1.620 | 同上 |
| 编码器适配 | 两阶段首个 DINO block | 1.625 | 同上 |
| 投影器 | 线性投影,主干 13 层 | 6.79 | B/16,200 epochs,143M |
| 投影器 | 时间步 DiT 块,主干 12 层 | 5.29 | 同上 |
关键发现¶
- 适配位置比“是否额外加参数”更关键:参数匹配的投影器实验仍有 1.50 FID 差距;把同样预算放进主干,不能代替对噪声特征的显式处理。
- 更大的编码器并不总是更好:256px、600 epochs 下,DINOv3-S/B/L 的 FID 分别为 1.462/1.547/1.552。512px 的 L 编码器在 epoch 200 优于 B(1.71 vs 1.78),但 epoch 600 落后(1.54 vs 1.52),因此不能推出跨分辨率的“小模型总优”规则。
- 延迟 dropout 到 epoch 160 后,256px 在 epochs 200/320/480 达到 1.66/1.50/1.48;保留锚定的对照为 1.75/1.59/1.54。这是课程与空条件匹配共同作用的证据,不是单独隔离某个正则化机制。
- Heun-50 与 Euler-100 在不计共同 CFG 因子的 NFE=100 下分别为 FID 1.50/1.54;低预算 NFE=50 时 Heun-25/Euler-50 为 1.76/1.72。更高阶求解器并非在所有预算下更好。
- 原文数值存在小冲突:延迟 dropout、epoch 320 的 IS 在表 14 为 292.4,而附录 B.4 的 Heun-50 描述为 292.2;未自行合并修正。附录 C 的编码器规模实验实际为表 15,正文有误引表 16;按表内容识别。
亮点与洞察¶
- 视觉先验不一定要变成生成空间。冻结编码器可以只当作当前像素状态的观察器,让生成变量保持 RGB,同时在推断时持续提供结构条件。
- 噪声适配可以从基础模型中移出。显式时间步让轻量投影器知道当前表示有多不可靠,既保持先验,又避免把高噪声分布直接写进 DINO 参数。
- CFG 的“无条件”需要检查所有旁路。删掉标签不代表删掉信息,空间表示条件同样需要匹配的空状态;这对具有额外视觉条件的其他扩散架构也有启发。
局限与展望¶
- 作者承认仍未追平最强潜空间基线,并且采样增加了冻结编码器开销。减少 epochs 不能证明端到端训练成本或推断延迟更低。
- 实证范围是 ImageNet 类别条件生成;文本到图像只是未来方向,没有展示复杂语言条件、组合概念或开放域生成结果。
- 稳定的投影输出不是语义正确性的直接证明,干净输入线性探针也不是完整生成解释。对纯噪声阶段的条件作用仍可用更细致的空间干预实验验证。
- 延迟 dropout 只展示有限课程设置,较大编码器的收益也随分辨率和训练阶段变化。可进一步测试自适应切换课程、投影器容量与编码器调用频率,而不预设统一最优配方。
相关工作与启发¶
- vs REPA:REPA 用干净特征作训练目标,采样不运行教师;本文从当前噪声输入实时产生条件,并仍保留 REPA。两者分别改善训练监督与去噪计算,控制实验支持后期互补。
- vs RAE:RAE 在预训练特征空间扩散并用解码器生成图像;本文不生成特征潜变量、不使用图像解码器,但要在采样中反复支付编码器成本。
- vs Latent Forcing:Latent Forcing 联合生成像素与空间表示,本文只推进像素轨迹。附录在相同 nominal 200-epoch H/16 预算下报告 FID 1.822 vs 2.287,但 Latent Forcing 的 IS 更高,且各自进行了引导扫描。
- vs PixelDiT / JiT:继承大 patch、干净图像预测等像素建模基础,把原本必须内部学得的表示部分外接为冻结先验。研究重点是改变表示的使用方式,而非证明像素空间天然胜过潜空间。
评分¶
- 新颖性: 4/5 — 将冻结表示变为逐步、逐块的推断条件,区别于仅训练对齐与联合表示生成。
- 实验充分度: 4/5 — 两种分辨率、双路径控制、参数匹配与编码器适配实验较完整,但缺少墙钟成本与开放域验证。
- 写作质量: 4/5 — 对方法边界与因果解释较克制,附录交叉引用及少量 IS 数值仍有不一致。
- 价值: 4/5 — 为无需自编码器的像素生成提供可复用设计,但视觉先验运行开销仍是现实约束。