前言
最近文生圖領(lǐng)域的發(fā)展可謂是分生水起,這主要是得益于最近大火的擴散模型,之前筆者也寫過一篇關(guān)于文本生產(chǎn)3D模型的文章,大家感興趣的可以穿梭:
https://zhuanlan.zhihu.com/p/570332906
今天要給大家介紹的這一篇paper是百度最新的文生圖佳作:ERNIE-ViLG 2.0,其在diffusion的model基礎(chǔ)上進行了兩方面設(shè)計:融入語言和圖像知識進行增強、混合降噪專家網(wǎng)絡(luò)。
ERNIE-ViLG 2.0目前在文本生成圖像公開權(quán)威評測集 MS-COCO取得了SOTA, 尤其是在中文領(lǐng)域展現(xiàn)出了超強優(yōu)勢。
論文鏈接:https://arxiv.org/pdf/2210.15257.pdf
體驗鏈接:https://wenxin.baidu.com/ernie-vilg
demo
在開始之前先給大家展示幾個demo,感受一波,學(xué)起來更有動力~





可以看到不論是輪廓還是上色都是很棒的,而且很細(xì)節(jié)的描述都能捕捉到,比如最后一幅畫中的光從右邊打來。
更多的demo大家感興趣的話可以自己去體驗體驗~
方法
整體框架如下

-
擴散模型
在開始介紹作者提出的創(chuàng)新點之前,不得不先介紹下擴散模型,作者是在其基礎(chǔ)上針對性的設(shè)計了兩點。
要詳細(xì)介紹擴散模型的話,其實設(shè)計到很多數(shù)學(xué)知識,而他的思想邏輯實際上很好理解,基本上兩句話就可以介紹清楚。
關(guān)于擴散模型這里就按照本篇paper中的介紹方式給大家從大的邏輯上介紹一下吧,如果有同學(xué)還是對細(xì)節(jié)更感興趣,還是建議去看擴散模型的原paper或者其他大牛的講解,現(xiàn)在擴散模型很火,網(wǎng)上資料多多,筆者就不再敘述了,也怕從根源上誤導(dǎo)到大家。
它的過程大致就是:給圖片不斷的加噪聲,然后再不斷的去噪聲。而這個噪聲就是人為的取了一個最常見的數(shù)學(xué)分布:高斯噪聲。

x就是圖片的表征,每一步t都是在不斷的疊加一個噪聲,經(jīng)過不斷的疊加噪聲(從高斯分布隨機采樣),圖片就是越來越模糊。那么很明顯,如果我們能夠得到每一步的確切噪聲,那么就能夠回推出一開始的圖片,也就是復(fù)原。
再解釋一下這個邏輯:在隨機疊加噪聲的時候是隨機采樣的,而為了復(fù)原,我們需要訓(xùn)練一個去噪網(wǎng)絡(luò),而這個所謂的網(wǎng)絡(luò)其實就是在擬合每一步這個隨機采樣的噪聲值,因為拿到了噪聲值就可以一步步往回推理直到復(fù)原。

好了現(xiàn)在的重點變成了:怎么能夠精確得到這些噪聲呢?
那就是直接監(jiān)督訓(xùn)練吧:

可以看到直接設(shè)計一個網(wǎng)絡(luò),然后每一步監(jiān)督訓(xùn)練,具體的這個網(wǎng)絡(luò)的輸入是當(dāng)前這一步對應(yīng)的圖片表征,輸出就是這一步采樣疊加的噪聲。
有了這個訓(xùn)練好的模型,inference的時候便可以推理得到圖片在t步的預(yù)測值

具體到?jīng)]一步的推理往回推理公式:

上面就是擴散模型的去噪過程。
那上面說的“直接設(shè)計一個網(wǎng)絡(luò)”中的網(wǎng)絡(luò)是什么網(wǎng)絡(luò)呢?答案是:U-Net。
它的核心是一個cross-modal attention網(wǎng)絡(luò)

(x,y)分別代表一對圖文訓(xùn)練pair,可以非常清晰的看到K、V是圖文的concatenated表征,Q是圖片的表征。
-
融入語言和圖像知識進行增強
再經(jīng)過前面的解釋,這里我們正式的看一下作者提出的第一個設(shè)計:
(1)文本知識


通過公式(8)可以看到在計算attention的時候,作者多加了一個權(quán)重W項,具體的它是一個可學(xué)習(xí)網(wǎng)絡(luò)矩陣,其中的每一個具體元素值ij,代表著image tokens i和 text tokens j的權(quán)重。
可以看到如果是非關(guān)鍵token,它的值是1,如果是關(guān)鍵token那么就會累積一個可學(xué)習(xí)的權(quán)重。
具體的什么是關(guān)鍵token呢?作者這里考慮了形容詞和名詞,凡是形容詞和名詞的,會在對應(yīng)的輸入開頭拼接一個[a]和[n],如上圖中的“灰色的”和“貓”的開頭。
(2)視覺知識
視覺知識這里,作者具體是采用了目標(biāo)檢測手段。
具體的融合手段是放在了上述擬合高斯噪聲loss那里,如下:

在之前的基礎(chǔ)上,又是同樣的手段即多加了一個權(quán)重W,同理如果對應(yīng)的image和text token是關(guān)鍵物體(目標(biāo)檢測),那么就要著重懲罰此時的loss,也就是說這是關(guān)鍵物體,一定得給我畫出來呀。
說到這里,就會遇到另外一個問題:圖片中目標(biāo)檢測出來的物體,文本中沒有對應(yīng)的描述,這個時候怎么辦?
那就強行在文本后面append追加上這個目標(biāo),如上圖框架中的“碗”。
除此之外,為了進一步增加泛化性,作者還用了一個images-text的模型,通過圖片生成對應(yīng)的文本,用這個文本隨機代替原先給擴散模型訓(xùn)練(images,text)pair中的text。
這樣的話文本中會包含一些圖片中的重要目標(biāo)。
-
混合降噪專家網(wǎng)絡(luò)
接下來接著第二點設(shè)計
這里就更好理解一點,看到擴散模型去噪那里,每一步都是用的同樣的模型或者說同一套參數(shù),這里其實每一步應(yīng)該關(guān)注的點是不一樣的,所以說應(yīng)該個性化。
具體的作者這里每一步都對應(yīng)自己的參數(shù),而是進行了分組,每一組其實就是連續(xù)的幾步step,同一個組內(nèi)對應(yīng)一套參數(shù)。
那具體多少組呢?也就是paper中提到的MoDE,多專家網(wǎng)絡(luò),其實就是多少組,可以想象得到理論上來說越多越個性化,越效果好。
實驗
paper也做了很多實驗和case分析,大家感興趣的可以去詳細(xì)看看,這里給一下設(shè)計的兩個點的對應(yīng)消融實驗結(jié)果吧

總結(jié)
融入知識是ERNIE系列的老手段了,也是起家的本領(lǐng),怎么把更多更細(xì)粒度的知識融入到模型是ERNIE一直堅持創(chuàng)新的點,其已經(jīng)在各個領(lǐng)域模型發(fā)光發(fā)熱,大家對模型感興趣的可以持續(xù)關(guān)注~
歡迎關(guān)注,下期再見啦~
知乎,csdn,github,微信公眾號文章來源:http://www.zghlxwxcb.cn/news/detail-606779.html
本文由 mdnice 多平臺發(fā)布文章來源地址http://www.zghlxwxcb.cn/news/detail-606779.html
到了這里,關(guān)于百度最強中文AI作畫大模型的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!