AI繪畫火了!一文看懂背後技術原理

語言: CN / TW / HK

圖片

圖片

導語 | 近些年AI蓬勃發展,在各行各業都有着不同方式的應用。而AI創作藝術和生產內容無疑是今年以來最熱門的話題,AI創作到底發生過什麼,原理又是如何,是噱頭還是會有對我們有用的潛在應用場景呢?我們旨在深入淺出的嘗試回答這些問題。

圖片

AI創作怎麼火了?

今年開始,文本描述自動生成圖片(Text-to-Image)的AI繪畫黑科技一下子變火了。很多人對AI繪畫產生巨大興趣是從一副AI作品的新聞開始的。這幅由MidJourney生成的數字油畫參加了Colorado博覽會的藝術比賽,並且獲得了第一名。這個事件可以想象的引起了巨大的爭論。(難道300刀的獎金撬起了3千億的市場?)

圖片

Jason Allen’s A.I.-generated work, “Théâtre D’opéra Spatial,” took first place in the digital category at the Colorado State Fair.Credit…via Jason Allen

Disco Diffusion是今年2月爆火的AI圖像生成程序,可以根據描述的場景關鍵詞渲染對應的圖片。今年4月,大名鼎鼎的OpenAI也發佈了新模型DALL-E 2,命名來源於著名畫家Dali和機器人總動員Wall-E,同樣支持Text-to-Image。在年初的時候,Disco Diffusion可以生成一些有氛圍感的圖片,但還無法生成精緻的人臉,但很快到了DALL-E 2後就可以非常清晰的畫出人臉了。而現在到了Stable Diffusion在創作的精緻程度和作畫速度上更上了一個新的台階。

圖片

Disco Diffusion: Mechanical arm with a paint brush and a canvas by Li Shuxing and Tyler Edlin

圖片

DALL-E2: 將Johannes Vermeer 的名畫“戴珍珠耳環的女孩”轉換生成不同的面孔

圖片

Stable Diffusion: a beautiful painting of a building in a serene landscape

2022年8月,被視為當下最強的AI創作工具Stable Diffusion正式開放,這無疑進一步給AI創作帶來了最近的火熱。通過網站註冊就可以使用,提供了方便簡潔的UI,也大大降低了這類工具的使用門檻,而且效率高,圖像質量好。而如果不想花錢的話,Stable Diffusion還正式開源了代碼、模型和weights,在huggingface上都可以直接clone和下載,部署到GPU上就可以隨便用了。huggingface上同時也已經有了diffusers庫,可以成為調包俠直接使用,colab上也都有現成的notebook example了。也因此熱度,推出Stable Diffusion的AI公司StabilityAI完成了1億美元的種子輪融資,公司估值達到了10億美元。

圖片

Stable Diffusion開源後的搜索熱度已經保持兩個月了

和機器學習剛開始火的時候一樣,AI生成技術也並不是憑空出現的。只是近一兩年以來,作品的質量和計算速度日益快速提升,讓我們忽略了AI繪畫同樣悠久的歷史。

圖片歷史發展

AI繪畫在計算機出現後不久就已經開始有了最初的探索。在70年的時候藝術家Harold Cohen就已經創造了程序“AARON”進行繪畫,而不同於現在的黑科技,當時AARON是真的去操作機械臂來畫畫。Harold對AARON的改進持續了很久,80年代的時候,ARRON可以嘗試畫三維物體,並且很快就可以畫彩圖了。但AARON沒有開源,所以它學習的是Harold本人的抽象色彩繪畫風格。2006年,出現了The Painting Fool,有點類似AARON,通過觀察照片提取顏色信息,使用現實中的材料進行創作,所以同樣電腦程序通過學習信息就行物理繪畫的方式。

圖片

現在我們説的更多的“AI創作”的概念,更多的指的是基於Deep Learning模型進行自動作圖的程序,這種繪畫方式得益於近些年計算機軟硬件的高速發展。2012年兩位大神Andrew Ng和Jeff Dean進行了一次實驗,使用1.6萬個CPU和Youtube上一千萬個貓臉圖片用了3天訓練了當時最大的深度學習網絡,生成了一個貓臉。在現在看來這個結果不值一提,但對當時的CV領域來説,是具有突破性的意義的嘗試,並且正式開啟了AI創作的全新方向。

