來自新智元
在幾年前,要說 AI 能直接用一段文字描述生成清晰的影象,那可真是天方夜譚。
結果現在,Transformer 的出現徹底帶火了「多模態」這一領域。
照著文字「腦補」影象居然都不稀奇了!
更誇張的是,竟然有 AI 已經可以用文字描述去生成一段影片了,看上去還挺像模像樣的。
這個 AI 不僅看文字描述可以生成影片,給它幾幅草圖,一樣能「腦補」出影片來!
這麼秀的 AI 出自何方神聖啊?
答案是微軟亞洲研究院 + 北京大學強強聯合的研究團隊!
最近,微軟可謂是跟 OpenAI「幹」上了。
前腳剛推出取得了 40 多個新 SOTA 的 Florence「佛羅倫薩」吊打 CLIP,橫掃 40 多個 SOTA。
後腳就跟著放出 NÜWA「女媧」對標 DALL-E。
今年 1 月,OpenAI 官宣了 120 億引數的 GPT-3 變體 DALL-E。
論文地址:https://arxiv。org/pdf/2102。12092。pdf
DALL-E 會同時接收文字和影象作為單一資料流,其中包含多達 1280 個 token,並使用最大似然估計來進行訓練,以一個接一個地生成所有的 token。
這個訓練過程讓 DALL-E 不僅可以從頭開始生成影象,而且還可以重新生成現有影象的任何矩形區域,與文字提示內容基本一致。
從文字「一個穿著芭蕾舞裙遛狗的蘿蔔寶寶」生成的影象示例
同時,DALL-E 也有能力對生成的影象中的物體進行操作和重新排列,從而創造出一些根本不存在的東西,比如一個「一個長頸鹿烏龜」:
這次,MSRA 和北大聯合團隊提出的統一多模態預訓練模型 ——NÜWA(女媧),則可以為各種視覺合成任務生成新的或編輯現有的影象和影片資料。
論文地址:https://arxiv。org/pdf/2111。12417。pdf
GitHub 地址:https://github。com/microsoft/NUWA
為了在不同場景下同時覆蓋語言、影象和影片,團隊設計了一個三維變換器編碼器 - 解碼器框架,它不僅可以處理作為三維資料的影片,還可以適應分別作為一維和二維資料的文字和影象。
此外,論文還提出了一個 3D 鄰近注意(3DNA)機制,以考慮視覺資料的性質並降低計算的複雜性。
在 8 個下游任務中,NÜWA 在文字到影象生成、文字到影片生成、影片預測等方面取得了新的 SOTA。其中,在文字到影象生成中的表現直接超越 DALL-E。
同時,NÜWA 在文字引導的影象和影片編輯任務中顯示出優秀的 zero-shot 能力。
NÜWA 模型支援的 8 種典型視覺生成任務
8 大 SOTA 效果搶先看
文字轉影象(Text-To-Image,T2I)
草圖轉影象(SKetch-to-Image,S2I)
影象補全(Image Completion,I2I)
用文字指示修改影象(Text-Guided Image Manipulation,TI2I)
文字轉影片(Text-to-Video,T2V)
影片預測(Video Prediction,V2V)
草圖轉影片(Sketch-to-Video,S2V)
用文字指示修改影片(Text-Guided Video Manipulation,TV2V)
NÜWA 為啥這麼牛?
NÜWA 模型的整體架構包含一個支援多種條件的 adaptive 編碼器和一個預訓練的解碼器,能夠同時使影象和影片的資訊。
對於影象補全、影片預測、影象處理和影片處理任務,將輸入的部分影象或影片直接送入解碼器即可。
NÜWA 的結構概述
模型支援所有文字、影象、影片輸入,並將他們統一視作 token 輸入,所以可以定義一個統一的向量表示 X,維度包括高度 h、寬度 w,時間軸上的 token 數量 s,每個 token 的維度 d。
文字天然就是離散的,所以使用小寫後的 byte pair encoding (BPE)來分詞,最終的維度為 1×1×s×d 中。因為文字沒有空間維度,所以高度和寬度都為 1。
影象輸入是連續的畫素。每個影象輸入的高度為 h、寬度為 w 和通道數為 c。使用 VQ-VAE 訓練一個編碼把原始連續畫素轉換為離散的 token,訓練後 B [z] 的維度為 h×w×1×d 作為影象的表示,其中 1 代表影象沒有時序維度。
影片可以被視為影象的一種時序展開,最近一些研究如 VideoGPT 和 VideoGen 將 VQ-VAE 編碼器中的卷積從 2D 擴充套件到 3D,並能夠訓練一種針對影片輸入的特殊表徵。
但這種方法無法使影象和影片的表示統一起來。研究人員證明了僅使用 2D VQ-GAN 就能夠編碼影片中的每一幀,並且能生成時序一致的影片,結果表示維度為 h×w×s×d,其中 s 代表影片的幀數。
對於影象素描(image sketch)來說,可以將其視為具有特殊通道的影象。
H×W 的影象分割矩陣中每個值代表畫素的類別,如果以 one-hot 編碼後維度為 H×W×C,其中 c 是分割類別的數目。透過對影象素描進行額外的 VQ-GAN 訓練,最終得到影象 embedding 表示維度為 h×w×1×d。同樣地,對於影片草圖的 embedding 維度為 h×w×s×d。
基於統一的 3D 表示,文中還提出一種新的注意力機制 3D Nearby Self-Attention (3DNA) ,能夠同時支援 self-attention 和 cross-attention。
3DNA 考慮了完整的鄰近資訊,併為每個 token 動態生成三維鄰近注意塊。注意力矩陣還顯示出 3DNA 的關注部分(藍色)比三維塊稀疏注意力和三維軸稀疏注意力更平滑。
不同的三維稀疏注意力機制的比較
基於 3DNA,文中還引入了 3D encoder-decoder,能夠在條件矩陣 Y 為 h‘×w’×s‘×d^ 的情況下,生成 h×w×s×d^ 的目標矩陣 C,其中 Y 和 C 由三個不同的詞典分別考慮高度,寬度和時序維度。
然後將條件 C 和一個堆疊的 3DNA 層輸入到編碼器中來建模自注意力的互動。
解碼器也是由 3DNA 層堆疊得到,能夠同時計算生成結果的 self-attention 和生成結果與條件之間的 cross-attention。
最終的訓練包含了三個目標任務 Text-to-Image(T2I), Video Prediction (V2V) 和 Text-to-Video(T2V),所以目標函式包含三部分。
對於 T2I 和 T2V 任務,C^text 表示文字條件。對於 V2V 任務,由於沒有文字輸入,所以 c 為一個常量,單詞 None 的 3D 表示,θ 表示模型引數。
實驗結果
文字轉影象(T2I)
作者使用 FID-k 和 Inception Score(IS)來分別評估質量和種類,並使用結合了 CLIP 模型來計算語義相似度的 CLIPSIM 指標。
公平起見,所有的模型都使用 256×256 的解析度,每個文字會生成 60 張影象,並透過 CLIP 選擇最好的一張。
可以看到,NÜWA 以 12。9 的 FID-0 和 0。3429 的 CLIPSIM 成績,明顯地優於 CogView。
在 MSCOCO(256×256)資料集上與 SOTA 的定量比較
儘管 XMC-GAN 的 FID 分數為 9。3,但與 XMC-GAN 的論文中完全相同的樣本相比,NÜWA 生成的影象更加真實。特別是在右下角的那個例子中,男孩的臉更清晰,氣球也是正確的。
在 MSCOCO(256×256)資料集上與 SOTA 的定性比較
文字轉影片(T2V)
作者在 Kinetics 資料集上與現有的 SOTA 進行了比較,其中,在 FID-img 和 FID-vid 指標上評估視覺質量,在生成影片的標籤準確性上評估語義一致性。
顯然,NÜWA 在上述所有指標上都取得了 SOTA。
在 Kinetics 資料集上與 SOTA 的定量比較
此外,對於生成未見過的文字來說,NÜWA 在定性比較中顯示出了強大的 zero-shot 能力,如「在游泳池打高爾夫球」以及「在海上跑步」。
在 Kinetics 資料集上與 SOTA 的定性比較
影象補全(I2I)
作者定性地比較了 NÜWA 的 zero-shot 影象補全能力。
在只有塔的上半部分的情況下,與 Taming Transformers 相比,NÜWA 在對塔的下半部分進行補全時,展現出更豐富的想象力,自主添加了建築、湖泊、鮮花、草地、樹木、山脈等等。
以 zero-shot 方式與現有 SOTA 進行定性比較
影片預測(V2V)
作者在 BAIR 資料集上進行了定量比較,其中,Cond。 表示預測未來幀的幀數。
為了進行公平的比較,所有的模型都使用 64×64 的解析度。儘管只給了一幀作為條件(Cond。),NÜWA 仍將 FVD 的 SOTA 得分從 94±2 推至 86。9。
在 BAIR(64×64)資料集上與 SOTA 的定量比較
草圖轉影象(S2I)
透過定性比較在 MSCOCO 上的表現可以看到,與 Taming-Transformers 和 SPADE 相比,NÜWA 生成的影象種類更多,有的甚至連窗戶上的反射也清晰可見。
在 MSCOCO 資料集上與 SOTA 的定性比較
用文字引導影象修改(TI2I)
作者以 zero-shot 的方式對 NÜWA 和現有 SOTA 進行了定性的比較。
與 Paint By Word 相比,NÜWA 表現出了很強的編輯能力,在不改變影象其他部分的情況下,產生了高質量的結果。這得益於透過對各種視覺任務進行多工預訓練而學到的真實世界的視覺模式。
比如在第三個例子中,由 NÜWA 生成的藍色卡車更加逼真,而且後方的建築物也沒有產生奇怪的變化。
另一個優點是 NÜWA 的推理速度,只需要 50 秒就能生成一幅影象,而 Paint By Words 在推理過程中需要額外的訓練,並需要大約 300 秒才能收斂。
以 zero-shot 方式與現有 SOTA 進行定性比較
結論
文章提出了一種統一的預訓練模型 NÜWA,這個女媧不光能補天,也能造圖,可以為 8 個視覺合成任務生成新的或操作現有的影象和影片。
還提出了一個通用的 3D encoder-decoder 框架,能夠同時覆蓋文字、影象和影片。能同時考慮空間和時序維度的 3D nearby-sparse attention 機制。
這也是邁向人工智慧平臺的重要一步,能夠讓計算機擁有視覺,並輔助內容創作者生成一些人類想象力以外的事。
參考資料:
https://arxiv。org/abs/2111。12417
https://github。com/microsoft/NUWA