生成不了光線極強(qiáng)的圖片?微信視覺(jué)團(tuán)隊(duì)有效解決擴(kuò)散模型奇點(diǎn)問(wèn)題
擴(kuò)散模型憑借其在圖像生成方面的出色表現(xiàn),開啟了生成式模型的新紀(jì)元。諸如 Stable Diffusion,DALLE,Imagen,SORA 等大模型如雨后春筍般涌現(xiàn),進(jìn)一步豐富了生成式 AI 的應(yīng)用前景。然而,當(dāng)前的擴(kuò)散模型在理論上并非完美,鮮有研究關(guān)注到采樣時(shí)間端點(diǎn)處未定義的奇點(diǎn)問(wèn)題。此外,奇點(diǎn)問(wèn)題在應(yīng)用中導(dǎo)致的平均灰度等影響生成圖像質(zhì)量的問(wèn)題也一直未得到解決。
為了解決這一難題,微信視覺(jué)團(tuán)隊(duì)與中山大學(xué)合作,聯(lián)手探究了擴(kuò)散模型中的奇點(diǎn)問(wèn)題,并提出了一個(gè)即插即用的方法,有效解決了初始時(shí)刻的采樣問(wèn)題。該方法成功解決了平均灰度問(wèn)題,顯著提升了現(xiàn)有擴(kuò)散模型的生成能力。這一研究成果已在 CVPR 2024 會(huì)議上發(fā)表。
擴(kuò)散模型在多模態(tài)內(nèi)容生成任務(wù)中取得了顯著的成功,包括圖像、音頻、文本和視頻等生成。這些模型的成功建模大多依賴于一個(gè)假設(shè),即擴(kuò)散過(guò)程的逆過(guò)程也符合高斯特性。然而,這一假設(shè)并沒(méi)有得到充分證明。特別是在端點(diǎn)處,即 t=0 或 t=1,會(huì)出現(xiàn)奇點(diǎn)問(wèn)題,限制了現(xiàn)有方法對(duì)奇點(diǎn)處采樣的研究。
此外,奇點(diǎn)問(wèn)題也會(huì)影響擴(kuò)散模型的生成能力,導(dǎo)致模型出現(xiàn)平均灰度問(wèn)題,即難以生成亮度強(qiáng)或者弱的圖像,如圖下所示。這在一定程度上也限制了當(dāng)前擴(kuò)散模型的應(yīng)用范圍。
為了解決擴(kuò)散模型在時(shí)間端點(diǎn)處的奇點(diǎn)問(wèn)題,微信視覺(jué)團(tuán)隊(duì)與中山大學(xué)合作,從理論和實(shí)踐兩個(gè)方面展開了深入探究。首先,該團(tuán)隊(duì)提出了一個(gè)包含奇點(diǎn)時(shí)刻逆過(guò)程近似高斯分布的誤差上界,為后續(xù)研究提供了理論基礎(chǔ)。基于這一理論保障,團(tuán)隊(duì)對(duì)奇點(diǎn)處的采樣進(jìn)行了研究,并得出了兩個(gè)重要的結(jié)論:1)t=1 處的奇點(diǎn)可以通過(guò)求取極限轉(zhuǎn)化為可去奇點(diǎn),2)t=0 處的奇點(diǎn)是擴(kuò)散模型的固有特性,不需要規(guī)避?;谶@些結(jié)論,該團(tuán)隊(duì)提出了一個(gè)即插即用的方法:SingDiffusion,用于解決擴(kuò)散模型在初始時(shí)刻采樣的問(wèn)題。
通過(guò)大量的實(shí)驗(yàn)驗(yàn)證表明,僅需訓(xùn)練一次,SingDiffusion 模塊即可無(wú)縫應(yīng)用到現(xiàn)有的擴(kuò)散模型中,顯著地解決了平均灰度值的問(wèn)題。在不使用無(wú)分類器指引技術(shù)的情況下,SingDiffusion 能夠顯著提升當(dāng)前方法的生成質(zhì)量,特別是在應(yīng)用于 Stable Diffusion1.5(SD-1.5)后,其生成的圖像質(zhì)量更是提升了 33%
論文地址:https://arxiv.org/pdf/2403.08381.pdf
項(xiàng)目地址:https://pangzecheung.github.io/SingDiffusion/
論文題目:Tackling the Singularities at the Endpoints of Time Intervals in Diffusion Models
逆過(guò)程的高斯特性
為了研究擴(kuò)散模型的奇點(diǎn)問(wèn)題,需要驗(yàn)證全過(guò)程包含奇點(diǎn)處的逆過(guò)程滿足高斯特性。首先定義為擴(kuò)散模型的訓(xùn)練樣本,訓(xùn)練樣本的分布可以表示為:
其中 δ 表示狄拉克函數(shù)。根據(jù) [1] 中連續(xù)時(shí)間擴(kuò)散模型的定義,對(duì)于任意兩個(gè)時(shí)刻 0≤s,t≤1,正向過(guò)程可以表示為:
其中,
,
,
隨著時(shí)間單調(diào)的從 1 變化到 0。考慮到剛剛定義的訓(xùn)練樣本分布,
的單時(shí)刻邊際概率密度可以表示為:
由此,可以通過(guò)貝葉斯公式計(jì)算逆過(guò)程的條件分布:
然而,得到的分布是混合高斯分布,難以用網(wǎng)絡(luò)進(jìn)行擬合。因此,主流的擴(kuò)散模型通常假設(shè)這一分布可以由單個(gè)高斯分布擬合:
其中,為了驗(yàn)證這一假設(shè),該研究在 Proposition 1 中估計(jì)了這一擬合的誤差。
然而,該研究發(fā)現(xiàn)當(dāng) t=1 時(shí),隨著 s 趨近 1,也將趨近于 1,誤差無(wú)法忽略。因此,Proposition 1 并不能證明 t=1 時(shí)的逆向高斯特性。為了解決這一問(wèn)題,該研究給出了新的命題:
根據(jù) Proposition 2,當(dāng) t=1 時(shí),隨著 s 趨近 1,將趨近于 0。由此,該研究證明了包含奇點(diǎn)時(shí)刻的逆過(guò)程全過(guò)程都符合高斯特性。
奇點(diǎn)時(shí)刻的采樣
有了逆過(guò)程高斯特性的保證,該研究基于逆向采樣公式對(duì)奇點(diǎn)時(shí)刻的采樣展開了研究。
首先考慮 t=1 時(shí)刻的奇點(diǎn)問(wèn)題。當(dāng) t=1 時(shí),=0,下面的采樣公式將出現(xiàn)分母除 0 的情況:
研究團(tuán)隊(duì)發(fā)現(xiàn),通過(guò)計(jì)算極限,該奇點(diǎn)可以轉(zhuǎn)化為可去奇點(diǎn):
然而,這一極限無(wú)法在測(cè)試過(guò)程中進(jìn)行計(jì)算。為此,該研究提出可以在 t=1 時(shí)刻擬合,使用 「x - 預(yù)測(cè)」,來(lái)解決的初始奇點(diǎn)處的采樣問(wèn)題。
接著考慮 t=0 時(shí)刻,高斯分布擬合的逆過(guò)程將變成方差為 0 的高斯分布,即狄拉克函數(shù):
其中。這樣的奇異性會(huì)使得采樣過(guò)程收斂到正確的數(shù)據(jù)
上。因此,t=0 處的奇點(diǎn)是擴(kuò)散模型良好的性質(zhì),并不需要規(guī)避。
此外,該研究還在附錄中探討了 DDIM,SDE,ODE 中的奇點(diǎn)問(wèn)題。
即插即用的 SingDiffusion 模塊
奇點(diǎn)處的采樣會(huì)影響擴(kuò)散模型生成圖像的質(zhì)量。例如,在輸入高或低亮度的提示時(shí),現(xiàn)有方法往往只能生成平均灰度的圖像,這被稱為平均灰度問(wèn)題。這個(gè)問(wèn)題源于現(xiàn)有方法忽略了 t=0 時(shí)奇點(diǎn)處的采樣,而是在 1-? 時(shí)刻使用標(biāo)準(zhǔn)高斯分布作為初始分布進(jìn)行采樣。然而,正如上圖所示,標(biāo)準(zhǔn)高斯分布與實(shí)際的 1-? 時(shí)刻的數(shù)據(jù)分布存在較大的差距。
在這樣的差距下,根據(jù) Proposition 3,現(xiàn)有方法等同于在 t=1 時(shí)朝著一個(gè)均值為 0 的圖像進(jìn)行生成,即平均灰度圖像。因此,現(xiàn)有方法難以生成亮度極強(qiáng)或極弱的圖像。為了解決這個(gè)問(wèn)題,該研究提出了一個(gè)即插即用的 SingDiffusion 方法,通過(guò)擬合標(biāo)準(zhǔn)高斯分布與實(shí)際數(shù)據(jù)分布之間的轉(zhuǎn)換來(lái)彌補(bǔ)這一差距。
SingDiffuion 的算法如下圖所示:
根據(jù)上一節(jié)的結(jié)論,該研究在在 t=1 時(shí)刻使用了 「x - 預(yù)測(cè)」方法來(lái)解決奇點(diǎn)處的采樣問(wèn)題。對(duì)于圖-文數(shù)據(jù)對(duì),該方法訓(xùn)練了一個(gè) Unet
來(lái)擬合
。損失函數(shù)表示為:
模型收斂后,就可以按照下面的 DDIM 采樣公式并使用新得到的模塊采樣
。
DDIM 的采樣公式確保了生成的符合 1-ε 時(shí)刻的數(shù)據(jù)分布
,從而解決了平均灰度問(wèn)題。在這一步驟之后,就可以使用預(yù)訓(xùn)練的模型執(zhí)行后續(xù)的采樣步驟,直到生成
。值得注意的是,由于該方法僅參與第一步的采樣,與后續(xù)的采樣過(guò)程無(wú)關(guān),因此 SingDiffusion 可以應(yīng)用在絕大多數(shù)已有的擴(kuò)散模型中。另外,為了避免無(wú)分類器指導(dǎo)操作導(dǎo)致的數(shù)據(jù)溢出問(wèn)題,該方法還使用了以下的歸一化操作:
其中 guidance 表示無(wú)分類器指導(dǎo)操作后的結(jié)果,neg 表示負(fù)面提示下的輸出,pos 表示正面提示下的輸出,ω 表示指導(dǎo)強(qiáng)度。
實(shí)驗(yàn)
首先,該研究在 SD-1.5、SD-2.0-base 和 SD-2.0 三個(gè)模型上驗(yàn)證了 SingDiffusion 解決平均灰度問(wèn)題的能力。該研究選擇了四個(gè)極端的提示,包括 「純白 / 黑背景」 和 「單色線條藝術(shù)標(biāo)志在白 / 黑背景上」,作為條件進(jìn)行生成,并計(jì)算生成圖像的平均灰度值,如下表所示:
從表格中可以看出,該研究能夠顯著地解決平均灰度值問(wèn)題,生成符合輸入文字描述亮度的圖像。此外,該研究還可視化了在這四個(gè)提示語(yǔ)句下的生成結(jié)果,如下圖所示:
從圖中可以看出,加入該方法后,現(xiàn)有的擴(kuò)散模型能夠生成偏黑或者偏白的圖像。
為了進(jìn)一步研究該方法對(duì)于圖像質(zhì)量的提升,該研究在 COCO 數(shù)據(jù)集上選擇了 30,000 個(gè)描述進(jìn)行了測(cè)試。首先,該研究展示了在不使用無(wú)分類器引導(dǎo)下,模型本身的生成能力,如下表所示:
從表格中可以看出,所提出的方法能夠顯著降低生成圖像的 FID,并提升 CLIP 指標(biāo)。值得注意的是,在 SD-1.5 模型中,該論文中的方法相比于原模型在 FID 指標(biāo)上降低了 33%。
進(jìn)一步地,為了驗(yàn)證所提出方法在無(wú)分類器引導(dǎo)下的生成能力,該研究還在下圖中展示了在不同引導(dǎo)大小 ω∈[1.5,2,3,4,5,6,7,8] 下 CLIP v.s. FID 的帕累托曲線:
從圖中可以看出,在相同的 CLIP 水平下,所提出的方法能夠獲得更低的 FID 數(shù)值,生成更逼真的圖像。
此外,該研究還展示了所提出方法在不同 CIVITAI 預(yù)訓(xùn)練模型下的泛化能力,如下圖所示:
可以看出,該研究所提出的方法僅需進(jìn)行一次訓(xùn)練,即可輕松地應(yīng)用到已有的擴(kuò)散模型中,解決平均灰度問(wèn)題。
最后,該研究所提出的方法還能夠無(wú)縫地應(yīng)用到預(yù)訓(xùn)練的 ControlNet 模型上,如下圖所示:
從結(jié)果中可以看出,該方法能有效解決 ControlNet 的平均灰度問(wèn)題。