ControlNet: Adding Conditional Control to Text-to-Image Diffusion Models
link
時間:23.11
機構:Standford
TL;DR
提出ControlNet演算法模型,用來給一個預訓練好的text2image的diffusion model增加空間條件控制資訊。作者嘗試使用5w-1M的edges/depth/segmentation/pose等資訊訓練ControlNet,都能得到比較好的生成效果。為下游文生圖使用者提供了極大的便利。
Method
- ZeroConv
FreezeNet與ControlNet模型是在Decoder部分融合特徵的,ControlNet Decoder都是從ZeroConv初始化的,根據下面公式來看,從ControlNet連入FreezeNet的特徵一開始是全零所以融合到Freeze模型上不影響原始效果。
- 這麼設計的好處:
效果方面:
a) 保留了原始Encoder的引數。b) Decoder是ZeroConv相當於讓ControlNet逐步學習參與進來。
效能方面:FreezeNet不需要backward,提升速度與降低視訊記憶體
As tested on a single NVIDIA A100 PCIE 40GB, optimizing Stable Diffusion with Control- Net requires only about 23% more GPU memory and 34% more time in each training iteration, compared to optimizing Stable Diffusion without ControlNet.
-
Condition \(c_f\)
將depth/pose/edge圖,透過4層stride=2的可學習卷積抽取出的特徵 -
Q:ZeroConv如何反傳梯度?
根據\(y=wx + b\),只要x不為0(輸入x是從ControlNet Encoder抽取出來的特徵),就可以得到y反傳到w的非0梯度。
Experiment
在6133 iters的時候突然收斂了
可以用來生成資料
更多視覺化樣本
總結與發散
無
相關連結
https://zhuanlan.zhihu.com/p/660924126