在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁 > 博客 > 大一統(tǒng)視角理解擴散模型Understanding Diffusion Models: A Unified Perspective(1)

            大一統(tǒng)視角理解擴散模型Understanding Diffusion Models: A Unified Perspective(1)

            發(fā)布人:計算機視覺工坊 時間:2022-10-19 來源:工程師 發(fā)布文章
            作者丨中森@知乎(已授權(quán))來源丨https://zhuanlan.zhihu.com/p/558937247編輯丨極市平臺資料來源

            這篇文章是近期筆者閱讀擴散模型的一些技術(shù)博客和概覽的一篇梳理。主要參考的內(nèi)容來自Calvin luo的論文,針對的對象主要是對擴散模型已經(jīng)有一些基礎(chǔ)了解的讀者。Calvin luo 的這篇論文為理解擴散模型提供了一個統(tǒng)一的視角,尤其是其中的數(shù)理公式推導非常詳盡,本文將試圖盡量簡要地概括一遍大一統(tǒng)視角下的擴散模型的推導過程。在結(jié)尾處,筆者附上了一些推導過程中的強假設(shè)的思考和疑惑,并簡要討論了下擴散模型應(yīng)用在自然語言處理時的一些思考。

            本篇閱讀筆記一共參考了以下技術(shù)博客。其中如果不了解擴散模型的讀者可以考慮先閱讀lilian-weng的科普博客。Calvin-Luo的這篇介紹性論文在書寫的時候經(jīng)過了包括Jonathan Ho(DDPM作者), SongYang博士 和一系列相關(guān)擴散模型論文的發(fā)表者的審核,非常值得一讀。

            1. What are Diffusion Models? by Lilian Weng

            2. Generative Modeling by Estimating Gradients of the Data Distribution by Song Yang

            3. Understanding Diffusion Models: A Unified Perspective by Calvin Luo


            生成模型希望可以生成符合真實分布(或給定數(shù)據(jù)集)的數(shù)據(jù)。我們常見的幾種生成模型有GANs,F(xiàn)low-based Models, VAEs, Energy-Based Models 以及我們今天希望討論的擴散模型Diffusion Models. 其中擴散模型和變分自編碼器VAEs, 和基于能量的模型EBMs有一些聯(lián)系和區(qū)別,筆者會在接下來的章節(jié)闡述。

            圖片常見的幾種生成模型

            ELBO & VAE

            在介紹擴散模型前,我們先來回顧一下變分自編碼器VAE。我們知道VAE最大的特點是引入了一個潛在向量的分布來輔助建模真實的數(shù)據(jù)分布。那么為什么我們要引入潛在向量?有兩個直觀的原因,一個是直接建模高維表征十分困難,常常需要引入很強的先驗假設(shè)并且有維度詛咒的問題存在。另外一個是直接學習低維的潛在向量,一方面起到了維度壓縮的作用,一方面也希望能夠在低維空間上探索具有語義化的結(jié)構(gòu)信息(例如圖像領(lǐng)域里的GAN往往可以通過操控具體的某個維度影響輸出圖像的某個具體特征)。

            引入了潛在向量后,我們可以將我們的目標分布的對數(shù)似然logP(x),也稱為“證據(jù)evidence“寫成下列形式:

            圖片ELBO的推理過程

            其中,我們重點關(guān)注式15. 等式的左邊是生成模型想要接近的真實數(shù)據(jù)分布(evidence),等式右邊由兩項組成,其中第二項的KL散度因為恒大于零,所以不等式恒成立。如果在等式右邊減去該KL散度,則我們得到了真實數(shù)據(jù)分布的下界,即證據(jù)下界ELBO。對ELBO進行進一步的展開,我們就可以得到VAE的優(yōu)化目標

            圖片ELBO等式的展開

            對該證據(jù)下界的變形的形式,我們可以直觀地這么理解:證據(jù)下界等價于這么一個過程,我們用編碼器將輸入x編碼為一個后驗的潛在向量分布q(z|x)。我們希望這個向量分布盡可能地和真實的潛在向量分布p(z)相似,所以用KL散度約束,這也可以避免學習到的后驗分布q(z|x)坍塌成一個狄拉克delta函數(shù)(式19的右側(cè))。而得到的潛在向量我們用一個****重構(gòu)出原數(shù)據(jù),對應(yīng)的是式19的左邊P(x|z)。

            VAE為什么叫變分自編碼器。變分的部分來自于尋找最優(yōu)的潛在向量分布q(z|x)的這個過程。自編碼器的部分是上面提到的對輸入數(shù)據(jù)的編碼,再解碼為原數(shù)據(jù)的行為。

            那么提煉一下為什么VAE可以比較好地貼合原數(shù)據(jù)的分布?因為根據(jù)上述的公式推導我們發(fā)現(xiàn):原數(shù)據(jù)分布的對數(shù)似然(稱為證據(jù)evidence)可以寫成證據(jù)下界加上我們希望近似的后驗潛在向量分布和真實的潛在向量分布間的KL散度(即式15)。如果把該式寫為A = B+C的形式。因為evidence(即A)是個常數(shù)(與我們要學習的參數(shù)無關(guān)),所以最大化B,也就是我們的證據(jù)下界,等價于最小化C,也即是我們希望擬合的分布和真實分布間的差別。而因為證據(jù)下界,我們可以重新寫成式19那樣一個自編碼器的形式,我們也就得到了自編碼器的訓練目標。優(yōu)化該目標,等價于近似真實數(shù)據(jù)分布,也等價于用變分手法來優(yōu)化后驗潛在向量分布q(z|x)的過程。

            但VAE自身依然有很多問題。一個最明顯的就是我們?nèi)绾芜x定后驗分布q_phi(z|x)。絕大多數(shù)的VAE實現(xiàn)里,這個后驗分布被選定為了一個多維高斯分布。但這個選擇更多的是為了計算和優(yōu)化的方便而選擇。這樣的簡單形式極大地限制了模型逼近真實后驗分布的能力。VAE的原作者kingma曾經(jīng)有篇非常經(jīng)典的工作就是通過引入normalization flow[1]在改進后驗分布的表達能力。而擴散模型同樣可以看做是對后驗分布q_phi(z|x)的改進。

            Hierarchical VAE

            下圖展示了一個變分自編碼器里,潛在向量和輸入間的閉環(huán)關(guān)系。即從輸入中提取低維的潛在向量后,我們可以通過這個潛在向量重構(gòu)出輸入。

            圖片VAE里潛在向量與輸入的關(guān)系

            很明顯,我們認為這個低維的潛在向量里一定是高效地編碼了原數(shù)據(jù)分布的一些重要特性,才使得我們的****可以成功重構(gòu)出原數(shù)據(jù)分布里的各式數(shù)據(jù)。那么如果我們遞歸式地對這個潛在向量再次計算“潛在向量的潛在向量”,我們就得到了一個多層的HVAE,其中每一層的潛在向量條件于所有前序的潛在向量。但是在這篇文章里,我們主要關(guān)注具有馬爾可夫性質(zhì)的層級變分自編碼器MHVAE,即每一層的潛在向量僅條件于前一層的潛在向量。

            圖片MHVAE里的潛在向量只條件于上一層

            對于該MHVAE,我們可以通過馬爾可夫假設(shè)得到以下二式

            圖片23和24式是用鏈式法則對依賴圖里的關(guān)系的拆解

            對于該MHVAE,我們可以用以下步驟推導其證據(jù)下界

            圖片MHVAE的變分下界推導

            Variation Diffusion Model

            我們之所以在談?wù)摂U散模型之前,要花如此大的篇幅介紹VAE,并引出MHVAE的證據(jù)下界推導是因為我們可以非常自然地將擴散模型視為一種特殊的MHVAE,該MHVAE滿足以下三點限制(注意以下三點限制也是整個擴散模型推斷的基礎(chǔ)):

            1. 潛在向量Z的維度和輸入X的維度保持一致。
            2. 每一個時間步的潛在向量都被編碼為一個依賴于上一個時間步的潛在向量的高斯分布。
            3. 每一個時間步的潛在向量的高斯分布的參數(shù),隨時間步變化,且滿足最終時間步的高斯分布滿足標準高斯分布的限制。

            因為第一點維度一致的原因,在不影響理解的基礎(chǔ)上,我們將MHVAE里的Zt表示為Xt(其中x0為原始輸入),則我們可以將MHVAE的層級潛在向量依賴圖,重新畫為以下形式(即將擴散模型的中間擴散過程當做潛在向量的層級建模過程):

            圖片擴散過程的直觀解釋:在數(shù)據(jù)x0上不斷加高斯噪聲直至退化為純噪聲圖像Xt

            直至這里,我們終于見到了我們熟悉的擴散模型的形式。

            而在將上面的公式25-28里的Zt與Xt替換后,我們可以得到VDM里證據(jù)下界的推導公式里的前四行,即公式34-37。并且在此基礎(chǔ)上,我們可以繼續(xù)往下推導。37至38行的變換是鏈式法則的等價替換(或上述公式23和24的變換),38至39行是連乘過程的重組,39至40行是對齊連乘符號的區(qū)間,40至41行應(yīng)用了Log乘法的性質(zhì),41至42繼續(xù)運用該性質(zhì)進一步拆分,42至43行是因為和的期望等于期望的和,43至44是因為期望目標與部分時間步的概率無關(guān)可以直接省去,44至45步是應(yīng)用了KL散度的定義進行了重組。

            圖片VDM的證據(jù)下界推導

            至此,我們又一次將原數(shù)據(jù)分布的對數(shù)似然,轉(zhuǎn)化為了證據(jù)下界(公式37),并將其轉(zhuǎn)化為了幾項非常直觀的損失函數(shù)的加和形式(公式45),他們分別為:

            1. 重構(gòu)項,即從潛在向量x1到原數(shù)據(jù)x0的變化。在VAE里該重構(gòu)項寫為logP(x|z),而在這里我們寫做logP(x0|x1)
            2. 先驗匹配項?;貞浳覀兩鲜鎏岬降腗HVAE里最終時間步的高斯分布應(yīng)建立為標準高斯分布
            3. 一致項。該項損失是為了使得前向加噪過程和后向去噪的過程中,Xt的分布保持一致。直觀上講,對一個更混亂圖像的去噪應(yīng)一致于對一個更清晰的圖像的加噪。而因為一致項的損失是定義于所有時間步上的,這也是三項損失里最耗時計算的一項。

            雖然以上的公式推導給了我們一個非常直觀的證據(jù)下界,并且由于每一項都是以期望來計算,所以天然適用蒙特卡洛方法來近似,但如果優(yōu)化該證據(jù)下界依然存在幾個問題:

            1. 我們的一致項損失是一項建立在兩個隨機變量(Xt-1, Xt+1)上的期望。他們的蒙特卡洛估計的方差大概率比建立在單個獨立變量上的蒙特卡洛估計的方差大。
            2. 我們的一致項是定義于所有時間步上的KL散度的期望和。對于T取值較高的情況(通常擴散模型T取2000左右),該期望的方差也會很大。

            所以我們需要重新推導一個證據(jù)下界。而這個推導的關(guān)鍵將著眼于以下這個觀察:我們可以將擴散過程的正向加噪過程q(xt|xt-1)重寫為q(xt|xt-1, x0)。之所以這樣重寫的原因是基于馬爾可夫假設(shè),這兩個式子完全等價。于是對這個式子使用貝葉斯法則,我們可以得到式46.

            圖片對前向加噪過程使用馬爾可夫假設(shè)和貝葉斯法則后的公式

            基于公式46,我們可以重寫上面的證據(jù)下界(式37)為以下形式:其中式47,48和式37,38一致。式49開始,分母的連乘拆解由從T開始改為從1開始。式50基于上文提及的馬爾可夫假設(shè)對分母添加了x0的依賴。式51用log的性質(zhì)拆分了對數(shù)的目標。式52代入了式46做了替換。式53將劃掉的分母部分連乘單獨提取出來后發(fā)現(xiàn)各項可約剩下式54部分的log(q(x1|x0)/q(xT|x0))。式54用log的性質(zhì)消去了q(x1|x0)得到了式55。式56用log的性質(zhì)拆分重組了公式,式57如同前述式43-44的變換,省去了無關(guān)的時間步。式58則用了KL散度的性質(zhì)。

            圖片應(yīng)用了馬爾可夫假設(shè)的擴散模型證據(jù)下界推導1圖片應(yīng)用了馬爾可夫假設(shè)的擴散模型證據(jù)下界推導2

            至此,我們應(yīng)用了馬爾可夫假設(shè)得到了一個更優(yōu)的證據(jù)下界推導。該證據(jù)下界同樣包含幾項直觀的損失函數(shù):

            1. 重構(gòu)項。該重構(gòu)項與上面提及的重構(gòu)項一致。
            2. 先驗匹配項。與上面提及的形式略有差別,但同樣是基于最終時間步應(yīng)為標準高斯的先驗假設(shè)
            3. 去噪匹配項。與上面提及的一致項的最大區(qū)別在于不再是對兩個隨機變量的期望。并且直觀上理解p(xt-1|xt)代表的是后向的去噪過程,而q(xt-1|xt, x0)代表的是已知原始圖像和目標噪聲圖像的前向加噪過程。該加噪過程作為目標信號,來監(jiān)督后向的去噪過程。該項解決了期望建立于兩個隨機變量上的問題。

            注意,以上的推導完全基于馬爾可夫的性質(zhì)所以適用于所有MHVAE,所以當T=1的時候,以上的證據(jù)下界和VAE所推導出的證據(jù)下界完全一致!并且本文之所以稱為大一統(tǒng)視角,是因為對于該證據(jù)下界里的去噪匹配項,不同的論文有不同的優(yōu)化方式。但歸根結(jié)底,他們的本質(zhì)互相等價,且皆由該式展開推導得到。下面我們會從擴散模型的角度做公式推導,來展開計算去噪匹配項。(注意第一版的推導里的一致項,也完全可以通過下一節(jié)的方式得到q和p的表達式,再通過KL來計算解析式)


            *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。

            物聯(lián)網(wǎng)相關(guān)文章:物聯(lián)網(wǎng)是什么




            關(guān)鍵詞: AI

            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