论文粗读系列-10
SCP-Diff: Photo-Realistic Semantic Image Synthesis with Spatial-Categorical Joint Prior
1.简介
arxiv [Submitted on 14 Mar 2024]
链接:[2403.08632] A Decade’s Battle on Dataset Bias: Are We There Yet? (arxiv.org)
语义图像合成(SIS)在传感器仿真中具有良好的应用前景。然而,目前基于gan的这一领域的最佳实践尚未达到期望的质量水平。由于潜在扩散模型在图像生成方面取得了重大进展,作者被提示评估ControlNet,这是一种具有密集控制能力的显着方法。作者的调查发现了其结果的两个主要问题:在大语义区域中存在奇怪的子结构,以及内容与语义掩码的不对齐。通过实证研究,作者确定了这些问题的原因是在推理阶段应用的带噪训练数据分布与标准正态先验不匹配。为了应对这一挑战,作者为SIS开发了特定的噪声先验,包括空间先验、分类先验和用于推理的创新空间-分类联合先验。作者将这种方法命名为SCP-Diff,它产生了非凡的结果,在cityscape上实现了10.53的FID,在ADE20K上实现了12.66的FID。
2.方法
- 为什么大规模预训练的潜在扩散模型在微调后难以完成语义图像合成任务?
作者的实证分析表明,生成的结果与实际图像之间质量差异的主要来源不是分数匹配学习(即微调)过程。相反,它源于训练过程中使用的噪声数据分布与推理过程中通常使用的标准正态分布之间的不匹配
为了解决训练和推理之间分布不匹配的问题,作者实现了为SIS量身定制的推理时间噪声先验,它可以无缝地集成到微调后的ControlNet中,而无需进一步的训练。首先,作者引入了空间先验,通过高斯模型估计真实潜空间的分布,并对批次间的结果进行平均。这种方法显著改善了场景布局的组织(例如,浴缸现在被认为是一个单一的实体,而不是图(a)中的碎片部分),并丰富了图像中观察到的颜色的多样性。这个先验更接近训练轨迹;然而,与所提供的标签掩模的差异仍然很明显(例如图(a)中墙上出现了一个意外的灯)。作者认为,出现这个问题是因为空间噪声先验与ControlNet的控制分支不拟合,其中前者在还原过程中包含混合模式(对应于不同类别),这可能会阻碍后者生成有意义的残差(添加回SD分支)以进行轨迹上的去噪。为了进一步完善作者的方法,作者通过按类别聚集真实图像的潜在来探索分类先验,并开始从聚集的统计数据中去噪。这种策略有助于减少标签对齐问题,尽管它会导致输出返回到单调的配色方案,如图(b)所示。
- 噪声分布表示
对于一组N个参考图像,该阶段涉及将这些图像减少为潜在先验,由高斯分布近似。
首先,使用预训练的VQGAN编码器将图像转换为潜在空间,然后计算均值和方差。根据所需的先验类型,作者将Eq.(1)应用于空间先验,Eq.(2)应用于分类先验,Eq.(3)应用于两者的联合版本
N
s
p
a
t
i
a
l
:
=
N
(
Σ
i
=
1
N
x
0
(
i
)
N
,
[
Σ
i
=
1
N
1
N
[
x
0
(
i
)
−
μ
(
x
0
(
i
)
)
]
2
]
⊙
I
H
′
×
W
′
×
4
)
(1)
\mathcal{N}_{spatial}:=\mathcal{N}(\Sigma_{i=1}^N \frac{x_0^{(i)}}{N},[\Sigma_{i=1}^N \frac{1}{N}[x_0^{(i)}-\mu(x_0^{(i)})]^2] \odot I_{H^{'} \times W^{'} \times 4} ) \tag{1}
Nspatial:=N(Σi=1NNx0(i),[Σi=1NN1[x0(i)−μ(x0(i))]2]⊙IH′×W′×4)(1)
N s p a t i a l , μ T : = N ( α μ T ⋅ x s p a t i a l , ( 1 − α μ T I ) , w h e r e x s p a t i a l ∼ N s p a t i a l (2) \mathcal{N}_{spatial,\mu_T }:=\mathcal{N}(\sqrt{\alpha_{\mu T}}\cdot x_{spatial},(1-\alpha_{\mu T}I ),where\ x_{spatial} \sim \mathcal{N}_{spatial }\tag{2} Nspatial,μT:=N(αμT⋅xspatial,(1−αμTI),where xspatial∼Nspatial(2)
N c a t e g o r i c a l , c : = N ( M e a n [ N c ] , V a r [ N c ] ) (3) \mathcal{N}_{categorical,c}:=\mathcal{N}(Mean[N_c],Var[N_c]) \tag{3} Ncategorical,c:=N(Mean[Nc],Var[Nc])(3)
- 噪声先验推理
作者首先组装与提供的下采样标签图M '对齐的潜在先验分布图。对于空间先验,作者直接复制它。否则,M '用于逐个标记索引指定的先验,以构造分布图。从这个分布中,作者对潜在表示进行采样,并为µT步引入噪声以创建噪声先验。然后通过微调的ControlNet处理该先验噪声,该控制器对最后的μ T步进行去噪。最后一步是利用预训练的VQGAN解码器重建生成的图像。
- 空间与类别先验
使用数据集中的N个参考潜在图像及其相关掩码,作者的目标是将它们减少到与噪声分布的训练轨迹一致的噪声先验,从而促进低误差推理。
空间先验
从分析中作者看到,使用空间先验的群体在构建场景布局时表现出更广泛的接受场,而使用正常先验的群体则迅速将注意力集中在局部领域。这种区别揭示了为什么空间先验组可以生成具有较少奇怪子结构的完整场景,而正常先验组的输出类似于剪切和粘贴类似形状遮罩的对象。空间先验的使用有助于生成与数据集风格一致的图像,并丰富了更广泛的颜色和纹理。
类别先验
虽然空间先验成功地实现了整个场景的全局关注,以构建逼真的场景布局,但它们在整合特定类别的信息方面存在不足。这种不足通过幻觉伪影变得明显,例如在天空中勾画建筑物或在墙上画灯。作者认为,这些幻觉源于空间噪声先验(其特征是减少后的混合类模式)和ControlNet的控制分支(其仅被训练为用标签掩码去噪相应类的噪声标记)之间的不兼容性。这种不匹配混淆了控制分支,导致残差的产生(添加回SD分支),这在去噪当前样本方面效果较差。这些误差沿着去噪轨迹累积,可能会使去噪过程进一步远离预期轨迹。
因此,作者在特定类的基础上深入分析运行统计数据,计算每个类的分类先验。最初,作者通过最近的像素选择将M缩小到 M ∈ N H ′ × W ′ M \in N^{H^{'} \times W^{'}} M∈NH′×W′,使用 H H ′ \frac{H}{H^{'}} H′H的比例因子。随后,对于N个参考图像,作者为c类集合中的每个类c组织不同的集合Nc,这些集合由维数为1 × 4的编码标记组成。在此之后,作者计算每个类的均值和标准差,以实现类的统计约简。
作者发现从分类先验中去噪的潜在特征在对象塑造阶段实现了对自然语言的多模态理解。这可以解释为什么作者的分类先验可以生成与给定语义掩码更好地对齐的结果。然而,简单地使用分类先验会使配色方案恢复到单调的方式。
联合先验
作者探讨了空间先验(spatial prior),它有助于构建场景布局,但在归纳特定类的细节方面有所欠缺;以及类先验(class prior),它擅长生成特定类的局部对象,但缺乏全面的全局关注。作者介绍了一个有效地合并这两个方面的组合先验,作者称之为联合先验。
N
j
o
i
n
t
,
x
,
y
,
c
:
=
N
(
M
e
a
n
[
N
x
,
y
,
c
]
,
V
a
r
[
N
x
,
y
,
c
]
)
(4)
\mathcal{N}_{joint,x,y,c}:=\mathcal{N}(Mean[N_{x,y,c}],Var[N_{x,y,c}]) \tag{4}
Njoint,x,y,c:=N(Mean[Nx,y,c],Var[Nx,y,c])(4)
作者称,联合先验可以有效结合两种先验。
狗头保命
以上观点均为本人对于原文的粗鄙理解,仅作为个人学习笔记,如有错误烦请指正,如有侵权请联系我删除。
不摆了,加训!