圖片

2006年,李飛飛教授發現了很多研究工作在AI算法方面忽略了“數據”的重要性,於是帶頭開始構建大型圖像數據集 - ImageNet,也因此圖像識別大賽由此拉開帷幕,三年後李飛飛團隊發表了ImageNet的論文從而真正發佈了ImageNet數據集,給AI創作提供了強大的數據庫。同樣2006年,Geoffrey Hilton團隊實現了GPU優化深度神經網絡的方法,從而“深度學習”這個新名詞的概念被提出,各種Neural Networks的技術手段開始不斷出現,深度學習的發展也加速了AI在兩個賽道Discriminative model和Generative model的發展。2012年的AlexNet,2014年的VGGNet,2015年的ResNet,2016年的DenseNet都是前者的經典模型。

而對於Generative model,2014年大神Ian Goodfellow提出了GAN,兩個神經網絡互相學習和訓練,被認為是CV領域的重大突破,通過兩個神經網絡的相互博弈,使得生成的數據分佈更接近真實數據分佈。從此2014年的GAN、VAE以及2016年的PixelRNN/CNN成為了三類主流的Generative models。2017-2018年深度學習框架也建設成熟,PyTorch和Tensorflow成為首選框架,提供了很多圖像處理的大量預訓練模型,大大降低了技術門檻。2018年,Nvidia發佈了Video-to-Video synthesis,它可以通過發生器、鑑別器網絡等模塊,合成高分辨率照片一樣真實的視頻,實現了把AI推向新的創造場景。GAN的大規模使用,也出現了很多基於GAN的模型迭代和優化,2019年BigGAN的出現讓GAN的世界更強大,由它訓練生成的圖像已經無法分辨真假了,被認為是當時最強的圖像生成器。

但是GAN依然存在一些缺陷,比如一些研究中都有提到模型的穩定性和收斂較差,尤其是面對更加複雜和多樣的數據。更為重要的是,讓生成的數據分佈接近真實數據分佈,也就是接近現有的內容的樣子同樣會形成一個問題,就是生成的內容是非常接近現有內容,接近也就是沒法突破帶來藝術上的“創新”。

而2020年開始在圖片生成領域研究更多的Diffusion model克服了這些問題。Diffusion model的核心原理就是給圖片去噪的過程中理解有意義的圖像是如何生成的,同時又大大簡化了模型訓練過程數據處理的難度和穩定性問題。所以Diffusion模型生成的圖片相比GAN模型京都更高,且隨着樣本數量和訓練時長的累積,Diffusion model展現了對藝術表達風格更好的模擬能力。2021年的對比研究表明,在同樣的ImageNet的數據庫訓練後的圖片生成質量,使用Diffusion model得到的FID評估結果要優於當時最好的Generative models BigGAN-deep等等。

正如開頭提到,今年的AI熱點屬於文本創作內容,而其實一直到2021年初,OpenAI發佈的DALL-E其AI繪畫水平也就一般,但這裏開始擁有的一個重要能力就可以按照文本描述進行創作。然後今年2022年,在三座大山Stable Diffusion、DALL-E 2、MidJourney生成的各種畫作中,已經引起了各種人羣包括開發者、藝術家、美術工作者等等的興趣嘗試和爭論。Stable Diffusion的開源和簡單的過濾器功能無疑將Text-to-Imagede的熱點和爭議推向了高潮。

