博客專欄

EEPW首頁 > 博客 > GPT-3、Stable Diffusion一起助攻,讓模型聽懂甲方修圖需求

GPT-3、Stable Diffusion一起助攻,讓模型聽懂甲方修圖需求

發(fā)布人:機(jī)器之心 時(shí)間:2022-11-19 來源:工程師 發(fā)布文章

AI 可以完全按照甲方意愿修圖?GPT-3、Stable Diffusion 一起助攻,讓模型秒變 PS 高手,改圖隨心所欲。


擴(kuò)散模型大火之后,很多人將注意力放到了如何利用更有效的 prompt 生成自己想要的圖像。在對(duì)于一些 AI 作畫模型的不斷嘗試中,人們甚至總結(jié)出了讓 AI 好好出圖的關(guān)鍵詞經(jīng)驗(yàn):


圖片


也就是說,如果掌握了正確的 AI 話術(shù),作圖質(zhì)量提升效果將非常明顯(參見:《「羊駝打籃球」怎么畫?有人花了 13 美元逼 DALL·E 2 亮出真本事 》)。


此外,還有一部分研究者在往另一個(gè)方向努力:如何動(dòng)動(dòng)嘴皮子就把一幅畫改成我們想要的樣子。


前段時(shí)間,我們報(bào)道了一項(xiàng)來自谷歌研究院等機(jī)構(gòu)的研究。只要說出你想讓一幅圖變成什么樣子,它就能基本滿足你的要求,生成照片級(jí)的圖像,例如讓一只小狗坐下:


圖片


這里給模型的輸入描述是「一只坐下的狗」,但是按照人們的日常交流習(xí)慣,最自然的描述應(yīng)該是「讓這只狗坐下」。有研究者認(rèn)為這是一個(gè)應(yīng)該優(yōu)化的問題,模型應(yīng)該更符合人類的語言習(xí)慣。


最近,來自 UC 伯克利的研究團(tuán)隊(duì)提出了一種根據(jù)人類指令編輯圖像的新方法 InstructPix2Pix:給定輸入圖像和告訴模型要做什么的文本描述,模型就能遵循描述指令來編輯圖像。


圖片

論文地址:https://arxiv.org/pdf/2211.09800.pdf


例如,要把畫中的向日葵換成玫瑰,你只需要直接對(duì)模型說「把向日葵換成玫瑰」:


圖片


為了獲得訓(xùn)練數(shù)據(jù),該研究將兩個(gè)大型預(yù)訓(xùn)練模型——語言模型 (GPT-3) 和文本到圖像生成模型 (Stable Diffusion) 結(jié)合起來,生成圖像編輯示例的大型成對(duì)訓(xùn)練數(shù)據(jù)集。研究者在這個(gè)大型數(shù)據(jù)集上訓(xùn)練了新模型 InstructPix2Pix,并在推理時(shí)泛化到真實(shí)圖像和用戶編寫的指令上。


InstructPix2Pix 是一個(gè)條件擴(kuò)散模型,給定一個(gè)輸入圖像和一個(gè)編輯圖像的文本指令,它就能生成編輯后的圖像。該模型直接在前向傳播(forward pass)中執(zhí)行圖像編輯,不需要任何額外的示例圖像、輸入 / 輸出圖像的完整描述或每個(gè)示例的微調(diào),因此該模型僅需幾秒就能快速編輯圖像。


盡管 InstructPix2Pix 完全是在合成示例(即 GPT-3 生成的文本描述和 Stable Diffusion 生成的圖像)上進(jìn)行訓(xùn)練的,但該模型實(shí)現(xiàn)了對(duì)任意真實(shí)圖像和人類編寫文本的零樣本泛化。該模型支持直觀的圖像編輯,包括替換對(duì)象、更改圖像風(fēng)格等等。


圖片


方法概覽


研究者將基于指令的圖像編輯視為一個(gè)監(jiān)督學(xué)習(xí)問題:首先,他們生成了一個(gè)包含文本編輯指令和編輯前后圖像的成對(duì)訓(xùn)練數(shù)據(jù)集(圖 2a-c),然后在這個(gè)生成的數(shù)據(jù)集上訓(xùn)練了一個(gè)圖像編輯擴(kuò)散模型(圖 2d)。盡管訓(xùn)練時(shí)使用的是生成的圖像和編輯指令,但模型仍然能夠使用人工編寫的任意指令來編輯真實(shí)的圖像。下圖 2 是方法概述。


圖片


生成一個(gè)多模態(tài)訓(xùn)練數(shù)據(jù)集


