2023.8.10
Adding Conditional Control to Text-to-Image Diffusion Models
对于 T2I 扩散模型添加 条件控制
相关联比较大的几篇论文:
0.Abstract
可以为预训练的扩散模型提供额外的输入条件控制。不需要很多计算资源。
即使在小数据集上,也具有鲁棒性。
The ControlNet learns task-specific conditions in an end-to-end way。什么是
end-to-end way
?解释:ControlNet直接从输入数据中学到所必要的条件和特征,然后直接输出,中间不需要什么操作。
1.Introduction
现有的 prompt-based 的生成模型 能否满足特定的条件(比较复杂的场景)?
通过调查发现三点:
①许多特定任务的数据集比较小,需要稳定的神经网络,以防止过拟合;
②需要很大的计算资源;
③许多的模型从输入到输出需要很多人工干预,所以引入 end-to-end
学习方式,一端是输入数据、另一端是输出数据,让神经网络自己根据数据调节自己,而不需要人工干预。
提出ControlNet
从扩散模型克隆权重副本,包含两个部分:①locked copy,保留了从数十亿张图片所学得的能力;②trainable copy,用来学习特定场景下的条件。这两个部分通过 zero-conv 连接起来。
锁定副本:它的参数(权重)不会改变,用作参考;
可训练副本:它的参数会随着特定任务发生改变。
zero convolution
在卷积操作中,权重矩阵(卷积核)一开始初始化为0,随着学习不断调整,以达到最优参数。
实验
不同条件、不同大小数据集、在3090Ti上就可以跑。
引言小结
2 Related work
2.1 HyperNetwork and Neural Network Structure
2.2 DPM
2.3 Text-to-Image diffusion
2.4 Personalization, Customization,and Control of Pretrained DM
2.5 Image-to-Image Translation
3 Method
-
3.1 介绍了 基本结构 和 每个部分的motivation
-
3.2 在Stable Diffusion中使用 ControlNet 的细节
-
3.3 学习目标、训练方法
-
3.4 一些训练技巧
-
3.5 不同条件下的应用
3.1 ControlNet
结构解析:
为什么要设置 locked copy 和 trainable copy?
避免因数据集过小-->过拟合。
之后用数学证明了只要特征I不为零,在第一次梯度下降迭代中,权重w将被优化为非零矩阵。零卷积就成为一种独特的连接层,以一种学习的方式从零逐步增长到优化参数。
3.2 ControlNet in Image Diffusion Model
在Stable Diffusion 的基础上对 Encoder部分进入条件控制。
因为条件的feature map得是 64 \times 64 的,所以需要一个小网络 把条件图像(512 \times 512 \rightarrow 64\times 64) 。这个小网络是由 4个conv layer。
3.3 Training
z_0,...,z_t ,当 t 足够大的时候,图像就会近似于纯噪声。
给定一系列条件:
-
time step t
-
text prompts c_t
-
task-specific conditions c_f
图像扩散算法就会学习一个网络 \epsilon_{\theta} 来预测添加到 加噪图像z_t 中的噪声