而很快大廠們不再只侷限於圖片,同時又推出了Text-to-Video的產品。Meta在剛過去的九月底宣佈了新的AI產品Make-A-Video,使用者可以同樣使用文本的方式生產簡潔和高質量的短視頻,他們的説明是系統模型可以從文本-圖片配對數據中學習這個世界的樣子並從視頻片段中推理沒有文本情況下的世界變化。從實現場景來看也有多種使用方式,比如文本描述不同類型的場景動作、使用單張或一對圖片生成變化視頻、在原始視頻中加入額外的元素和變化,Meta也表明了他們之後會發布demo工具。很快在十月初,Google也發佈了他們新的AI產品Imagen Video,同樣是使用文本生產視頻的工具。Imagen Video還在研發階段,但Google的學術論文表明瞭這個工具可以通過文本描述生產24 fps的分辨率在1280x768的視頻,同時可以有風格化能力和物體3D旋轉能力。文章還表明Imagen Video在文本內容的視頻呈現上也會相對於優於DALL-E和Stable Diffusion。又沒過幾天,Google和Phenaki宣佈了另一個文本生產視頻工具Phenaki,甚至可以生產2分鐘以上較長的視頻。Google同時也説明了“問題數據”對於AI模型的影響和潛在的風險,公司一直致力於嚴謹過濾暴力和色情內容以及文化偏差等問題,因此短期內並不會開源Imagen Video模型,但我們相信不久的將來,不管通過工具或者源代碼的方式,這些cutting-edge的視頻生產模型也會和圖片生產模型一樣很快和AI創作者們相見。

圖片

既然有了Text-to-Image和Text-to-Video,那Text-to-Speech肯定也要蹭一下熱度。10月中旬postcast.ai發佈了一段音頻是跟用AI生成的跟Steve Jobs的對話火了(新聞),從語音語調上聽起來真的和Steve本人沒有差別,完全不像是機器人的聲音。而技術提供方play.ht在他們的網站上也上線了新的這個非常有吸引力的功能Voice Cloning,上面提供各種名人的AI合成聲音。他們並沒有提供更多的技術信息,但看起來他們使用了2020年上線並在2021年底開放的GPT3模型,同時從效果上看起來已經非常接近複製真人的聲音了。

圖片

圖片

技術解讀

看到歷史和一些生動的例子,是不是覺得AI生成各種內容已經就在眼前了?我們可以隨便寫幾句話就能生成精美的圖片、視頻、聲音滿足各種需求了?但是實際操作上依然會有很多的限制。下面我們就來適當剖析一下最近較熱的文本生成圖片和視頻技術原理,到底實現了什麼功能以及相關的侷限性在哪裏,後面我們再針對實際遊戲內容做一些demo,更貼合應用場景的瞭解這些侷限性。

(一)Text-to-Image技術

不同的AI圖片生成器技術結構上會有差別,本文在最後也附上了一些重要模型的參考文獻。我們在這裏主要針對最近熱門的Stable Diffusion和DALL-E 2做一些解讀和討論。這類的AI生成模型的核心技術能力就是,把人類創作的內容,用某一個高維的數學向量進行表示。如果這種內容到向量的“翻譯”足夠合理且能代表內容的特徵,那麼人類所有的創作內容都可以轉化為這個空間裏的向量。當把這個世界上所有的內容都轉化為向量,而在這個空間中還無法表示出來的向量就是還沒有創造出來的內容。而我們已經知道了這些已知內容的向量,那我們就可以通過反向轉化,用AI“創造”出還沒有被創造的內容。

  • Stable Diffusion

Stable Diffusion的整體上來説主要是三個部分,language model、diffusion model和decoder。

圖片

Language model主要將輸入的文本提示轉化為可以輸入到diffusion model使用的表示形式,通常使用embedding加上一些random noise輸入到下一層。

diffusion model主要是一個時間條件U-Net,它將一些高斯噪聲和文本表示作為模型輸入,將對應的圖像添加一點高斯噪聲,從而得到一個稍微有噪點的圖像,然後在時間線上重複這個過程,對於稍微有噪點的圖像,繼續添加高斯噪聲,以獲得更有噪點的圖像,重複多次到幾百次後就可以獲得完全嘈雜的圖像。這麼做的過程中,知道每個步驟的圖像版本。然後訓練的NN就可以將噪聲較大的示例作為輸入,具有預測圖像去噪版本的能力。