在數(shù)據(jù)集生成階段,研究者結(jié)合了一個(gè)大型語言模型(GPT-3)和一個(gè)文本轉(zhuǎn)圖像模型(Stable Diffusion)的能力,生成了一個(gè)包含文本編輯指令和編輯前后對(duì)應(yīng)圖像的多模態(tài)訓(xùn)練數(shù)據(jù)集。這一過程包含以下步驟:


  • 微調(diào) GPT-3 以生成文本編輯內(nèi)容集合:給定一個(gè)描述圖像的 prompt,生成一個(gè)描述要進(jìn)行的更改的文本指令和一個(gè)描述更改后圖像的 prompt(圖 2a);

  • 使用文本轉(zhuǎn)圖像模型將兩個(gè)文本 prompt(即編輯之前和編輯之后)轉(zhuǎn)換為一對(duì)對(duì)應(yīng)的圖像(圖 2b)。


InstructPix2Pix 

研究者使用生成的訓(xùn)練數(shù)據(jù)來訓(xùn)練一個(gè)條件擴(kuò)散模型,該模型基于 Stable Diffusion 模型,可以根據(jù)書面指令編輯圖像。


擴(kuò)散模型學(xué)習(xí)通過一系列估計(jì)數(shù)據(jù)分布分?jǐn)?shù)(指向高密度數(shù)據(jù)的方向)的去噪自編碼器來生成數(shù)據(jù)樣本。Latent diffusion 通過在預(yù)訓(xùn)練的具有編碼器圖片和****圖片的變分自編碼器的潛空間中操作來提高擴(kuò)散模型的效率和質(zhì)量。

對(duì)于一個(gè)圖像 x,擴(kuò)散過程向編碼的 latent 圖片 中添加噪聲,它產(chǎn)生一個(gè)有噪聲的 latent z_t,其中噪聲水平隨時(shí)間步 t∈T 而增加。研究者學(xué)習(xí)一個(gè)網(wǎng)絡(luò)圖片,它在給定圖像調(diào)節(jié) C_I 和文本指令調(diào)節(jié) C_T 的情況下,預(yù)測(cè)添加到帶噪 latent z_t 中的噪聲。研究者將以下 latent 擴(kuò)散目標(biāo)最小化:


圖片

此前,曾有研究(Wang et al.)表明,對(duì)于圖像翻譯(image translation)任務(wù),尤其是在成對(duì)訓(xùn)練數(shù)據(jù)有限的情況下,微調(diào)大型圖像擴(kuò)散模型優(yōu)于從頭訓(xùn)練。因此在新研究中,作者使用預(yù)訓(xùn)練的 Stable Diffusion checkpoint 初始化模型的權(quán)重,利用其強(qiáng)大的文本到圖像生成能力。


為了支持圖像調(diào)節(jié),研究人員向第一個(gè)卷積層添加額外的輸入通道,連接 z_t 和圖片。擴(kuò)散模型的所有可用權(quán)重都從預(yù)訓(xùn)練的 checkpoint 初始化,同時(shí)在新添加的輸入通道上運(yùn)行的權(quán)重被初始化為零。作者在這里重用最初用于 caption 的相同的文本調(diào)節(jié)機(jī)制,而沒有將文本編輯指令 c_T 作為輸入。


實(shí)驗(yàn)結(jié)果


在下面這些圖中,作者展示了他們新模型的圖像編輯結(jié)果。這些結(jié)果針對(duì)一組不同的真實(shí)照片和藝術(shù)品。新模型成功地執(zhí)行了許多具有挑戰(zhàn)性的編輯,包括替換對(duì)象、改變季節(jié)和天氣、替換背景、修改材料屬性、轉(zhuǎn)換藝術(shù)媒介等等。


圖片


圖片


圖片


圖片


研究人員將新方法與最近的一些技術(shù),如 SDEdit、Text2Live 等進(jìn)行了比較。新模型遵循編輯圖像的說明,而其他方法(包括基準(zhǔn)方法)需要對(duì)圖像或編輯層進(jìn)行描述。因此在比較時(shí),作者對(duì)后者提供「編輯后」的文本標(biāo)注代替編輯說明。作者還把新方法和 SDEdit 進(jìn)行定量比較,使用兩個(gè)衡量圖像一致性和編輯質(zhì)量的指標(biāo)。最后,作者展示了生成訓(xùn)練數(shù)據(jù)的大小和質(zhì)量如何影響模型性能的消融結(jié)果。


圖片


圖片


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