AIGC: InstructPix2Pix 筆記
簡(jiǎn)介

InstructPix2Pix 由 2 個(gè)模型:一個(gè)自然語(yǔ)言模型(GPT-3)和一個(gè)文字轉(zhuǎn)圖像模型(SD)拼接起來(lái)
用戶(hù)輸入原圖和指令,模型將輸出編輯過(guò)后的圖片
訓(xùn)練機(jī)制
模型的訓(xùn)練難度在于,符合條件的數(shù)據(jù)集基本不存在。為了解決這個(gè)問(wèn)題,研究團(tuán)隊(duì)將訓(xùn)練分成兩個(gè)部分
Fine-Tuning GPT-3
將前后兩個(gè)指令生成其各自對(duì)應(yīng)的圖像
首先,研究團(tuán)隊(duì)利用一個(gè)人工輸入的數(shù)據(jù)集作為 fine-tuning GPT-3 的訓(xùn)練集,這個(gè)訓(xùn)練集的格式為輸入描述(Input Caption),編輯指令(Edit Instruction)和編輯后描述(Editted Caption)

輸入描述是從現(xiàn)有數(shù)據(jù)集中取到,編輯指令和編輯后描述這兩部分都是人工編輯輸入
通過(guò)上述的?fine-tuning, GPT-3 可以通過(guò)輸入描述和編輯指令,輸出編輯后的對(duì)應(yīng)描述
Prompt-to-Prompt
為了使編輯前和編輯后的圖像具有一致性 (即結(jié)構(gòu)、構(gòu)圖上的一致),模型采用了 prompt-to-prompt

prompt-to-prompt 的巧妙之處在于,團(tuán)隊(duì)發(fā)現(xiàn),文字和圖像像素關(guān)聯(lián)對(duì)應(yīng)的 cross-attention 層包含了大量的結(jié)構(gòu)性息

簡(jiǎn)單地說(shuō),如果對(duì)這個(gè) cross-attention 層中的 attention maps 直接進(jìn)行操作,就可以維持圖像的其他部分不變,而只變換被操作的部分。

例如,替換文字(將一部分 attention map 替換為新的 map),加入新的文字(在原有的 map 基礎(chǔ)上加入新的 map)?,以及改變重點(diǎn)(改變?cè)?map 的比重)
所以,根據(jù) prompt-to-prompt,可以生成大量的配對(duì)的圖像作為訓(xùn)練素材。
最后,模型訓(xùn)練的目標(biāo)是去噪擴(kuò)散模型的目標(biāo),只不過(guò)多了兩個(gè)依賴(lài)條件 ?(image conditioning) 和
?(text instruction conditioning):

更多細(xì)節(jié),以及效果圖片參照原論文,不在此論述。
另外,推薦一個(gè)前幾天看到的,講 DDPM 的好文章:https://zhuanlan.zhihu.com/p/638442430
論文信息
InstructPix2Pix: Learning to Follow Image Editing Instructions
Tim Brooks, Aleksander Holynski, Alexei A. Efros
https://arxiv.org/abs/2211.09800
Prompt-to-Prompt Image Editing with Cross Attention Control
Amir Hertz, Ron Mokady, Jay Tenenbaum, Kfir Aberman, Yael Pritch, Daniel Cohen-Or
https://arxiv.org/abs/2208.01626