在訓練過程中,還有一個encoder,是decoder的對應部分,encoder的目標是將輸入圖像轉化為具有高語義意義的縮減採樣表示,但消除與手頭圖像不太相關的高頻視覺噪聲。這裏的做法是將encoder與diffusion的訓練分開。這樣,可以訓練encoder獲得最佳圖像表示,然後在下游訓練幾個擴散模型,這樣就可以在像素空間的訓練上比原始圖像計算少64倍,因為訓練模型的訓練和推理是計算最貴的部分。

decoder的主要作用就是對應encoder的部分,獲得擴散模型的輸出並將其放大到完整圖像。比如擴散模型在64x64 px上訓練,解碼器將其提高到512x512 px。

  • DALL-E 2

DALL-E 2其實是三個子模塊拼接而成的,具體來説:

  • 一個基於CLIP模型的編碼模塊,目標是訓練好的文本和圖像encoder,從而可以把文本和圖像都被編碼為相應的特徵空間。
  • 一個先驗(prior)模塊,目標是實現文本編碼到圖像編碼的轉換。
  • 一個decoder模塊,該模塊通過解碼圖像編碼生成目標圖像。

在本篇文章開始前,希望你可以瞭解go的一些基本的內存知識,不需要太深入,簡單總結了如下幾點:

圖片

從上面的模型拆解中可以看出,DALL-E 2和Stable Diffusion的text encoder都是基於openAI提出的CLIP,圖像的生成都是基於diffusion model。其中,CLIP是學習任意給定的圖像和標題(caption)之間的相關程度。其原理是計算圖像和標題各自embedding之後的高維數學向量的餘弦相似度(cosine similarity)。

圖片

(二)Text-to-Video技術

文本生成視頻大概從2017年就開始有一些研究了,但一直都有很多限制。而從今年10月初Meta宣佈了他們的產品Make-A-Video以及Google宣佈了Imagen Video。這兩款都是創新了Text-to-Video的技術場景。而這兩款最新產品都是從他們的Text-to-Image產品衍生而言的,所以技術實現方式也是基於Text-to-Image的技術演變而成。

本質上來説我們可以認為靜態圖片就是隻有一幀的視頻。生成視頻需要考慮圖片中的元素在時間線上的變化,所以比生成照片會難很多,除了根據文本信息生成合理和正確的圖片像素外,還必須推理圖片像素對應的信息如何隨時間變化。這裏我們主要根據Make-A-Video的研究論文做一下拆解。

  • Meta’s Make-A-Video

Make-A-Video正是建立在text-to-Image技術最新進展的基礎上,使用的是一種通過時空分解的diffusion model將基於Text-to-Image的模型擴展到Text-to-Video的方法。原理很直接:

  • 從文本-圖像數據裏學習描述的世界長什麼樣(文本生成圖像)
  • 從無文本的視頻數據中學習世界的變化(圖像在時間軸上的變化)

訓練數據是23億文本-圖像數據(Schuhmann et al),以及千萬級別的視頻數據(WebVid-10M and HD-VILA-100M)。

整體上來説Make-A-Video也是有三個重要組成部分,所有的組成部分都是分開訓練:

  • 基於文本圖像pair訓練的基本的Text-to-Image的模型,總共會用到三個網絡:
  • Prior網絡:從文本信息生成Image特徵向量,也是唯一接收文本信息的網絡。
  • Decoder網絡:從圖像特徵網絡生成低分辨率64x64的圖片。
  • 兩個空間的高分辨率網絡:生成256x256和768x768的圖片。
  • 時空卷積層和注意層,將基於第一部分的網絡擴展到時間維度
  • 在模型初始化階段擴展包含了時間維度,而擴展後包括了新的注意層,可以從視頻數據中學習信息的時間變化
  • temporal layer是通過未標註的視頻數據進行fine-tune,一般從視頻中抽取16幀。所以加上時間維度的decoder可以生成16幀的圖片
  • 以及用於高幀速率生成的插幀網絡

空間的超分辨率模型以及插幀模型,提高的高幀速率和分辨率,讓視覺質量看起來更好。

圖片

整體評估上都要優於今年早些時期的研究:

圖片

