生成式視覺:擴散與文生圖

DDIM 取樣

DDIM 取樣是把擴散從一個緩慢的奇珍異品變成「幾秒內可用」的訣竅。原始的 DDPM 取樣器需要數百到一千個依序步驟,並在每一步注入新鮮的隨機性。DDIM(去雜訊擴散隱式模型,Song 等人 2021)重新建構反向過程,使其成為確定性的——給定相同的起始雜訊,它總是產出相同的影像——而且關鍵在於,它能大步前進,跳過大部分時間步。一個完全按一般 DDPM 訓練的模型,無需重新訓練即可用 DDIM 取樣;這純粹只是執行同一個網路的另一種方式。

其洞見在於:DDPM 的前向過程可以被一族非馬可夫過程取代(每一步回望的是原始的乾淨影像,而非僅僅前一步),這一族全都共用相同的訓練目標。在這一族之中,有一個成員是確定性的。它的更新先用網路的雜訊預測估計出乾淨影像 x_0,再確定性地把這個估計重新加雜訊到下一個(大步距的)時間步:x_{t-1} = sqrt(alpha_bar_{t-1}) * x_0_pred + sqrt(1 - alpha_bar_{t-1}) * epsilon_theta(x_t, t)。一個參數 eta 在這個確定性規則(eta = 0,DDIM)與完全隨機的 DDPM(eta = 1)之間內插。由於相鄰的步驟不再必須緊鄰,你可以用 20 到 50 步取樣,而非 1000 步。

確定性帶來的不只是速度,還有實用的超能力。相同的種子給出可重現的影像;你可以在雜訊空間中於兩個種子之間平滑內插,得到兩張影像之間有意義的漸變;而且由於 DDIM 本質上是一個 ODE 求解器,你甚至能把它反向執行,把一張真實影像反演成「能重新生成它的雜訊」(DDIM 反演),這正是許多真實影像編輯技術的基礎。DDIM 也為更高階的 ODE 取樣器(DPM-Solver 等)鋪了路,後者把高品質生成壓低到大約 10 至 20 步。

同一個模型,兩種取樣器:使用 1000 個隨機步驟的 DDPM 與使用 50 個確定性步驟的 DDIM,產出的品質相當,但 DDIM 快約 20 倍且可重現。重用同一個 DDIM 種子,你每次都得到完全相同的影像;把種子稍微調動,影像會平滑地變化,而非隨機跳變。

又稱
denoising diffusion implicit modelsDDIMdeterministic sampler