只需1%參數(shù),效果超越ControlNet,新AI繪畫控制大師來襲
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
“新·AI繪畫細節(jié)控制大師”ControlNet-XS來啦!
敲重點的是參數(shù)只要原始ControlNet的1%。
就能做到蛋糕口味隨意切換:
△左圖為改前
改變一個人的行頭也輕輕松松:
上圖同款,身形不變藝術(shù)氛圍感拉滿:
自然風光也能hou住,一年四季任意切換:
還有這貓頭鷹,直接從活物變雕塑:
參數(shù)很小的情況下,能做到這樣的效果,網(wǎng)友也是直呼絕絕子,并迫不及待想看論文。
ControlNet-XS由海德堡大學計算機視覺實驗室研發(fā),目前相關(guān)論文、預(yù)訓練模型還未公布。
但研究人員表示ControlNet-XSFID分數(shù)明顯優(yōu)于ControlNet。
且控制Stable Diffusion-XL和Stable Diffusion 2.1的代碼將在不久后開源。
新生代控制大師
先來康康對StableDiffusion-XL的控制。
研究人員在評估了不同大小的控制模型后發(fā)現(xiàn),控制模型甚至不必和2.6B參數(shù)的StableDiffusion-XL基礎(chǔ)網(wǎng)絡(luò)大小一樣。
400M、104M和48M參數(shù)的ControlNet-XS控制也很明顯。
深度圖給出了更為直觀的展示,根據(jù)圖像內(nèi)容的距離、深度,深度圖呈現(xiàn)出準確的顏色深淺度:
要注意的是,這里研究人員設(shè)置的每行seed值不同,每列seed值相同。
此外,還有Canny邊緣檢測圖,物體的邊界、輪廓都能清晰地展現(xiàn)出來:
對StableDiffusion的控制,研究人員則是評估了491M、55M和14M參數(shù)的三個版本的ControlNet-XS。
結(jié)果表明1.6%的參數(shù)(865M)也能夠可靠地控制生成過程。
那這是如何做到的呢?
從頭開始訓練
原始ControlNet是StableDiffusion基礎(chǔ)模型(base model)中U-Net編碼器的副本,所以接收與基礎(chǔ)模型相同的輸入,并帶有額外的引導信號,比如說邊緣圖。
然后,經(jīng)過訓練的ControlNet的中間輸出被添加到基礎(chǔ)模型的解碼器層的輸入中。在ControlNet的整個訓練過程中,基礎(chǔ)模型的權(quán)重保持凍結(jié)狀態(tài)。
ControlNet-XS的研究者們認為這種方法存在問題,ControlNet不必這么龐大。
首先是Stable Diffusion最終輸出圖像,是在一系列步驟中迭代生成的。每個步驟會在U-Net網(wǎng)絡(luò)結(jié)構(gòu)的編碼器(Encoder)和解碼器(Decoder)兩部分中執(zhí)行。
每次迭代基礎(chǔ)模型和控制模型的輸入是前一個步驟生成的圖像??刂颇P瓦€接收一個控制圖像。
問題在于,在編碼器階段這兩個模型都獨立運行,而控制模型的反饋只在基礎(chǔ)模型的解碼階段輸入。
總之,結(jié)果就是一個延遲的校正/控制機制。
也就是說ControlNet必須執(zhí)行兩項任務(wù):一邊校正/控制,一邊還要提前預(yù)測基本模型的編碼器將犯哪些“錯誤”。
通過暗示圖像生成和控制需要相似的模型容量,自然而然地可以用基礎(chǔ)模型的權(quán)重初始化ControlNet的權(quán)重,然后進行微調(diào)。
而對于ControlNet-XS,研究人員表示從設(shè)計上就與基礎(chǔ)模型不同,是從零開始訓練ControlNet-XS權(quán)重,解決了延遲反饋的問題。
如上圖所示,方法是從基礎(chǔ)模型的編碼器添加連接到控制編碼器(A),這樣校正過程可以更快地適應(yīng)基礎(chǔ)模型的生成過程。但這并不能完全消除延遲,因為基礎(chǔ)模型的編碼器仍然沒有受到引導。
因此,研究人員從ControlNet-XS添加額外的連接到基礎(chǔ)模型編碼器,直接影響整個生成過程(B)。
此外,他們還評估了在ControlNet設(shè)置中使用鏡像解碼架構(gòu)是否有用(C)。
最終,研究人員在COCO2017驗證集上,針對Canny邊緣引導的三種不同變體(A、B、C)與原始的ControlNet進行了FID分數(shù)性能評估。
結(jié)果所有變體都有了顯著提升,同時僅使用了原始ControlNet參數(shù)的一小部分。
研究人員又拿出了變體B,分別使用Canny邊緣圖和深度圖引導,針對StableDiffusion2.1和StableDiffusion-XL分別訓練了三種不同大小的模型。
所以下一步就等相關(guān)論文、代碼以及預(yù)訓練模型公布啦~
項目地址:https://vislearn.github.io/ControlNet-XS/