優勢:

  • 這裏的好處很明顯就是不再需要使用大量的文本視頻pair數據來訓練模型。
  • 因此也大大加速了模型訓練時間。
  • 繼承了現在最好的文本生成圖像模型的優質結果。

*前兩點都是之前text-to-video生成模型發展的瓶頸。

限制:

  • 這個方法無法學習只能從視頻中得到的關係文本和現象的關係,比如一個人是從左往右揮手還是從右往左揮手的的視頻細節。
  • 目前限於簡單的動作和變化,包括多個場景和事件的較長視頻,或者更多的視頻中展現的故事細節很難實現。
  • 一樣是使用大量公開數據的大規模模型,一樣有用於生產有害內容的風險。
  • Google’s Imagen Video

是由7個串聯的子模型構成,模型包含多達116億個參數,其中T5是一個language model用來理解文本語義,Base是負責生產視頻中的關鍵幀,SSR模型提升視頻的像素,TSR負責填充關鍵幀之間輔助幀。

圖片

圖片

能夠實現的技術應用場景

通過底層技術尤其在CV、NLP相關的各類模型在不同內容和多模態場景中的嘗試和迭代,對於AI創作和內容生產同樣無外乎在不同類型內容(文本、音頻、圖像、視頻)生產和內容跨類型的生產場景。下圖很好地總結了這些實際中可以使用的技術場景。

圖片

圖片

針對遊戲內容的Demo

這些技術實現是否同樣能給我們提供遊戲相關的應用場景呢?我們在這裏針對相對較為成熟的圖像相關的生成場景做了幾個demo嘗試。整體上來説在我們遊戲中台相關的業務場景中是有一些應用點的。下面看一下這幾個demo的樣子。

(一)文本生成圖像

針對莊周這個英雄的樣子我們使用工具和代碼都嘗試了一下如何能夠生產不同風格的莊周

遊戲中的樣子:

圖片

經過我們以下描述後的樣子,同時也可以加上卡通、二次元、素描等等風格的描述,我們得到各種不同風格類型的樣子:

Ultra detailed illustration of a butterfly anime boy covered in liquid chrome, with green short hair, beautiful and clear facial features, lost in a dreamy fairy landscape, crystal butterflies around, vivid colors, 8k, anime vibes, octane render, uplifting, magical composition, trending on artstation

圖片

我們在各種嘗試的過程中很明顯的感知和發現一些限制:

  • 文本描述生成的結果會有一些隨機性,生成的圖片大概率是很難完全按照“需求”生成,更多帶來的是“驚喜”,這種驚喜在一定的層面上代表的也是一種藝術風格。所以在實際的使用中並不是很適用於按照嚴格要求生產圖片的任務,而更多的適用於有一定的描述,能夠給藝術創意帶來一些靈感的迸發和參考。
  • 文本的準確描述對於生成的圖片樣子是極其重要的,技術本身對文本描述和措辭有較高要求,需對腦海中的核心創意細節有較為準確的描述。
  • 生產Domain-specific例如騰訊遊戲高度一致的內容元素需對預訓練大模型進行再訓練。

而文本生成視頻的場景相對很新,Google/Meta也是這兩三週才官宣對應的視頻生成器,且還沒有開放使用和開源,但我們預估以目前的熱度和迭代速度,在未來的3-6個月內我們可以對相關能力有更清晰的探索和嘗試。

(二)圖像融合和變換

圖像本身的融合變換在早幾年的時候就已經有了一些研究和探索,且有了相對較為成熟的生成的樣子,這裏我們使用和平精英的素材嘗試做一種變換風格的樣子。

和平精英素材原圖和星空:

圖片

更加深度的將星空的顏色和變化融合到原始圖片中:

圖片

相對較淺度的將星空的顏色像素融合到原始圖片中:

圖片

另外一種很有意思的方式是,我們可以變換人物風格,比如王者英雄不知火舞和亞瑟在我們印象的樣子,我們可以把他們Q化成數碼寶貝的樣子:

不知火舞

圖片

圖片

圖片

亞瑟

圖片

圖片

圖片

