专栏名称: AI生成未来
AIGC最新技术及资讯
目录
相关文章推荐
中科财经  ·  非遗艺术传递消保智慧 ... ·  2 天前  
西安头条  ·  恒大,突发公告! ·  2 天前  
神嘛事儿  ·  我回答了 @下一秒的喵 ... ·  2 天前  
央视财经  ·  重大利好!广东重磅发布→ ·  2 天前  
51好读  ›  专栏  ›  AI生成未来

IPAdapter+再进化,可同时学习多个任务!Unity开源新思路:图像条件结合指令提示

AI生成未来  · 公众号  ·  · 2024-08-09 00:30

正文

点击下方 卡片 ,关注“ AI生成未来
>>后台回复“GAI”,免费获取AI行业报告和资料!

作者:Unity

解读:AI生成未来

文章链接:https://arxiv.org/pdf/2408.03209
git链接:https://unity-research.github.io/IP-Adapter-Instruct.github.io/
demo链接:https://huggingface.co/spaces/unity/IP-Adapter-Instruct

亮点直击

  • 提出IPAdapter-Instruct模型:结合自然图像条件与文本指令,灵活切换多种解释方式(如风格迁移、物体提取),简化任务处理。
  • 增强生成控制:改进传统图像条件方法,通过指令提示在同一条件图像下处理多种解释,提高生成控制精度。
  • 高效学习与灵活性:模型能够同时学习多种任务,性能接近专门模型,但显著减少训练时间和成本。
  • 改进训练与推理:通过多种条件解释(如完全复制、风格迁移等),提高了训练和推理效率及质量。

扩散模型不断推动图像生成的技术边界,但其生成过程难以精细控制:实践表明,文本提示不足以准确描述图像风格或细节(如面部特征)。ControlNet 和 IPAdapter 通过将生成过程基于图像条件进行调整,解决了这一问题,但每个模型实例仅能模拟单一的条件后验分布。在实际应用中,需要在同一工作流程中使用多个不同的后验分布,而训练和使用多个适配器显得繁琐。为此,本文提出了 IPAdapter-Instruct,它结合了自然图像条件和“指令”提示,能够在同一条件图像下切换不同的解释:风格迁移、对象提取、或两者兼有,甚至其他任务。与专门的单任务模型相比,IPAdapter-Instruct 能有效学习多项任务,同时在质量上损失最小。

方法

基于指令引导的图像条件生成

现有的基于图像条件的技术并没有提供一种明确的方法来控制条件对输出的影响,尤其是在处理自然图像条件时,没有一种统一的方式来整合其信息和内容。相反,通过额外的“指令”提示 让用户明确意图,将其称为指令或指令提示,以区别于文本提示 。这意味着现在建模的是概率分布 。可以将原始的IPAdapter视为此模型的一种实例,其中 ——本文的方法建模了一个更广泛的后验分布,而IPAdapter只是其中的一个边缘分布。

本文论了针对联合IPAdapter-Instruct模型的五种不同生成任务:

  • 复制 :生成条件图像的不同变体(类似于IPAdapter),
  • 风格 :生成与条件图像风格一致的图像,
  • 结构 :生成与条件图像结构相同的图像,
  • 对象 :生成包含条件图像中的对象的图像,
  • 面部 :生成包含条件图像中人物面部的图像。

在有适当数据集和训练流程的前提下,五个独立的IPAdapter实例可以分别处理这些任务,但这种工作流程在训练和推理时都显得繁琐。相反,IPAdapter-Instruct同时针对所有任务进行训练,使得整个任务集的训练更加高效,并且推理过程也更加实用。此外,多任务学习在许多情况下已被证明是有益的。

模型架构

本文的模型架构基于IPAdapter+的变换投影模型。首先讨论原始的IPAdapter+架构,然后介绍本文的修改。

在IPAdapter+中,每次对文本提示 进行交叉注意力操作后,都会在条件图像的投影编码上添加一个交叉注意力层,如下图2所示。

条件图像首先被编码到CLIP域,然后通过单个线性层投影到IPAdapter+特定的空间中,之后再通过一个小型的变换模型,如下图3所示。

引入指令。 对于IPAdapter-Instruct,修改了投影变换模型,在每次迭代时引入了一个额外的注意力层,该层还会关注指令的CLIP嵌入,如图3所示。通过这种方式,模型能够从条件嵌入中提取与指令相关的信息。

编码指令 选择使用文本embedding模型对指令进行编码,将其嵌入到与原始IPAdapter(+)模型将条件图像embedding的相同空间中。鉴于任务集的离散性,也可以为每个任务学习特定的任务embedding,并使用这些embeddings代替。然而,通过利用强大的预训练ViT-H/14模型,能够从CLIP嵌入空间的语义丰富性中获益,并且将指令和条件都表示在同一个空间中。虽然在这项工作中没有对此进行详细研究,但坐着的直觉认为,这种方法能够实现更灵活和稳健的指令理解,并为未来的额外任务提供更好的起点。

任务和数据集生成

研究者们为每个不同的任务构建了一个专用数据集,详细内容如下所述。对于指令提示,使用大型语言模型(LLM)为每个任务生成示例指令提示,并在训练过程中随机抽取这些提示。为了确保每个任务在CLIP空间中能够清晰辨识,为每个任务分配了一个关键词,并删除了任何包含其他任务关键词的指令。下图4展示了每个任务指令嵌入的t-SNE可视化(以及在消融研究中使用的“平均”指令)。

下图5展示了所有这些数据集的示例条目。

图像复制

与IPAdapter的训练过程类似,该任务的目标是创建输入图像的细微变化。由于此模式复现了IPAdapter的原始行为,期望能够将这种指令模式应用于其他任务。为了创建训练数据集,使用了JourneyDB数据集,收集了42,000个随机样本及其原始文本提示。指令提示则通过询问ChatGPT-4 生成,要求其“生成不同长度的描述方式,以表达从一张图像中获取所有内容,但不要使用‘构图’、‘风格’、‘面部’或‘对象’这些词”。

风格保留

在风格保留任务中,用户希望仅提取条件图像的风格并将其应用于新的图像——尽管这个概念并不十分明确,但它通常包含色彩方案和一般的艺术风格。身份、布局和构图不应渗透到生成图像中。为了创建风格训练数据集,从ehristoforu/midjourney-images 风格数据集和一个大规模的艺术数据集 开始。条件图像从风格数据集中采样,而目标图像则通过InstantStyle生成,使用艺术数据集中的提示,并将条件图像作为风格源。换句话说,这种模式通过监督生成类似于InstantStyle生成的图像。指令提示通过询问ChatGPT-4生成,要求其“生成不同长度的描述方式,以表达从一张图像中获取风格,但不要使用‘构图’、‘对象’、‘面部’或‘所有内容’这些词”。由于InstantStyle计算成本高且速度较慢,该数据集仅包含20,000个样本。

对象提取

在对象提取任务中,目标是将条件图像中的对象置于一个新的场景中,并尽可能保留其身份特征,这与MagicInsert类似。基于COCO数据集生成此数据集:对于35,000张图像,将相关对象裁剪出来作为条件图像,并在必要时使用随机颜色填充。目标图像则是原始数据集中的图像,并由GPT-4o提供相应的文本提示。指令提示通过询问ChatGPT-4生成,要求其“生成不同长度的描述方式,以表达从一张图像中提取对象,但不要使用‘构图’、‘风格’、‘面部’或‘所有内容’这些词”。为了向图像投影层(如前面图3所示)提供更多语义信息(通常用户会访问到这些信息),在指令中将‘对象’关键词替换为该对象的具体名称。







请到「今天看啥」查看全文