如何簡單高效地定制自己的文本作畫模型?|世界播報
強烈建議先閱讀:一文弄懂 Diffusion Model
(資料圖)
1. 論文信息標題:Multi-Concept Customization of Text-to-Image Diffusion
作者:Nupur Kumari, Bingliang Zhang, Richard Zhang, Eli Shechtman, Jun-Yan Zhu.
原文鏈接:https://arxiv.org/pdf/2212.04488.pdf
代碼鏈接:https://www.cs.cmu.edu/~custom-diffusion/
2. 引言最近通過文本生成圖像的深度學習相關技術取得了非常大的進展,2021已經(jīng)成為了圖像生成的一個新的milestone,諸如DALL-E和Stable diffusion這種模型都取得了長足的進步,甚至達到了“出圈”的效果。通過簡單文本prompts,用戶能夠生成前所未有的質量的圖像。這樣的模型可以生成各種各樣的對象、風格和場景,并把它們進行組合排序,這讓現(xiàn)有的圖像生成模型看上去是無所不能的。
但是,盡管這些模型具有多樣性和一些泛化能力,用戶經(jīng)常希望從他們自己的生活中合成特定的概念。例如,親人、朋友、寵物或個人物品和地點,這些都是非常有意義的concept,也和個人對于生成圖像的信息有對齊。由于這些概念天生就是個人的,因此在大規(guī)模的模型訓練過程中很難出現(xiàn)。事后通過詳細的文字,來描述這種概念是非常不方便的,也無法保留足夠多的視覺細節(jié)來生成新的personal的concepts。這就需要模型具有一定的“定制”能力。也就是說如果給定少量用戶提供的圖像,我們能否用新概念(例如寵物狗或者“月亮門”,如圖所示)增強現(xiàn)有的文本到圖像擴散模型?經(jīng)過微調(diào)的模型應該能夠將它們與現(xiàn)有概念進行概括并生成新的變化。這帶來了幾個比較嚴峻的挑戰(zhàn):
首先,模型傾向于遺忘現(xiàn)有概念的含義:例如,在添加“moon gate”這一concept的時候,“moon”的含義就會丟失。其次,由于stable diffusion這樣的網(wǎng)絡往往參數(shù)會超級多,所以在小數(shù)據(jù)上訓練模型,容易造成對訓練樣本進行過擬合,而且采樣中變化也有限。此外,論文還關注了一個更具挑戰(zhàn)性的問題,即組group fine-tuning,即能夠超越單個個體concept的微調(diào),并將多個概念組合在一起。學習多個新的concepts同時也是存在一定的挑戰(zhàn)的,比如 concept mixing以及concept omission。在這項工作中,論文提出了一種fine-tuning技術,即文本到圖像擴散模型的“定制擴散”。我們的方法在計算和內(nèi)存方面都很有效。為了克服上述挑戰(zhàn),新方法固定一小部分模型權重,即文本到潛在特征的key值映射在cross-attention layer中。fine-tuning這些足以更新模型的新concepts。為了防止模型喪失原來強大的表征能力,新方法僅僅使用一小組的圖像與目標圖像類似的真實圖像進行訓練。我們還在微調(diào)期間引入data的augamation,這可以讓模型更快的收斂,并獲得更好的結果。論文提出的方法實驗是構建在Stable Diffusion之上,并對各種數(shù)據(jù)集進行了實驗,其中最少有四幅訓練圖像。對于添加單個concept,新提出的方法顯示出比相似任務的作品和基線更好的文本對齊和視覺相似性。更重要的是,我們的方法可以有效地組成多個新concepts,而直接對不同的concepts進行組合的方法則遇到困難,經(jīng)常會省略一個。最后,我們的方法只需要存儲一小部分參數(shù)(模型權重的3%),消耗的GPU memory非常有限,同時也減少了fine-tuning的時間。
3. 方法總結來講,論文提出的方法,就是僅更新權重的一小部分,即模型的交叉注意力層。此外,由于目標概念的訓練樣本很少,所以使用一個真實圖像的正則化集,以防止過擬合。
對于Single-Concept Fine-tuning,給定一個預訓練的text-to-image diffusion model,我們的目標是在模型中加入一個新的concept,只要給定四張圖像和相應的文本描述進行訓練。fine-tuning后的模型應保留其先驗知識,允許根據(jù)文本提示使用新概念生成新的圖像類型。這可能具有挑戰(zhàn)性,因為更新的文本到圖像的映射可能很容易過擬合少數(shù)可用圖像。所以保證泛化性就非常有必要,也比較有挑戰(zhàn)。所以就僅僅fine-tuning新的K和V,而對于query,則保持不變,這樣就可以增加新概念的同時,保證模型的表征能力不受到太多的影響。優(yōu)化目標還是diffusion的形式:
概括起來實際上非常簡單,就是訓練一個k和v的矩陣,來擴充維度,增加模型的表征能力,使其能生成更為豐富的圖像內(nèi)容。
而對于Multiple-Concept Compositional Fine-tuning,為了對多個概念進行微調(diào),我們將每個概念的訓練數(shù)據(jù)集合并,并使用我們的方法將它們聯(lián)合訓練。為了表示目標概念,我們使用不同的修飾符的
由于我們的方法僅更新與文本特征相對應的key和value投影矩陣,因此我們可以將它們合并,以允許使用多個微調(diào)概念生成。讓集合
相關閱讀
-
如何簡單高效地定制自己的文本作畫模型...
強烈建議先閱讀:一文弄懂DiffusionModel1 論文信息標題:Multi-Co... -
盤點Python詞云制作過程中常見的一兩個問題
點擊上方“Python爬蟲與數(shù)據(jù)挖掘”,進行關注回復“書籍”即可獲贈P... -
環(huán)球速遞!Python 打印彩色日志
我相信每一個開發(fā)者都有打印日志的習慣,好看的日志可以加快調(diào)試的... -
為什么requests不是python標準庫?
在知乎上看到有人問:為什么requests不是python標準庫?這確實是部... -
Power BI 醫(yī)療器械行業(yè)銷售管理通用模板
難道一定要很多頁分析頁面才有價值嗎?非也。今天,我們發(fā)布:醫(yī)療... -
全球熱頭條丨該死,這糟糕的心動感,梅...
大家好,我是Jack。今天繼續(xù)給大家推薦一些讓人“心動”的開源項目...