PixelGen:像素扩散通过感知监督击败潜在扩散 PixelGen: Pixel Diffusion Beats Latent Diffusion with Perceptual Loss
在x-prediction上叠加LPIPS+P-DINO感知损失,像素扩散首次超越潜在扩散
前置知识
扩散模型(Diffusion Models)
扩散模型是一类生成模型,通过逐步向数据添加高斯噪声将数据分布转化为噪声分布(前向过程),然后学习逆向去噪过程来生成新样本。在每一步去噪中,模型接收带噪图像 $x_t$ 和时间步 $t$,预测某种目标(噪声 $\epsilon$、速度 $v$ 或干净图像 $x$)。采样时从纯高斯噪声出发,经过多步迭代去噪生成最终图像。扩散模型在图像生成中取得了巨大成功,但核心挑战在于如何在高维空间中高效学习复杂的去噪映射。
PixelGen 本身就是基于扩散模型框架的改进,理解前向加噪、反向去噪、以及不同的预测目标(v-prediction vs x-prediction)是理解全文的基础。
潜在扩散 vs 像素扩散(Latent vs Pixel Diffusion)
潜在扩散模型(如 Stable Diffusion)先用 VAE 将图像压缩到低维潜在空间,再在该空间中进行扩散和去噪。这种两阶段设计降低了计算成本,但 VAE 会引入重建伪影和表征瓶颈——VAE 的重建质量限制了生成质量的上界。像素扩散则直接在原始像素空间端到端建模,避免了 VAE 的瓶颈,但由于像素空间维度极高(如 $256 \times 256 \times 3$),优化难度远大于潜在空间。PixelGen 的目标就是缩小两种范式的性能差距。
理解两种范式的优劣对比是理解本文 motivation 的核心:为什么要在像素空间做扩散,以及为什么之前像素扩散性能落后。
x-prediction 与 JiT
传统扩散模型使用 $\epsilon$-prediction(预测噪声)或 $v$-prediction(预测速度)。JiT 提出了 x-prediction,让模型直接预测干净图像 $x$ 而非速度 $v$ 或噪声 $\epsilon$。具体地,给定带噪图像 $x_t = t x + (1-t)\epsilon$,模型直接输出 $x_\theta = \text{net}_\theta(x_t, t, c)$。由于预测目标直接落在图像流形上,x-prediction 大幅简化了优化过程,但仍需通过速度转换 $v_\theta = (x_\theta - x_t)/(1-t)$ 来保留 flow matching 的采样优势。
x-prediction 是 PixelGen 的技术基础——正是因为预测目标是干净图像,感知编码器(LPIPS、DINO)才能直接作用于预测结果,这是感知监督得以实施的前提。
LPIPS 感知损失
LPIPS(Learned Perceptual Image Patch Similarity)是一种基于深度特征的感知相似度度量。它将两张图像输入冻结的预训练 VGG 网络,提取多层特征激活,然后用学习到的逐层权重 $w_l$ 计算加权距离:$\mathcal{L}_{\text{LPIPS}} = \sum_l w_l \odot \|f_{\text{VGG}}(x_\theta)_l - f_{\text{VGG}}(x)_l\|_2^2$。与逐像素 MSE 不同,LPIPS 衡量的是人类感知层面的相似度,能更好地捕捉局部纹理和细节质量。它在超分辨率、图像重建等领域广泛使用。
LPIPS 是 PixelGen 的两个核心感知损失之一,用于提升生成图像的局部纹理清晰度。理解其工作原理才能理解论文中从 FID 23.67 降到 10.00 的巨大提升来源。
DINOv2 自监督视觉编码器
DINOv2 是 Meta 提出的自监督视觉 Transformer 编码器,通过自蒸馏训练,在大规模数据上学习到强大的视觉表征。其最后一层特征具有出色的语义对齐能力——相同语义类别的图像在特征空间中聚集,不同类别清晰分离。DINOv2-B(Base 规模,约 86M 参数)的 patch-level 特征 $f_{\text{DINO}}(x)_p$ 可以直接用于语义级别的对齐。在扩散模型领域,REPA 已经证明了将中间层特征与 DINOv2 对齐可以加速训练收敛。
PixelGen 的 P-DINO 损失使用 DINOv2-B 的最后一层特征进行全局语义对齐,这是提升生成图像全局结构和语义一致性的关键技术手段。
FID(Fréchet Inception Distance)
FID 是评估生成图像质量的标准指标。它通过 Inception-v3 网络提取生成图像和真实图像的特征分布,然后计算两个高斯分布之间的 Fréchet 距离。FID 越低表示生成分布与真实分布越接近,数值在 5 以下通常被认为是非常高质量的生成。FID 同时衡量保真度(生成图像的真实性)和多样性(生成样本的覆盖度),是图像生成领域最重要的单一评价指标。
论文中所有核心实验结果都以 FID 为主要指标报告,理解 FID 才能正确解读'PixelGen 在 ImageNet 上达到 FID 5.11'意味着什么水平的生成质量。
研究动机
像素扩散模型直接在原始像素空间生成图像,避免了潜在扩散中 VAE 引入的伪影和表征瓶颈,但长期以来其性能显著落后于潜在扩散。这种性能差距源于两个关键瓶颈。首先是预测目标的问题:传统 $\epsilon$-prediction 和 $v$-prediction 的目标不直接落在图像流形上,优化困难。JiT 通过 x-prediction 部分解决了这个问题,但仍然存在明显差距——在 ImageNet 256 上不使用 CFG 时,JiT 的 FID 为 23.67,而潜在扩散基线 REPA 为 16.14。其次是训练目标的根本缺陷:标准逐像素损失对所有像素一视同仁,模型容量大量浪费在感知上不重要的信号(如传感器噪声、不可察觉的微小细节)上,而对视觉质量起决定性作用的结构和纹理却得不到足够强调。这导致生成样本仍然模糊,径向功率谱分析显示生成图像在所有频率带上都与真实图像存在明显差距。
本文的目标是本文的具体目标是提出一种简单有效的端到端像素扩散训练框架,通过在 x-prediction 基础上叠加感知监督来缩小像素扩散与潜在扩散之间的性能差距。具体而言,作者希望实现三个子目标:第一,在不使用 CFG 的条件下,让像素扩散在 ImageNet 256×256 上达到甚至超越潜在扩散基线的 FID 指标;第二,将该框架扩展到文生图任务,验证其在条件生成场景下的可扩展性;第三,保持像素扩散'单阶段、无 VAE'的核心优势——不需要额外的潜在空间编码器、不需要两阶段训练流程。
与已有工作不同的是,本文的独特切入角度在于'感知监督对像素预测目标的适配性'。之前在潜在扩散中,LPL 等方法已经探索过感知损失,但在像素扩散中面临一个本质区别:在高噪声时间步,x-prediction 的预测结果仍然模糊且远离干净图像,此时强制与干净图像的特征对齐会过度约束早期去噪过程,导致样本多样性下降(recall 降低)。PixelGen 的关键洞察是:感知监督只应在低噪声时间步(预测结果足够接近干净图像时)启用。这种'噪声门控'策略是针对像素扩散场景的独特设计,因为潜在扩散中的预测目标在潜在空间而非图像空间,噪声分布特性完全不同。此外,本文首次系统性地展示了局部感知(LPIPS)和全局语义(DINOv2)监督的互补性——LPIPS 擅长提升纹理细节,P-DINO 负责全局语义一致性,两者结合产生协同效应。
核心方法
PixelGen 的整体思路可以用一个直觉来理解:标准逐像素损失像一个'一视同仁的老师',要求模型在每个像素上都做到精确匹配;而感知监督像一个'有审美品味的老师',只关注图像中感知上重要的部分——纹理是否锐利、物体语义是否正确、全局结构是否连贯。技术路线上,PixelGen 在 JiT 的 x-prediction + flow matching 框架基础上,叠加两个互补的感知损失:LPIPS 提供局部纹理监督,P-DINO 提供全局语义监督。同时引入噪声门控策略,在高噪声时间步禁用感知损失以保护样本多样性。最终训练目标为四个损失的加权和:$\mathcal{L} = \mathcal{L}_{\text{FM}} + \lambda_1 g(t) \mathcal{L}_{\text{LPIPS}} + \lambda_2 g(t) \mathcal{L}_{\text{P-DINO}} + \mathcal{L}_{\text{REPA}}$,其中 $g(t)$ 是噪声门控函数。整个框架不需要 VAE,不需要两阶段训练,保持了像素扩散端到端的简洁性。
PixelGen 的核心创新在于三个耦合设计。第一,将 LPIPS 损失直接应用于 x-prediction 的预测图像 $x_\theta$。由于 x-prediction 的目标就是干净图像,$x_\theta$ 自然成为感知编码器的有效输入——这在 $\epsilon$-prediction 或 $v$-prediction 中是不可行的,因为预测的噪声或速度没有视觉意义。第二,引入 P-DINO 损失,使用冻结的 DINOv2-B 编码器提取 patch-level 特征,通过余弦相似度对齐预测图像和真实图像的全局语义表征:$\mathcal{L}_{\text{P-DINO}} = \frac{1}{|P|} \sum_{p \in P} \left[1 - \cos\left(f_{\text{DINO}}(x_\theta)_p, f_{\text{DINO}}(x)_p\right)\right]$。第三,也是最具新颖性的设计——噪声门控策略:$g(t) = \mathbf{1}[t \geq \tau]$,其中 $\tau = 0.3$,即在前 30% 的高噪声时间步禁用感知损失,仅在后 70% 的低噪声时间步启用。这与潜在扩散中的经验不同——LPL 发现在所有时间步应用感知损失对 recall 影响不大,而像素扩散中高噪声感知损失会显著损害 recall。
方法步骤详情
PixelGen 的训练流程分为以下几步。第一步,前向加噪:给定干净图像 $x$ 和高斯噪声 $\epsilon \sim \mathcal{N}(0, I)$,按线性插值构造带噪图像 $x_t = t x + (1-t)\epsilon$,其中 $t \in [0, 1]$。第二步,x-prediction:扩散 Transformer 接收 $(x_t, t, c)$ 作为输入,输出预测的干净图像 $x_\theta = \text{net}_\theta(x_t, t, c)$。第三步,速度转换:将预测图像转换为速度 $v_\theta = (x_\theta - x_t)/(1-t)$,计算 flow matching 损失 $\mathcal{L}_{\text{FM}} = \mathbb{E}_{t,x,\epsilon} \|v_\theta - v\|^2 = \mathbb{E}_{t,x,\epsilon} \left\|\frac{x_\theta - x}{1-t}\right\|^2$。第四步,感知监督(仅在 $t \geq 0.3$ 时执行):将 $x_\theta$ 和 $x$ 分别输入冻结的 VGG 网络计算 LPIPS 损失,以及冻结的 DINOv2-B 编码器计算 P-DINO 损失。第五步,REPA 对齐:将 DiT 中间层特征与 DINOv2 特征对齐,计算 $\mathcal{L}_{\text{REPA}}$。第六步,加权求和得到总损失并反向传播更新网络参数。推理时使用 50 步 Euler 或 Heun 采样器从纯噪声生成图像。
技术新颖性
PixelGen 的技术新颖性体现在多个层面。首先,它是首个将感知损失系统性地集成到像素扩散 x-prediction 框架中的工作。之前潜在扩散的 VAE 本身就使用 LPIPS 和 GAN 损失训练,但这是在编码器-解码器层面;而 PixelGen 将感知监督直接施加于扩散模型的预测输出,是一种全新的监督范式。其次,噪声门控策略 $g(t) = \mathbf{1}[t \geq \tau]$ 是针对像素空间扩散的独特设计。通过附录中的梯度分析,作者发现高噪声时间步的感知梯度相对于 flow matching 梯度过大,会过度约束去噪过程。这种'分阶段监督'的思想在扩散模型训练中具有启发性。第三,LPIPS 和 P-DINO 的互补性分析揭示了一个重要规律:局部感知监督(LPIPS)负责纹理细节,全局语义监督(P-DINO)负责物体结构和场景布局,两者协同才能将生成分布拉近真实分布——这一发现可推广到其他生成模型的训练中。
实验结果
PixelGen 在多个实验设置下展示了令人信服的结果。在 ImageNet 256×256 的 200K 步无 CFG 基础比较中,PixelGen-L/16 的 FID 从 JiT 基线的 23.67 大幅降至 7.53,同时 IS 从 64.1 提升至 131.7,precision 从 0.55 提升至 0.72。这一结果甚至优于潜在扩散基线 DDT-L/2 的 FID 10.00 和 REPA-L/2 的 16.14。值得注意的是,感知监督的额外开销极小——每步训练时间仅从 0.19s 增至 0.20s,显存从 29.5GB 增至 33.9GB,推理成本完全不变(0.32 s/image),而潜在扩散需要额外的 VAE 编解码(0.43 s/image)。在 80 epoch 的无 CFG 大规模实验中,PixelGen-XL/16 达到 FID 5.11,仅用 80 个 epoch 就超越了 REPA-XL/2 的 5.90(800 epoch)和 DDT-XL/2 的 6.27(400 epoch),训练效率提升约 10 倍。在有 CFG 的实验中,PixelGen-XL/16 用 160 epoch 达到 FID 1.83,虽略逊于 REPA-XL/2 的 1.42(800 epoch),但已大幅超越所有之前的像素扩散方法。在文生图任务上,PixelGen-XXL 在 GenEval 基准上达到 0.79 的总分,与 FLUX.1-dev(12B 参数,0.67)和 OmniGen2(4B 参数,0.80)相当,且仅用 6 天在 8×H800 GPU 上从头训练完成。消融实验进一步验证了每个组件的贡献:LPIPS 将 FID 从 23.67 降至 10.00,P-DINO 再降至 7.46,噪声门控在几乎不损失 FID 的情况下将 recall 从 0.58 恢复到 0.60。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| ImageNet 256×256(无CFG,200K步) | FID↓ | 7.53(PixelGen-L/16) | 23.67(JiT-L/16 基线) | 降低 68.2%(-16.14) |
| ImageNet 256×256(无CFG,200K步) | FID↓ | 7.53(PixelGen-L/16) | 10.00(DDT-L/2,潜在扩散) | 降低 24.7%(-2.47) |
| ImageNet 256×256(无CFG,80 epoch) | FID↓ | 5.11(PixelGen-XL/16) | 5.90(REPA-XL/2,800 epoch) | 降低 13.4%(-0.79),训练量仅 1/10 |
| ImageNet 256×256(有CFG,160 epoch) | FID↓ | 1.83(PixelGen-XL/16) | 1.86(JiT-H/16,600 epoch) | 降低 1.6%(-0.03),训练量仅 1/3.75 |
| 文生图(GenEval,512×512) | Overall Score↑ | 0.79(PixelGen-XXL/16,1.1B 参数) | 0.73(PixNerd-XXL/16,1.2B 参数) | +0.06(+8.2%) |
| 推理效率(ImageNet 256×256) | s/image | 0.32(PixelGen,无需VAE) | 0.43(DiT-L/2,需要VAE) | 快 25.6% |
局限与改进
论文承认了几个关键局限性。首先,在有 CFG 的设置下,PixelGen 仍略逊于最强的潜在扩散基线 REPA-XL/2(FID 1.83 vs 1.42)。作者分析认为这是因为 CFG 和感知损失在样本覆盖度上方向一致——CFG 通过将采样推向高密度区域来提升 precision 但降低 recall,而感知损失也倾向于减少 recall,两者叠加导致多样性进一步下降。其次,PixelGen 依赖预训练的感知编码器(VGG 用于 LPIPS,DINOv2-B 用于 P-DINO),这些编码器的冻结参数增加了显存占用(从 29.5GB 增至 33.9GB),且感知损失的质量上限受限于这些编码器的表征能力。第三,噪声门控阈值 $\tau = 0.3$ 是通过实验选定的,在不同数据集或分辨率上可能需要重新调参。第四,文生图实验的训练数据和规模与 FLUX.1-dev 等商业系统差异较大,公平比较有限。从更广泛的角度看,论文的实验主要集中在类条件生成(ImageNet)和文生图(GenEval),尚未在更多样化的生成任务(如图像编辑、超分辨率、可控生成)上验证。
独立分析的弱点
PixelGen 存在几个值得关注的弱点。第一,CFG 与感知损失的冲突问题未被解决:如论文表 3 所示,CFG 下 PixelGen 的 recall 为 0.63,而 REPA 为 0.64,感知损失的'推力'和 CFG 的'推力'在覆盖度维度上同向叠加,导致多样性的进一步损失。改进方向可以是设计自适应的 CFG 策略,或在 CFG 推理时动态调整感知损失的影响。第二,感知编码器的冻结策略可能不是最优的:VGG 和 DINOv2 都是在自然图像上预训练的,对于特定领域(如医学图像、遥感图像)的生成任务,其特征空间可能不够适配。一种改进方向是让感知编码器参与端到端微调,或引入领域特定的感知损失。第三,噪声门控是硬阈值($\mathbf{1}[t \geq \tau]$),在阈值边界处存在不连续性,可能引入训练不稳定。改为平滑的 sigmoid 门控 $g(t) = \sigma(k(t - \tau))$ 可能更优。第四,P-DINO 仅使用了 DINOv2 最后一层特征,消融实验表明多层特征反而有害,但这可能是因为简单的多层拼接引入了冲突——更精细的多尺度融合策略可能释放更大潜力。
未来方向
论文作者提出了几个明确的未来方向。首先是设计更适合像素空间的采样器和 CFG 策略,特别是针对感知监督优化过的模型,当前使用的标准 Euler/Heun 采样器并非最优。其次是引入更丰富的感知目标,如对抗损失——作者指出对抗损失在潜在扩散中已被广泛使用,但在像素扩散中因优化不稳定而被回避,如果能解决稳定性问题,可能进一步提升生成质量。第三是探索自监督感知编码器的最新进展,如 SigLIP、CLIP 等多模态编码器,可能提供比 DINOv2 更适合文生图任务的语义监督信号。从更广泛的角度,PixelGen 的'分阶段感知监督'思想可以推广到视频扩散、3D 生成等领域——在这些高维生成任务中,不同噪声水平下应用不同类型的监督可能同样有效。此外,将 PixelGen 与蒸馏技术结合实现少步或单步像素扩散生成,也是一个有价值的方向。
复现评估
PixelGen 在复现方面具有较好的条件。代码已在 GitHub 开源(https://github.com/Zehong-Ma/PixelGen),这是最重要的复现保障。在数据方面,ImageNet-256 是公开基准,文生图实验使用了 BLIP3o 数据集的 36M 预训练图像和 60K 指令微调样本。在算力方面,基础实验(ImageNet 256,200K 步)在 8×H800 GPU 上约需 11 小时,文生图全量训练需 6 天,这对学术实验室可行但对个人开发者仍有门槛。复现难度适中:框架本身简单(在 JiT 基础上叠加两个损失函数和一个门控策略),但需要注意几个细节——LPIPS 的 VGG 权重初始化、DINOv2-B 编码器的版本(论文使用最后第 12 层特征)、以及 REPA 损失与感知损失的兼容性设置。消融实验表 5 提供了详细的超参数选择($\lambda_1 = 0.1$,$\lambda_2 = 0.01$,$\tau = 0.3$),降低了调参难度。
论文图表