NeurIPS 2024 | 全面提升文生圖SOTA方法!ToMe:基于token合并的免訓練文生圖語義綁定
論文鏈接:https://arxiv.org/abs/2411.07132GitHub鏈接:https://github.com/hutaiHang/ToMe
亮點直擊
- 分析了語義綁定問題,重點討論了[EOT]token的作用,以及跨注意力圖錯位的問題。此外,探索了token可加性作為一種可能的解決方案。
- 提出了一種無訓練方法——token合并,簡稱ToMe,作為一種更高效且穩健的語義綁定解決方案。通過引入提出的結束token替代和迭代復合token更新技術,ToMe得到了進一步增強。
- 在廣泛使用的T2I-CompBench基準和GPT-4o對象綁定基準上進行的實驗中,將ToMe與多種最先進的方法進行了比較,并始終在性能上大幅領先。
研究背景
近年來,隨著深度學習和人工智能技術的飛速發展,文本生成圖像(Text-to-Image, T2I)模型在圖像生成領域取得了顯著的進展。特別是擴散模型(Diffusion Models)的出現,使得T2I模型能夠根據文本提示生成高質量、高分辨率的圖像。這些模型在藝術創作、設計、虛擬現實等多個領域展現了巨大的應用潛力。然而,盡管T2I模型在生成圖像方面表現出色,但在將文本提示中的語義信息準確映射到圖像中仍然存在挑戰。 例如,在多對象生成中,prompt中的每個對象都有自己對應的子屬性(用來修飾這個對象的形容詞或者名詞子對象),但現有的模型難以將文本中的對象與其屬性或相關子對象正確關聯,表現為錯誤的綁定或者屬性的丟失。我們將這一問題稱為語義綁定(Semantic Binding),
如下圖所示,當提示詞為“一只戴著帽子的狗和一只戴著太陽鏡的貓”時,生成的圖像可能會出現帽子戴在貓頭上,太陽鏡戴在狗頭上的錯誤情況。這種錯誤不僅影響了圖像的視覺效果,也限制了T2I模型在實際應用中的可靠性和實用性。
為了解決這一問題,研究者們提出了多種方法,包括優化潛在表示、通過布局先驗引導生成過程,以及對T2I模型進行微調等。然而,這些方法往往需要大量的計算資源和復雜的訓練過程,且在處理復雜場景(如多個對象和多個屬性)時仍然存在局限性。因此,開發一種高效、無需訓練且能夠有效解決語義綁定問題的方法,成為了當前研究的重要方向。
研究動機
文本嵌入的信息耦合
在處理包含多個對象的prompt時,以往基于布局先驗的方法會首先使用LLM生成合理的圖像布局,例如將圖像劃分為不同的子區域,每個子區域只關注prompt中的單個對象。通過這種規劃-生成來增強語義對齊。但盡管規劃好了不同子區域與原始prompt中不同對象的text embedding進行cross attention,但不同子區域間還是會出現屬性泄露等情況,把和一個對象不相關的屬性綁定到這個對象上。我們認為,這是由于用來調制不同子區域的text embeeding本身的信息耦合導致的。例如,對于“a cat wearing sunglasses and a dog with hat”這個prompt,其在經由CLIP編碼后得到text embedding。原始的擴散模型使用全部text token的text embedding作為cross-attention模塊的輸入,我們發現當僅僅使用此時的單個‘dog’token的text embedding時,產生的圖像內容也是一個帶了眼鏡的狗。如果使用EOT token(End of Text,即每個句子末尾被padding的結束符)的text embedding,此時產生的圖像和使用全部的text token產生的圖像內容基本一致。
這可能是由于CLIP的causal masked attention導致的,每個text token都可以和它前面的所有token進行self-attention,這導致前面的文本信息會不可避免的傳遞到后面的token中,而EOT token會包含全部的語義信息。我們認為,這種text embedding層次上的信息泄露導致不同對象之間屬性的混淆。
文本嵌入的可加性
此外,我們還發現了文本嵌入的可加性。如下圖所示,把兩個單獨編碼后的text embedding相加得到一個新的復合token的embedding,之后輸入到擴散模型中,產生的圖像可以合理的組合兩個不同prompt的內容。例如,下圖a的左上部分,[dog+hat]生成了一只戴帽子的狗。這種可加性還可以用于移除對象(下圖a,右上、左下部分),甚至執行復雜的語義計算(下圖a,右下)。為探究這一現象背后的機制,我們對每個提示詞的token表示進行了PCA 降維可視化,下圖b 所示。從“queen-king” 獲得的方向向量與“woman-man” 的方向向量幾乎相同,余弦相似度為0.998
研究方法
因此,為了解決文本生成圖像(T2I)模型中的語義綁定問題,關鍵是如何獲得一個更干凈的text embedding表征,同時使得擴散模型意識到prompt的語法結構,把每個對象及其相關屬性綁定。我們提出了一種名為token合并(Token Merging, ToMe)的新方法。ToMe的核心思想是通過將相關的token聚合為一個復合token,從而增強語義綁定。具體來說,ToMe由兩部分組成:token合并與結束token替換,以及通過兩個輔助損失進行推理時復合token迭代更新。
- token合并與結束token替換 我們以“a cat wearing sunglasses and a dog with hat”這個prompt為例進行說明,具體步驟如下:
- 對象token合并:對于包含多個對象的提示詞,我們將每個對象及其相關屬性token的text embedding相加,生成一個復合token。例如,對于提示詞“a dog with hat”,我們將“dog”和“hat”的文本嵌入相加,生成一個表征“戴著帽子的狗”這個語義的復合token [dog*]。
- 結束token替換(End Token Substitution, ETS):由于結束token([EOT])中包含的語義信息可能干擾屬性的表達,我們通過替換[EOT]來減輕這種干擾,保留每個主體的語義信息。例如,當提示詞為“a cat wearing sunglasses and a dog with hat”時,我們使用來自提示詞“a cat and a dog”的[EOT]來替換原有的[EOT]。
通過上述步驟,我們生成了一個統一的文本嵌入,其中每個對象及其屬性由一個復合token表示,并且通過替換[EOT]保留了每個主體的語義信息。Token合并使得每個對象及其屬性共享同一個cross-attention map,顯式的綁定了每個對象及其屬性,使它們在生成過程中共表達。
- 復合token迭代更新 為了進一步優化T2I生成的初始階段(即布局確定階段),我們引入了兩個輔助損失:熵損失和語義綁定損失。這些損失會在推理過程中迭代更新復合token,以提升生成的完整性。
- 熵損失(Entropy Loss):每個token的cross-attention map可以看作一個概率分布,這個分布的信息熵較大則說明這個token關注的區域較為發散。我們計算每個token對應的交叉注意力圖的熵值,并將其作為損失函數的一部分。通過最小化熵損失,我們確保每個token專注于其指定的區域,從而防止交叉注意力圖過于分散。
- 語義綁定損失(Semantic Binding Loss):語義綁定損失鼓勵復合token推斷出與原始對應短語相同的噪聲預測,從而進一步加強文本與生成圖像之間的語義一致性。具體來說,我們使用一個干凈的提示詞作為監督信號,確保復合token的語義準確對應它們代表的名詞短語。通過最小化語義綁定損失,我們確保復合token的語義信息與原始提示詞一致。
實驗
我們在T2I-CompBench基準上進行了定量比較,結果如表1所示。ToMe在顏色、紋理和形狀屬性綁定子集中,BLIP-VQA分數上始終優于或與現有方法相當,表明其可以有效地避免屬性混淆。通過ImageReward模型評估的人類偏好得分表明,由ToMe生成的圖像更能與提示詞對齊。
定性比較結果如下圖所示:
ToMe在名詞子對象和屬性綁定場景下表現出色,這與表1中反映的定量指標一致。具體來說,ToMe能夠有效地避免提示詞中的語義泄漏,確保每個對象與其屬性正確關聯。例如,在提示詞“一只戴著帽子的狗和一只戴著太陽鏡的貓”中,ToMe生成的圖像中帽子正確地戴在狗頭上,太陽鏡正確地戴在貓頭上。
消融實驗結果如表2所示。我們可以觀察到,僅使用token合并技術(Config B)帶來了輕微的性能提升,這與上圖中的定性結果一致。然而,token合并是后續優化的基礎。當它們與熵損失結合使用(Config C)時,性能顯著提升。我們推測部分原因是由于交叉注意力圖更加規范化,如圖7所示。然而,Config C在沒有語義綁定損失的情況下,仍然導致生成性能較差,如圖6所示,右側的狗仍然表現出類似貓的特征。加入語義對齊損失可以確保兩個主體正確綁定到各自的屬性上,而不會出現外觀混淆,從而在定量和定性上取得最佳結果。如果忽略token合并并僅應用優化(Config D和Config E),其性能僅與基線相當,這表明token合并是后續優化的基礎。移除熵損失(Config F)也可以改善基線,但生成結果中會有明顯的偽影,這主要是因為交叉注意力圖缺乏足夠的正則化。綜上所述,ToMe中這三種新技術的每個元素都對實現最先進的性能做出了貢獻。
結論與展望
在本文中,我們研究了文本生成圖像(T2I)模型中的一個關鍵難題,即語義綁定。該難題指的是T2I模型難以準確理解并將相關語義正確映射到圖像。我們發現了文本嵌入的語義耦合性和可加性,提出了一種無需訓練的新方法,稱為token合并,即ToMe,用于解決T2I生成中的語義綁定問題。ToMe通過創新性的將對象token與其相關token疊加為一個復合token。該機制通過統一交叉注意力圖,消除了語義錯位。此外,我們還結合了結束token替換和迭代復合token更新技術,進一步增強語義綁定。此外,本文發現的文本嵌入的可加性在其他領域也表現出一定的應用前景,如下圖所示,可用來括添加對象、移除對象,甚至用于消除偏見等任務。
本文轉自AI生成未來 ,作者:AI生成未來
