擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

王林
發布: 2023-04-11 19:46:08
轉載
1168 人瀏覽過

最近一段時間,AI 作畫可謂是火的一塌糊塗。

在你驚嘆 AI 繪畫能力的同時,可能還不知道的是,擴散模型在其中扮演了重要角色。就拿熱門模型 OpenAI 的 DALL·E 2 來說,只要輸入簡單的文字(prompt),它就可以產生多張 1024*1024 的高清影像。

在DALL·E 2 公佈沒多久,谷歌隨後發布了Imagen,這是一個文本到圖像的AI 模型,它能夠通過給定的文本描述生成該場景下逼真的圖像。

就在前幾天,Stability.Ai 公開發布文字生成圖像模型 Stable Diffusion 的最新版本,其生成的圖像達到商用等級。

自 2020 年Google發布 DDPM 以來,擴散模型就逐漸成為生成領域的新熱點。之後 OpenAI 推出 GLIDE、ADM-G 模型等,都讓擴散模型火出圈。

許多研究者認為,基於擴散模型的文字影像生成模型不但參數量小,生成的影像品質卻更高,大有要取代 GAN 的動能。

不過,擴散模型背後的數學公式讓許多研究者望而卻步,眾多研究者認為,其比 VAE、GAN 要難理解得多。

近日,來自Google Research 的研究者撰文《 Understanding Diffusion Models: A Unified Perspective 》,本文以極其詳細的方式展示了擴散模型背後的數學原理,目的是讓其他研究者可以跟隨並了解擴散模型是什麼以及它們是如何運作的。擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

論文網址:https://arxiv.org/pdf/2208.11970.pdf至於這篇論文有多「數學」,論文作者是這樣描述的:我們以及其令人痛苦的細節(excruciating detail)展示了這些模型背後的數學。

論文共分為 6 部分,主要包括生成模型;ELBO、VAE 和分級 VAE;變分擴散模型;基於分數的生成模型等。

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

以下摘取了論文部分內容來介紹:

產生模型

給定分佈中的觀察樣本x,生成模型的目標是學習為其真實資料分佈p(x) 進行建模。模型學習完之後,我們就可以產生新的樣本。此外,在某些形式下,我們也可以使用學習模型來進行評估觀察或對資料進行取樣。

當前研究文獻中,有幾個重要方向,本文只在高層次上簡要介紹,主要包括:GAN,其對複雜分佈的採樣過程進行建模,該過程以對抗方式學習。生成模型,我們也可稱之為「基於似然,likelihood-based」的方法,這類模型可以將高似然分配給觀察到的資料樣本,通常包括自回歸、歸一化流、VAE。基於能量的建模,在這種方法中,分佈被學習為任意靈活的能量函數,然後被歸一化。在基於分數的生成模型中,其沒有學習對能量函數本身進行建模,而是將基於能量模型的分數學習為神經網路。

在這項研究中,本文探索和回顧了擴散模型,正如文中所展示的那樣,它們具有基於可能性和基於分數的解釋。

變分擴散模型

以簡單的方式來看,一個變分擴散模型(Variational Diffusion Model, VDM)可以被考慮為具有三個主要限制(或假設)的馬可夫分層變分自編碼器(MHVAE),它們分別為:

#
  • 潛在維度完全等同於資料維度;
  • 每個時間步上潛在編碼器的結構沒有被學到,它被預先定義為線性高斯模型。換言之,它是以先前時間步的輸出為中心的高斯分佈;
  • 潛在編碼器的高斯參數隨時間變化,過程中最終時間步T 的潛在分佈標是準高斯分佈。

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

#變分擴散模型的視覺展示圖

#此外,研究者明確維護了來自標準馬可夫分層變分自編碼器的分層轉換之間的馬可夫屬性。他們對以上三個主要假設的涵義一一做了擴展。

