📑 投影片連結:Controllable_DiT.pptx
📌 本篇為多篇論文之綜合 Survey,涵蓋以下核心文獻:
- DiT: Scalable Diffusion Models with Transformers (ICCV 2023) [Paper Link]
作者:William Peebles, Saining Xie - T2I-Adapter: T2I-Adapter: Learning Adapters to Dig out Communicative Capabilities for Text-to-Image Diffusion Models (AAAI 2024) [Paper Link]
作者:Chong Mou, Xintao Wang, Liangbin Xie, Jian Zhang, Zhongang Qi, Ying Shan, Xiaohu Qie - ControlNeXt: ControlNeXt: Powerful and Efficient Control for Image and Video Generation (arXiv 2024) [Paper Link]
作者:Bohao Peng, et al.
當前挑戰
在擴散模型邁向高解析度生成與精細控制的過程中,面臨了幾項架構上的限制:
傳統擴散模型過度依賴 U-Net 限制了模型擴展能力
長久以來,潛在擴散模型(LDM)與多數生成模型都默認以 U-Net 作為去噪骨幹。然而 U-Net 內嵌了強烈的歸納偏置(Inductive Bias),在擴大參數量與訓練算力時,其效能提升逐漸趨於飽和,難以像標準 Transformer 一樣展現穩定的 Scaling Laws。
文字 Prompt 無法精準控制影像幾何結構與空間分佈
純文字提示詞(Prompt)本質上是高層次的語義描述,在指定精確空間位置時非常吃力(例如「左邊人物舉右手且頭向右偏 30 度」)。在影視分鏡、動態排版等專業設計場景中,單純靠文字幾乎無法達成像素級的結構對齊。
傳統 ControlNet 參數量龐大且顯存開銷高
雖然 ControlNet 透過複製整個 U-Net 編碼器實現了強大的結構控制,但這種複製整個 Encoder 的作法導致參數量與計算開銷直接翻倍,在推論與顯存佔用上帶來巨大負擔,對於需要實時推論或部署在消費級顯卡的場景極不友善。
零卷積初始化導致初期訓練梯度回傳極慢且易不穩定
ControlNet 為了避免在訓練初期破壞預訓練模型的生成能力,採用了權重與 Bias 皆初始化為 0 的「零卷積(Zero Convolution)」。但這也帶來副作用:訓練初期零卷積的梯度流動非常微弱,導致控制模組收斂速度緩慢,且在影片生成等多幀場景下極易出現時序閃爍與不穩定。
主要貢獻
這三篇論文分別在模型 Backbone 與控制條件注入機制上給出了關鍵的改進方案:
解決: 傳統擴散模型過度依賴 U-Net 限制了模型擴展能力
DiT (ICCV 2023) 徹底捨棄了傳統 U-Net,證明純 Vision Transformer 完全可以勝任擴散模型骨幹:
– 架構設計:將 Latent 空間特徵切分為 Patch,透過標準 Transformer Block 進行自注意力計算。
– AdaLN-Zero 機制:透過自適應層正規化(Adaptive Layer Normalization)將時間步
與條件標籤動態注入到每一個 Transformer Block 的 Scale 與 Shift 參數中,並將殘差分支的最後一層線性投影初始化為 0,確保訓練初期的穩定性。
– 擴展規律 (Scaling Laws):論文嚴格驗證了隨著參數量(DiT-S 到 DiT-XL)以及 Patch Size(Patch 8 到 Patch 2)的縮小,模型生成品質與 FID 呈現嚴格的單調遞減。這項發現直接成為了 OpenAI Sora、SD3 等下一代視覺生成大模型的基礎架構。
小筆記:AdaLN-Zero 為什麼有效?
傳統 Transformer 常用 Cross-Attention 來注入條件,但 Cross-Attention 計算量大且每次都要算注意力矩陣。AdaLN-Zero 直接用條件向量去預測 LayerNorm 的縮放()與平移(
)係數,相當於對特徵進行全域條件調配,計算量極小且梯度流動平滑。
解決: 文字 Prompt 無法精準控制影像幾何結構與空間分佈
T2I-Adapter (AAAI 2024) 提出了一種極度輕量化的即插即用(Plug-and-Play)控制思路:
– 結構設計:設計一個極小型的卷積特徵提取器,直接將外部條件(Canny 邊緣、OpenPose 骨架、Depth 深度圖、Color Map 色塊)編碼為多尺度特徵。
– 單向注入:在擴散模型主幹的每一層特徵圖上直接將 Adapter 的特徵相加注入,完全不需改動主幹模型權重。
– 條件可組合性 (Composable):由於特徵以線性相加形式注入,使用者可以同時掛載「Pose Adapter + Depth Adapter + Color Adapter」,以加權求和的方式實現多條件聯合精準控制。
解決: 傳統 ControlNet 參數量龐大且顯存開銷高
ControlNeXt (arXiv 2024) 對傳統 ControlNet 的冗餘設計進行了大幅瘦身:
– 捨棄了 ControlNet 複製整個主幹網路的繁重設計,改用輕量級的獨立條件編碼分支,成功減少了 90% 的額外控制參數量。
– 同時原生支援圖像與高解析度影片生成,大幅降低了顯存佔用與推論延遲。
解決: 零卷積初始化導致初期訓練梯度回傳極慢且易不穩定
ControlNeXt 提出了 Cross Normalization(交叉正規化) 機制:
– 徹底拔除收斂緩慢的 Zero Convolution,改用交叉正規化層直接對齊控制特徵與主幹特徵的分佈統計量。
– 這樣既避免了破壞預訓練模型的生成先驗,又保證了訓練初期梯度能夠暢通無阻地回傳,大幅提升了訓練收斂速度與結構控制的穩定度。
延伸探討
這三篇論文剛好代表了現代生成模型演進的兩個維度:
– DiT 解決了「模型底座的極限在哪裡」:宣告了生成模型從卷積時代正式邁入 Transformer 與 Scaling Law 時代。
– T2I-Adapter 與 ControlNeXt 解決了「模型落地時的控制效率與成本」:從早期暴力複製主幹的 ControlNet,演進到參數減少 90%、訓練更快且支援多條件疊加的輕量化控制架構。
心得
在生成模型剛爆發時,大家習慣於把 U-Net 當成理所當然的標準配置,條件控制也傾向用「直接複製整個模型」的暴力作法。
DiT 的價值在於打破了 U-Net 的思維定勢,證明了只要給予足夠的算力與合適的條件注入(如 AdaLN-Zero),標準 Transformer 在生成領域一樣能展現強大的擴展性;而 ControlNeXt 和 T2I-Adapter 則展示了工程與架構上的精簡美學——我們不需要為了加一個姿態控制就複製一份幾十億參數的底模,輕巧精準的特徵注入往往能在大幅節省顯存的同時達到更穩定的效果。