機器之心報導
作者:魔王、杜偉、蛋醬
藝術創作的事,以後人類只要動手打幾個字,其他的交給 AI 就行了。
自然語言與視覺的次元壁正在被打破。這不,OpenAI 最近連發大招,提出兩個連接文本與圖像的神經網絡:DALL·E 和 CLIP。DALL·E 可以基於文本直接生成圖像,CLIP 則能夠完成圖像與文本類別的匹配。OpenAI 的新工作引起了 AI 圈的一陣歡呼。
Coursera 創始人、史丹福大學教授吳恩達也表示祝賀,並選出了自己喜歡的「藍色襯衫 + 黑色長褲」AI 設計。
那麼,大佬打算購入幾件其他「藍色」的襯衫嗎
OpenAI 聯合創始人、首席科學家 Ilya Sutskever 表示:人工智慧的長期目標是構建「多模態」神經網絡,即 AI 系統能夠學習多個不同模態的概念(主要是文本和視覺領域),從而更好地理解世界。而 DALL·E 和 CLIP 使我們更接近「多模態 AI 系統」這一目標。
第一個神經網絡 DALL·E 可以將以自然語言形式表達的大量概念轉換為恰當的圖像。值得注意的是,DALL·E 使用了 GPT-3 同樣的方法,只不過 DALL·E 將其應用於文本 - 圖像對。
DALL·E 示例。給出一句話「牛油果形狀的椅子」,就可以獲得綠油油、形態各異的牛油果椅子圖像。
另一個神經網絡 CLIP 能夠可靠地執行一系列驚人的視覺識別任務。給出一組以語言形式表述的類別,CLIP 能夠立即將一張圖像與其中某個類別進行匹配,而且它不像標準神經網絡那樣需要針對這些類別的特定數據進行微調。在 ImageNet 基準上,CLIP 的性能超過 ResNet-50,在識別不常見圖像任務中的性能遠超 ResNet。
DALL·E:從文本生成圖像
DALL·E 是 GPT-3 的 120 億參數版本,經文本 - 圖像對數據集訓練後,可基於文本描述生成圖像。DALL·E 這個名稱來源於皮克斯動畫經典作品《機器人總動員(WALL·E)》。
有意思的是,它還可以將動物和物體擬人化,將一些無關的概念以一種合理的方式組合起來。
比如,穿著芭蕾 tutu 裙遛狗的胡蘿蔔:
細細觀察,可以看出 DALL·E 是怎樣將人體構造遷移到其他生物的。如果你想讓一支胡蘿蔔喝拿鐵咖啡或騎獨輪車,DALL·E 會把生成圖像中的方巾、手腳放在合理的位置。
還比如,生成寫著 OpenAI 的商店招牌:
通常 DALL·E 寫入的字符串越長,成功率會降低一些。而文字有重複的時候,成功率會變高。儘管樣本變得更簡單,但隨著採樣溫度的降低,成功率有時候會提升。
和 GPT-3 一樣,DALL·E 是一種 Transformer 語言模型。它以包含多達 1280 個 token 的單數據流形式接收文本和圖像,並利用最大似然進行訓練,逐個生成所有 token。
token 是來自不連續詞彙表的任意符號。對於人類來說,每個英文字母都是來自字母表的 token。DALL·E 的詞彙表有文本和圖像的 token。每個圖像的文本描述使用最大 256BPE 編碼的 token 表示,詞彙表的大小是 16384;圖像則使用 1024 個 token 表示,詞彙表大小是 8192。
在最新博客中,OpenAI 詳細介紹了 DALL·E 的「百變功能」,每一段文字的生成示例展示了 512 個生成結果中的前 32 名(根據 CLIP 的排序,過程中沒有任何人工參與挑選的步驟)。
控制屬性
在修改對象屬性的能力方面,研究者對 DALL·E 進行了測試。DALL·E 可以用多邊形形狀渲染熟悉的對象,甚至是在現實世界中不太可能發生的情況。比如這些詭異的「綠色鬧鐘」:
繪製多物體圖像
同時控制多個對象及其屬性、空間關係,是一個新的挑戰。比如「戴紅色帽子、黃色手套,穿藍色襯衫、綠色褲子的刺蝟」,DALL·E 生成效果如下:
儘管 DALL·E 對少量物體的屬性和位置提供了一定程度的可控性,但成功率可能仍取決於文本的表述方式。此外,DALL·E 還很容易混淆不同對象及其顏色之間的關聯。
可視化透視圖和三維圖
DALL·E 還可以控制場景視點和渲染場景的 3D 樣式,例如:
不同角度的美洲獅。
可視化內外部結構
DALL·E 還能夠渲染出橫截面視圖的內部結構,以及通過微距相片展現事物的外部結構。例如核桃的橫截面視圖:
推斷語境細節
文本轉圖像任務是非明確指定的,一個文本描述通常對應許多合理圖像,因此圖像並非唯一指定的。例如,對於文本描述「坐著看日出的水豚鼠」,可能需要根據水豚鼠的方位畫出陰影,儘管這並沒有在文本描述中明確提及。DALL·E 能夠解決以下三種情景中的非指定問題:改變風格、設置和時間;在不同場景中繪製相同的對象;生成帶有特定文本的對象(例如上文提到的寫著 OpenAI 的商店招牌)。
下圖展示了 AI 生成的「看日出的水豚鼠」,這些圖像具備不同的風格,如波普藝術風格、超現實主義風格、浮世繪風格等等。
時尚和室內設計
DALL·E 還可以應用到時尚設計與室內設計,例如身穿藍色襯衫和黑色褲子的櫥窗模特:
將不相關的概念結合起來
語言的複合性使得我們可以將多個概念組合在一起來描述真實和想像中的事物。而 DALL·E 也具備將不同 idea 結合起來併合成物體的能力,甚至有的物體在現實世界中並不存在。例如,將多種不同概念的特點遷移到動物身上,從不相關的概念中汲取靈感來設計產品(例如本文開頭提到的牛油果椅子)。
下列示例就將「豎琴」和「蝸牛」這兩個八竿子打不著的事物組合到了一起:
動物插圖
DALL·E 不僅能將不相關的概念連接到一起,它還能將這一能力應用到藝術領域。例如,動物和物體的擬人化版本、動物嵌合體和 emoji。
下圖展示了「長頸鹿龜」這一新物種:
奇怪的物種又增加了。
零次視覺推理
只需給出文本描述或提示,GPT-3 就能執行多種任務,且無需額外訓練。這種能力叫做「零次推理」(zero-shot reasoning)。而 DALL·E 將該能力擴展到視覺領域,在給出恰當提示的情況下,它能夠執行多種圖像翻譯任務。
例如給出文本「為上方貓圖提供簡筆畫版本」,你會得到:
不過,任務要求不同,得到圖像的可靠性也不相同。
地理知識
DALL·E 還能學習地理事實、地標建築和街區。它有時候可以非常精確地學習這些知識,但有時候又會在其他方面出現缺陷。例如,給出文本「中國美食」,它可以生成大量相關美食圖像,但無法完全涵蓋現實中我國美食的多樣性。
這些美食的確似曾相識,但又感覺並沒吃過
時間知識
DALL·E 的能力可不止於此,它還可以展示某個概念的時代變遷史。例如給出文本「上世紀 20 年代以來的手機圖像」,你將會得到各個年代的手機照片:
CLIP:連接文本與圖像
除了基於文本生成圖像的 DALL·E,OpenAI 還介紹了另一項工作 CLIP。
CLIP 旨在解決深度學習方法在計算機視覺領域中所面臨的的一些主要問題,如創建視覺數據集的人力和成本問題、數據集涵蓋的視覺概念過於狹窄、標準視覺模型只擅長一種任務且需要很多努力才能適應新任務、基準測試中表現良好的模型在壓力測試中表現糟糕等等。
為此,CLIP 模型在多種多樣的圖像上進行訓練,這些圖像具備多種自然語言監督,並且很容易在網絡上獲得。
在設計上,CLIP 可以利用自然語言獲得指導以執行多種分類基準任務,無需針對基準性能直接優化,這類似於 GPT-2 和 GPT-3 的「zero-shot」能力。這是一個關鍵改變:由於不直接針對基準進行優化,研究者發現 CLIP 更具有表徵性。該系統將這種「魯棒性差距」縮小了 75%,同時在不使用任何原始 1.28M 標註示例的情況下,CLIP 在 ImageNet zero-shot 上的性能媲美原版 ResNet 50。
下圖為 CLIP VIT-L 與 ResNet101 在 ImageNet 數據集上的性能對比。儘管兩者在原始 ImageNet 測試集上具有相同的準確率,但在不同的非 ImageNet 設置下測量準確率的數據集上,CLIP 更具有表徵性。
方法
CLIP 使用了大量可用的監督資源,即網絡上找到的文本 - 圖像對。這些數據用於創建 CLIP 的代理訓練任務,即給定一張圖像,然後預測數據集中 32,768 個隨機採樣文本片段中哪個與該圖像匹配。
為了解決這一任務,研究者認為 CLIP 模型需要學習識別圖像中各種各樣的視覺概念,並將這些概念與各自的名稱聯繫起來。這樣一來,CLIP 模型可用於幾乎所有視覺分類任務中。例如,如果數據集的任務是對狗和貓的照片進行分類,則我們會針對每張圖像檢查 CLIP 模型預測的文本描述「狗的照片」或「貓的照片」是否更有可能與之相匹配。
狗和貓照片的分類任務流程如下圖所示,其中包括對比預訓練、從標籤文本中創建數據集分類器和 zero-shot 預測。
CLIP 的亮點
CLIP 非常高效,它從未過濾、多種類和高噪聲的數據中學習,並希望以 zero-shot 的方式應用。為了減少所需的計算量,研究者重點探究了如何從算法角度提升 CLIP 的訓練效率。
研究者提供了兩種大幅降低計算量的算法。第一種算法採用對比目標(contrastive objective)來連接文本和圖像。他們最初探究了類似 VirTex 的圖像到文本方法,但在將其擴展以實現 SOTA 性能過程中遇到了困難。在中小規模試驗中,研究者發現,CLIP 使用的對比目標方法在 zero-shot ImageNet 分類中的效率提升了 3 至 9 倍。
第二種算法採用 Vision Transformer,使得計算效率相比標準 ResNet 有 3 倍提升。最後,表現最好的 CLIP 模型在 256 個 GPU 上訓練了 2 周左右的時間,這與目前大型圖像模型類似。
結果表明,經過 16 天的 GPU 訓練,在訓練 4 億張圖像之後,Transformer 語言模型在 ImageNet 數據集上僅實現了 16% 的準確率。CLIP 則高效得多,實現相同準確率的速度快了大約 9 倍。具體如下圖所示:
此外,CLIP 靈活且通用。這是因為 CLIP 模型直接從自然語言中學習多種多樣的視覺概念,所以比現有 ImageNet 模型更靈活且具有更強的通用性。研究者發現 CLIP 模型可以 zero-shot 執行很多不同任務。為了驗證這一點,研究者在包含細粒度目標檢測、地理定位以及視頻動作識別和 OCR 等任務的 30 多種不同數據集上測量了 CLIP 的 zero-shot 性能。
結果表明,在 26 個測試的不同遷移數據集上,表現最好的 CLIP 模型在其中 20 個數據集上優於 Noisy Student EfficientNet-L2(公開可用的最佳 ImageNet 模型)。具體如下圖所示:
局限性
雖然 CLIP 在識別常見對象時往往表現良好,但在計算圖像中對象數量等更抽象或更系統的任務,以及預測照片中最靠近車輛間的距離等更複雜任務上的表現不佳。在這兩項任務上,zero-shot CLIP 的效果也只比隨機猜測好一點。
此外,與特定於任務的模型相比,zero-shot CLIP 在非常細粒度的分類任務上表現不佳,比如區分汽車模型、飛機型號或者花卉種類等。CLIP 對其預訓練數據集中未涵蓋的圖像也表現出糟糕的泛化性能。
最後,研究者發現,CLIP 的 zero-shot 分類器對用詞或措辭也非常敏感,有時需要反覆試驗和誤差「prompt engineering」才能表現良好。
原文連結:
https://openai.com/blog/dall-e/
https://openai.com/blog/clip/
https://openai.com/blog/tags/multimodal/
© THE END
轉載請聯繫本公眾號獲得授權
投稿或尋求報導:content@jiqizhixin.com
原標題:《引燃AI社區,不用跨界也能從文本生成圖像,OpenAI新模型打破自然語言與視覺次元壁》
閱讀原文