英文名稱: High-Resolution Image Synthesis with Latent Diffusion Models
中文名稱: 使用潛空間擴散模型合成高分辨率圖像
地址: https://ieeexplore.ieee.org/document/9878449/
代碼: https://github.com/CompVis/latent-diffusion
作者:Robin Rombach
日期: 2022-06-01
引用: 2275
1 讀后感
Latent Diffusion Models (LDMs)基于潛空間的擴散模型,是目前主流的基礎模型,Stable diffusion 就是基于 LDMs 原理工作的。之前的擴散模型運算都在像素層面,優(yōu)化通常會消耗數(shù)百個 GPU 天,且評估和推理成本也很高。LDMs 大量自編碼器的運算基于潛空間數(shù)據(jù),降低了計算復雜度,從而大幅節(jié)省了算力,并保持了圖像質量和靈活度,它讓更多人可以訓練模型。其應用場景包含有條件(根據(jù)文本或圖像生成圖像)和無條件(去噪/著色/根據(jù)涂鴉合成)的圖像生成。
研究背景和動機
擴散模型是由逐層去噪的自動編碼器構建的,基于似然的模型。這種模型傾向于花費過多的容量和資源對難以察覺的細節(jié)進行建模,盡管使用了重新加權的變分目標,但在 RGB 圖像的高維空間中訓練和生成仍需要大量計算。
LDMs 學習可以分為兩個階段:首先找到一個感知上等效但計算上更合適的空間(感知壓縮);然后,在其上訓練擴散模型(語義壓縮)。另外,本中還通過設計架構,分離了自動編碼和具體的任務,使得同一編碼器可用于多個任務。
論文貢獻如下:
- 優(yōu)化壓縮,支持更忠實和詳細的重建效果,有效構建高分辨率圖像。
- 在多種任務中,顯著降低了推理成本。
- 不需要對重建和生成能力進行微妙的加權,幾乎不需要對潛在空間進行正則化。
- 模型可以卷積方式使用并渲染約 1024x1024 像素的大而一致的圖像。
- 設計了基于交叉注意力的調節(jié)機制,實現(xiàn)了多模式訓練模型(一個模型支持多個功能)。
- 在github上開源了算法。
方法
明確分離壓縮階段和生成階段有以下優(yōu)勢:(1) 脫離高維空間,在低維空間中的擴散模型更高效;(2) 繼承了 UNet 架構的歸納偏差,這對具有空間結構(上下左右的相關性)的數(shù)據(jù)特別有效; (3) 獲得通用壓縮模型,其潛在空間可用于訓練多種生成模型,也可用于其他下游應用。

主邏輯分成三部分,第一部分是像素空間與潛空間之間的轉換,即感知圖像壓縮(粉色);第二部分是在潛空間操作的擴散模型(綠色);第三部分是用文本描述或其它圖片作為條件,控制圖像生成(白色)。
感知圖像壓縮
感知壓縮模型由一個通過感知損失和基于 patch 的對抗目標相結合的自編碼器組成。
給定 RGB 空間中的圖像 x ∈ RH×W ×3,編碼器 E 將 x 編碼為潛在表示 z = E(x),解碼器 D 從潛在表示重建圖像,給出 ? x = D( z) = D(E(x)),其中 z ∈ Rh×w×c。編碼器按因子 f = H/h = W/w 對圖像進行下采樣(后面實驗發(fā)現(xiàn),下采樣在4,8,16時效果最好)。
潛空間擴散模型
擴散模型
擴散模型原理比較復雜,之后會寫文章專門詳述,這里只做簡單介紹:
- 有一張圖x0,分多步,每步向圖里加入少量噪聲,圖將變得越來越模糊,最后變成了一張全是噪聲的圖xT,將加噪操作設為q。
- 在中間過程第t步,有可能從第t步還原出第t-1步的圖像,以此類推,一步一步往上倒,理論上,就能從最后一步xT還原出原圖x0。將去噪操作設為p。
- 所以建模的目標是找到從t步還原第t-1步的方法,也就是對p建模。

經過簡化,最終擴散模型的目標函數(shù)是:
這里考慮第t步,xt是第t步的加噪圖像,經過訓練來預測其輸入 xt 的去噪變體 ε,目標是讓實際值和模型預測值盡量一致,通過訓練給模型調參。
潛空間的擴散模型
將作用于像素級的擴散模型轉換為作為于壓縮低頻空間(潛空間)的擴散模型。與高維像素空間相比,該空間更適合基于似然的生成模型,因為它可以專注于數(shù)據(jù)的重要語義;且在較低維度進行訓練更為高效。
公式變?yōu)椋?br>
文中模型的主干 εθ 通過時間條件 UNet 實現(xiàn)。由于前向過程是固定的,在訓練期間可以通過 E 有效地獲得 zt,并且只需通過 D 即可將來自 p(z) 的樣本解碼到圖像空間。
條件機制
擴散模型原則上能夠對 p(z|y) 形式的條件分布進行建模。它通過條件去噪自動編碼器 εθ(zt, t, y) 來實現(xiàn),通過輸入條件 y(通過文本生成圖像,通過圖像生成圖像)控制合成過程。
具體方法是通過交叉力注意機制增強其底層 UNet 主干網,Attention(Q, K, V ),
其中y是條件,φi(zt) 是 UNet 的中間表示,的WQ, WK, WV是可學習的投影矩陣。
通過圖像條件對數(shù)據(jù)來訓練模型。其中 τθ 和 εθ 聯(lián)合優(yōu)化。 這種調節(jié)機制非常靈活,因為 τθ 可以由特定領域的專家網絡進行參數(shù)化,τθ處理后條件入引綠色塊,通過交叉注意力,作用于主干網絡εθ,影響圖像的生成。有效地解耦了條件模塊和圖像模塊,即使后面加入其它條件,也不需要考慮修改綠色的主干網。