官术网_书友最值得收藏!

1.2 人工智能繪畫的算法和原理

無論是DALL-E 2、Midjourney還是Stable Diffusion,它們的主要算法和原理都基于擴散模型,并且它們之間也存在千絲萬縷的聯系。

人工智能是一種模擬人腦神經網絡的技術。通過訓練,它可以學習各種任務,比如繪畫。當我們讓AI學習繪畫時,它會結合文字進行訓練。通過大量填鴨式的訓練,在某個時刻,它會突然領悟,能夠根據文字要求進行繪畫,并且它的繪畫具有類似人類的邏輯性,它的能力得到了快速提升。

目前,擴散模型是最常用的AI生成圖像的方法之一。擴散模型基于非平衡熱力學,這是熱力學的一個分支,專門研究不處于熱力學平衡中的物理系統。一個典型的例子是一滴墨水在水中擴散。在墨水開始擴散之前,它會在水中某個地方形成一個大的斑點。如果要模擬墨水開始擴散前的初始狀態概率分布,將會非常困難,因為這個分布非常復雜,很難進行采樣。然而,隨著墨水擴散到水中,水逐漸變成淡藍色,墨水分子會更加簡單和均勻地分布。此時,我們可以使用數學公式來描述其中的概率分布。非平衡熱力學可以描述墨水擴散過程中每一步的概率分布。由于擴散過程的每一步都是可逆的,因此只要步長足夠小,我們就可以從簡單的分布中推斷出最初的復雜分布。

通過墨水的例子,我們可以得到一個啟示:如果我們使用像素圖對模型進行存儲,那么將需要大量的硬件資源;相反,如果我們使用高斯噪點圖進行存儲,那么采樣分布將更加容易。我們可以輕松地使用數學公式描述高斯分布的概率,并從簡單的高斯分布中進行采樣。因此,模型庫可以采用高斯噪點圖進行存儲,這樣反轉過程也相對容易。這種方法在節省存儲空間的同時,還能夠保留模型的重要特征。

為了便于理解,我們再舉一個例子,擴散模型類似于樂高玩具,打散后就是一個個的小方塊,相當于變成噪點,小方塊組裝成各種各樣的造型,類似于去噪的過程。

擴散模型可以將材質、色彩、光影、位置關系、透視關系、風格、筆觸等視覺元素轉換為某個標記,并將這些標記儲存在高斯噪點圖中的空間位置。

應用于AI繪畫的過程中,可以通過逐步添加高斯噪聲(模擬墨滴在水中擴散)來處理一幅圖像。最終,這幅圖像會變成高斯分布(模擬墨滴最終均勻擴散到水中)。高斯分布是一種非常容易建模和采樣的概率分布,因此它在AI繪畫的訓練過程中起到了重要作用。推理過程則是將這個過程逆向進行,從一個均勻分布的高斯分布中進行采樣,并逐步去除噪聲,最終得到一幅完整的圖像,這也就是將墨水擴散的過程進行逆轉的過程。

圖1-15展示了擴散模型的加噪與去噪的過程。擴散模型的原理包括兩個步驟:首先是正向擴散,逐漸給圖像添加高斯噪聲,直到獲得純噪聲的圖像;然后,通過訓練一個神經網進行圖像去噪,從純噪聲的圖像開始,直到獲得最終的圖像。

那么,AI繪畫具體是怎么工作的呢?以Stable Diffusion為例,首先輸入提示詞,如“戴眼鏡的少女”,然后Stable Diffusion開始工作,主要分為三個部分,如圖1-16所示。

圖1-15 擴散模型的加噪與去噪

圖1-16 Stable Diffusion原理

· 第一部分:文本編碼。通過圖像轉換特征,把文本轉換為數字信息,并提取出關鍵標記,如眼鏡、少女、金屬、年輕等。

· 第二部分:潛在空間生成。使用圖像信息生成器,主要使用U-net調度算法生成圖像。

· 第三部分:變分自編碼器(VAE)編碼。通過VAE圖像解碼器,把潛在空間64×64像素的圖像解碼成512×512像素的圖像,從而繪制出訓練圖像。

注意

AI繪圖提供文本的提示詞也被稱為指令被用戶戲稱為咒語”。

通過Stable Diffusion的計算,可以在WebUI界面上生成直觀的圖像。

AI繪畫的過程實際上比描述的更加復雜。作為藝術工作者,我們很難像工程師一樣深入了解其具體編碼過程。然而,熟悉其基本原理對我們以后無論是生成圖像、訓練模型還是使用ControlNet工具編輯圖像都會有很大幫助。這種了解有助于我們更好地創作和提高操作AI繪畫工具的能力。

主站蜘蛛池模板: 当阳市| 富锦市| 汶川县| 绥化市| 南郑县| 界首市| 岑巩县| 郯城县| 苗栗市| 通河县| 库尔勒市| 栖霞市| 南投市| 东港市| 水富县| 宽甸| 彭阳县| 松江区| 安阳市| 阳春市| 仁寿县| 平昌县| 蓬安县| 望城县| 岢岚县| 郑州市| 新蔡县| 泰和县| 彰武县| 丹凤县| 盐边县| 治县。| 鄂伦春自治旗| 华容县| 徐汇区| 宜良县| 彩票| 凤山县| 左云县| 天门市| 石嘴山市|