DALL·E: 從文字生成圖像

OpenAI 已宣布 DALL·E,這是一種能夠從自然語言描述生成原始圖像的神經網路。透過利用 120 億參數的 Transformer 架構,DALL·E 能合成複雜場景、結合無關概念,並執行零樣本視覺推理。

架構與技術方法

DALL·E 是一種僅解碼器的 Transformer 語言模型,將文字和圖像視為單一資料流進行處理。該模型透過最大似然訓練以自回歸方式生成詞元。

詞元化與資料流

  • 輸入/輸出串流: 模型每個序列總共處理 1,280 個詞元,其中 256 個詞元用於文字提示,1,024 個詞元用於圖像。
  • 詞彙表: 文字採用 BPE 編碼的詞元表示,詞彙表大小為 16,384。圖像透過預訓練的離散 VAE 壓縮為 32x32 離散潛在碼的網格,詞彙表大小為 8,192。
  • 注意力機制: 模型具備 64 層自注意力層。圖像詞元可以關注所有文字詞元,而文字詞元使用標準因果遮罩。圖像詞元根據層採用稀疏注意力模式(行、列或卷積)。

圖像生成與優化

DALL·E 能從零開始生成圖像,或重新生成現有圖像的矩形區域(延伸至右下角)以保持與文字提示的一致性。為了在示範中提升輸出品質,OpenAI 使用 CLIP 對離線生成的 512 個樣本中的前 32 名進行重新排序。

核心能力

DALL·E 展現出多樣化的能力,使其能透過語言操控視覺概念。

組合控制與屬性

  • 屬性修改: 模型可以修改物件的屬性以及物件在場景中出現的次數。
  • 多個物件: DALL·E 能管理多個物件、它們的屬性以及空間關係(例如,「一隻戴著紅帽子、黃手套、藍襯衫和綠褲子的刺蝟」)。然而,隨著物件數量增加,效能會下降,且當標題被重新表述時,模型可能變得脆弱。

視角與結構

  • 視角控制: DALL·E 能控制場景的視角和 3D 渲染風格,包括透過在等間隔角度繪製人物來生成旋轉頭部的平滑動畫。
  • 光學失真: 模型可以應用诸如「魚眼鏡視圖」和「球體全景」之類的效果。
  • 內部與外部細節: 模型可透過橫截面視圖渲染內部結構,並透過微距照片和「X 光」風格呈現外部結構。

上下文推論

與需要明確規格的 3D 渲染引擎不同,DALL·E 能「填補空白」來處理描述不足的標題。例如,即使標題未明確提及陰影,它也能推斷出在日出時的草原上描述水豚時需要陰影。

進階推理與知識

零樣本視覺推理

DALL·E 展現出零樣本推理的新興能力,使其能在未針對該任務進行特定訓練的情況下執行圖像到圖像的翻譯任務。此能力在訓練過程中並未被明確鼓勵。

世界知識

  • 地理知識: 模型已學習關於地標和社區的事實,儘管其精確度有所變化。
  • 時間知識: DALL·E 能表示隨時間變化的概念。

概念合成

  • 擬人化: 模型能創造動物和物件的擬人化版本。
  • 概念結合: DALL·E 能透過結合無關概念來合成物件,例如根據無關概念設計產品(如以牛油果形狀設計的扶手椅)。

Sources