試想一下,這些不同的技術實現甚至都可以串聯在一起,比如我們可以先用文本描述生成圖片,再對圖片進行風格變換等等,那這裏可以操作的事情就越來越多了,這裏就不一一展開了。

而再進一步思考(發自懶人的思考),我們是不是都不用去思考文本怎麼寫?有沒有幫忙生成文本或者我們可以搜索之前生成過的文本?答案是有,比如Phraser就提供了這樣的方式,甚至可以通過圖片搜索相關的文本:

圖片

圖片

AI創作的意義及風險

(一)意義

正如開頭提到,今年的AI熱點屬於AI創作,從2月的Disco Diffusion,到4月的DALL-E 2和MidJourney內測,到5/6月的Google模型Imagen和Parti,再到7月底的Stable Diffusion。越來越多的人開始嘗試AI創作圖像、聲音、視頻、3D內容等等,這讓我們看到了AI在藝術領域越來越多的可能性。

十多年前當世界都開始為AI和機器學習歡呼的時候,我們看到了很多AI可以做的事情,而“創作力”和“想象力”也是一直以來AI最無法啃動的硬骨頭,也是人類世界在AI和機器取代面前最後的倔強,然而現在看起來也是可以被技術拆解的。

從Alpha GO身上,我們就看到了AI在智慧和謀略上就已經突破了人類極限,而AI創作又進一步在創造力和想象力逐漸取代人類。在未來,一個各方面成熟的AI完全取代人類看起來已經是越來越現實的問題。如果AI未來可以完成計算機領域上下游所有的事情包括自己寫代碼,那麼人類需要思考的問題就是如何和一個超越自己所有方面的人共存於世了。

(二)風險

AI創作的大火在很長時間以後回頭看一定有Stable Diffusion的開源的一席之地,同樣這也會帶來一些爭議和風險。Stability AI的開源是簡單粗暴的,他們幾乎不對生成內容做任何審核或者過濾,他們只包含了一些關鍵詞過濾,但技術上可以輕鬆繞過,Reddit上就有教程如何5秒內移除Stable Diffusion的安全過濾。因此用户可以輕鬆指控Stable Diffusion生成暴力或不良圖片,描繪公眾人物和名人,也可以高度仿製藝術品或者有版權保護的圖像,aka deepfakes。

由此我們也可以設想這項技術可能被用於各類惡意和影響巨大的用途,我們還很難判斷在更久的未來,這項技術的開源是會給我們更大的技術革新還是各種問題。目前最大的亂子可能就是Stable Diffusion讓生成暴力和色情圖像變得更容易,且內容中往往包含真人特徵。雖然開源説明禁止人們使用該模型實施各類犯罪行為,但只要把Stable Diffusion下載到自己的電腦上,使用者可以完全不守約束。雖然很多論壇例如Reddit有不少約束政策且會封禁相關內容,但仍有用户不斷生成各種名人明星的荒誕圖像,AI生成內容的倫理問題再次會出現在風口浪尖。

在AI創作內容的這些模型中,訓練數據中一類很明顯的視覺素材就是受版權保護的作品。這在藝術家眼裏,模仿藝術風格和美學的行為是不道德行為,且可能違反版權。Stable Diffusion也是其中重要一員,它的訓練集LAION-5B包含50多億張圖像與匹配的文本標註,其中就包含了大量受版權保護的內容,這些內容其實歸眾多獨立藝術家和專業攝影師所有。這些版權爭議,也給這些AI創作工具帶來了盜竊藝術家創作成果的罵名,也讓很多有抱負有想法的藝術家越來越難以生存。

參考資料:

1.http://arxiv.org/pdf/2209.14697.pdf

2.http://arxiv.org/pdf/2112.10752.pdf

3.[1907.05600] Generative Modeling by Estimating Gradients of the Data Distribution

4.http://arxiv.org/pdf/2204.06125.pdf

5.http://imagen.research.google

6.[2105.05233] Diffusion Models Beat GANs on Image Synthesis

7.http://ommer-lab.com/research/latent-diffusion-models/

(注意:後台回覆關鍵詞“AI”,即可獲取demo生產工具)