InstructPix2Pix 由 2 个模型:一个自然语言模型(GPT-3)和一个文字转图像模型(SD)拼接起来
用户输入原图和指令,模型将输出编辑过后的图片
模型的训练难度在于,符合条件的数据集基本不存在。为了解决这个问题,研究团队将训练分成两个部分
Fine-Tuning GPT-3
将前后两个指令生成其各自对应的图像
首先,研究团队利用一个人工输入的数据集作为 fine-tuning GPT-3 的训练集,这个训练集的格式为输入描述(Input Caption),编辑指令(Edit Instruction)和编辑后描述(Editted Caption)
输入描述是从现有数据集中取到,编辑指令和编辑后描述这两部分都是人工编辑输入
通过上述的 fine-tuning, GPT-3 可以通过输入描述和编辑指令,输出编辑后的对应描述
为了使编辑前和编辑后的图像具有一致性 (即结构、构图上的一致),模型采用了 prompt-to-prompt
prompt-to-prompt 的巧妙之处在于,团队发现,文字和图像像素关联对应的 cross-attention 层包含了大量的结构性息
简单地说,如果对这个 cross-attention 层中的 attention maps 直接进行操作,就可以维持图像的其他部分不变,而只变换被操作的部分。
例如,替换文字(将一部分 attention map 替换为新的 map),加入新的文字(在原有的 map 基础上加入新的 map) ,以及改变重点(改变原有 map 的比重)
所以,根据 prompt-to-prompt,可以生成大量的配对的图像作为训练素材。
(image conditioning) 和 (text instruction conditioning):
更多细节,以及效果图片参照原论文,不在此论述。
另外,推荐一个前几天看到的,讲 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