從第一個假設開始,由於符號的濫用,現在可以將真實資料樣本和潛在變數表示為x_t,其中t=0 表示真實樣本數據,t ∈ [1 , T] 表示相應的潛在變量,它的層級結構由t 索引。 VDM 後驗與MHVAE 後驗相同,但現在可以重寫為如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

#從第二個假設,已知的是編碼器中每個潛在變數的分佈都是以先前分層潛在變數為中心的高斯分佈。與 MHVAE 不同的是,編碼器在每個時間步上的結構沒有被學到,它被固定為一個線性高斯模型,其中均值和標準差都可以預先設定為超參數或作為參數學得。在數學上,編碼器轉換表示為如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

#對第三個假設,α_t 根據固定或可學得的schedule 而隨時間演化,使得最終潛在變數p(x_T) 的分佈為標準高斯分佈。然後可以更新MHVAE 的聯合分佈,將VDM 的聯合分佈寫為如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

總的來說,這一系列假設描述了一個影像隨時間演化的穩定雜訊。研究者透過添加高斯雜訊漸進地破壞影像,直到最終變得與高斯雜訊完全相同。

與任何HVAE 相似的是,VDM 可以透過最大化證據下界(Evidence Lower Bound, ELBO)來最佳化,可以推導如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

#ELBO 的解釋過程如下圖4 所示:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

三種等價的解釋

正如先前證明的,一個變分擴散模型可以簡單地透過學習神經網路來訓練,以從任意雜訊版本x_t 及其時間索引t 中預測原始自然圖像x_0。但是,x_0 有兩個等價的參數化,使得 VDM 可以展開兩種進一步的解釋。

首先可以利用重參數化技巧。在推導 q(x_t|x_0) 的形式時,文中公式 69 可以重新排列為如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了##

將其帶入先前推導出的真實去噪轉換均值µ_q(x_t, x_0),則可以重新推導如下:擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

因此可以將近似去雜訊轉換平均值µ_θ(x_t, t) 設定為如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

且對應的最佳化問題變成如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

為了推導出變分擴散模型的三種常見解釋,需要求助於Tweedie 公式,它指的是當給定樣本時,指數族分佈的真實平均值可以透過樣本的最大似然估計(也稱為經驗平均值)加上一些涉及估計分數的校正項來估計。

從數學上講,對於一個高斯變數z ∼ N (z; µ_z, Σ_z),Tweedie 公式表示如下:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

基於分數的生成模型

研究者已經表明,變分擴散模型可以簡單地透過優化一個神經網路s_θ(x_t, t) 來學得,以預測一個得分函數∇ log p(x_t)。但是,推導中的得分項來自 Tweedie 公式的應用。這不一定為解讀得分函數究竟是什麼或為什麼它值得建模提供好的直覺或洞見。

好在可以藉助另一類生成模型,也就是基於分數的生成模型,來獲得這種直覺。研究者的確證明了先前推導出的 VDM 公式具有等價的基於分數的生成建模公式,使得可以在這兩種解釋之間靈活切換。

為了理解為什麼最佳化一個得分函數是有意義的,研究者重新審視了基於能量的模型。任意靈活的機率分佈可以寫成如下形式:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

#避免計算或建模歸一化常數的一種方式是使用神經網路s_θ(x) 來學習分佈p(x) 的得分函數∇ log p(x)。這是觀察到了公式152 兩邊可以進行對數求導:

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

它可以自由地表示為神經網絡,不涉及任何歸一化常數。透過利用真值得分函數最小化 Fisher 散度,可以最佳化得分函數。

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

直觀地講,得分函數在資料x 所在的整個空間上定義了一個向量場,並指向模型,具體如下圖6 所示。

擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了

最終,研究者從訓練目標和抽樣過程兩方面,建立了變分擴散模型和基於分數的生成模型之間的明確關聯。

更多細節內容請參閱原文。

以上是擴散模型背後數學太難了,啃不動?谷歌用統一視角講明白了的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:51cto.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!