IP一致性:指的是给定输入的图像,要求保持图像中的ID不变,IP可能是Identity Property,要求能够识别出是同一个身份。
目前通过IP的一致性技术,可以用于短视频短剧上,是一个新兴的市场技术。
# IP-Adapter: Text Compatible Image Prompt Adapter for Text-to-Image Diffusion Models
Paper : https://papers.cool/arxiv/2308.06721
Page : https://ip-adapter.github.io/
类似于ControlNet,想要在已经预训练的网络中增加Adapter(类似于LLM中),从而维持IP一致性。
动机:目前如果在预训练中的网络中添加额外的信息,通常是直接和其他信息(Text)Concat在一起通过Cross-Layer,本文认为这样子会导致信息融合在一起,无法保证单一模态的信息强度,就容易导致IP变形。
![IP一致性_2024-07-18_](https://s2.loli.net/2024/07/18/Mxb9zRu2DgVY7Os.png)
通过使用两个cross-attn,将不同模态的信息分离,但是在这两个cross-attn的Q数输入是一致的。具体公式如下
$$\begin{aligned}\mathbf{Z}^{new}=\mathrm{Softmax}(\frac{\mathbf{Q}\mathbf{K}^{\top}}{\sqrt{d}})\mathbf{V}+\mathrm{Softmax}(\frac{\mathbf{Q}(\mathbf{K}^{\prime})^{\top}}{\sqrt{d}})\mathbf{V}^{\prime}\\\mathrm{where~}\mathbf{Q}=\mathbf{Z}\mathbf{W}_{q},\mathbf{K}=\boldsymbol{c}_{t}\mathbf{W}_{k},\mathbf{V}=\boldsymbol{c}_{t}\mathbf{W}_{v},\mathbf{K}^{\prime}=\boldsymbol{c}_{i}\mathbf{W}_{k}^{\prime},\mathbf{V}^{\prime}=\boldsymbol{c}_{i}\mathbf{W}_{v}^{\prime}\end{aligned}$$
需要注意的是两个Cross-áttn的Query输入是一致的,而对于文本的cross-attn是完全冻结的。
# DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation
Project page: https://dreambooth.github.io/
![IP一致性_2024-07-22_](https://s2.loli.net/2024/07/22/Pr1BGqQf8KdTJXw.png)
DreamBooth可以给定3~5张主体图像,微调预训练模型,生成主体类似的图像,它的核心思想通过微调模型,使得TextEncoder的某个特定token可以和模型生成的特定主体(Obeject)相联系,例如将Kitty和我家的狗联系起来,如果输入的prompt含有“Kitty”,那么模型生成的图像中,主体就是我家的狗。
Method:
1. 如何设计训练数据。文本提示采用简单的结构,通常包含一个独特标识符和主体的类别名称。例如,"A [V] dog",其中"[V]"是独特标识符,"dog"是主体的类别名称。V实在 tokenizer寻找出现频数较少的。
2. 为了防止模型在微调过程中逐渐忘记如何生成与目标主体相同类别的其他主体(即语言漂移),作者提出了一种类别特定先验保留损失(Class-specific Prior Preservation Loss)。先在一个类别中生成几张图像,要求模型在微调的时候,对于该类别生成尽量一致的图像,只有在输入特定的token的时候,才生成特定的主体。
![IP一致性_2024-07-26_](https://s2.loli.net/2024/07/26/L9PxfrA8eu3vkMY.png)
$$\mathbf{L} = \mathbb{E}_{\mathbf{x},\mathbf{c},\boldsymbol{\epsilon},\boldsymbol{\epsilon}^{\prime},t}[w_t\|\hat{\mathbf{x}}_\theta(\alpha_t\mathbf{x}+\sigma_t\boldsymbol{\epsilon},\mathbf{c})-\mathbf{x}\|_2^2+\\\lambda w_{t^{\prime}}\|\hat{\mathbf{x}}_\theta(\alpha_{t^{\prime}}\mathbf{x}_{\mathrm{pr}}+\sigma_{t^{\prime}}\boldsymbol{\epsilon}^{\prime},\mathbf{c}_{\mathrm{pr}})-\mathbf{x}_{\mathrm{pr}}\|_2^2],\\ \mathbf{x}_{pr}是class \ image的形式$$
- 微调预训练模型:使用少量(大约3-5张)特定主体的图像对预训练的文本到图像扩散模型进行微调。这样做的目的是将特定主体的实例嵌入到模型的输出域中。
- 使用唯一标识符:为每个主体分配一个独特的标识符,并在文本提示中结合使用这个标识符和主体的类别名称(例如,“一个[V]狗”),这样可以帮助模型在保持类别先验的同时,学习将标识符与特定主体绑定。
- 设计文本提示:为了简化过程并避免编写详细的图像描述,作者选择使用简单的文本提示,如“a [V] [class]”,这有助于将模型对特定类别的先验知识与主体的独特标识符结合起来。
- 罕见标识符(Rare-token Identifiers):为了避免模型对标识符有预先的知识,作者寻找词汇表中的罕见标记,并将其反转到文本空间,以最小化标识符具有强先验的概率。
- 类别特定先验保留损失(Class-specific Prior Preservation Loss):为了解决语言漂移问题(即模型在微调后逐渐忘记如何生成与目标主体相同类别的其他主体),作者提出了一种新的损失函数。这种损失函数通过使用模型自身生成的样本来监督模型,以保留类别先验,并鼓励生成多样化的图像。
在Diffuser中有DreamBooth的实现,可以支持微调TextEncoder和UNet,在训练前生成class images。
# InstantID : Zero-shot Identity-Preserving Generation in Seconds (2024.01)
[Page](https://instantid.github.io/)
![IP一致性_2024-08-12_](https://smms.app/2024/08/12/ryfb2DpVJizUjnq.png)
这篇论文试图解决的问题是个性化图像合成中的一个关键挑战:在保持高保真度的同时,如何实现零次拍摄(zero-shot)的身份(ID)保持生成。论文讨论了以下几个方面的问题:
- 现有方法的局限性:现有的个性化图像生成方法,如Textual Inversion、DreamBooth和LoRA等,虽然在生成与参考图像风格、主题或角色ID一致的图像方面取得了显著进展,但它们的实际应用受到高存储需求、漫长的微调过程以及需要多个参考图像的限制。
- ID嵌入方法的挑战:现有的基于ID嵌入的方法虽然只需要一次前向推理,但面临一些挑战,如需要对大量模型参数进行微调、与社区预训练模型不兼容,或者无法保持高面部保真度。
- 身份细节的精确保留:人类面部身份(ID)涉及更微妙的语义,并且需要比一般风格或对象更高的细节和保真度标准,这使得生成精确保留身份细节的图像成为一个特别具有挑战性的任务。
目前,需要资源:
DreamBooth(需要>5张图片,微调整个模型) > IP-Adapter(需要>5张图片,只用微调Image Embedding的crossAttention Layer) $\approx$ InstantID(需要1张脸部图片,微调一个IdentityNet)
## Method
论文提出了一种名为InstantID的方法来解决零次拍摄身份保持图像生成的问题。InstantID的核心设计包括以下几个关键部分:
- ID嵌入:使用预训练的面部模型(目前非常成熟的人脸识别模型来提取Embedding)来提取参考面部图像中的身份嵌入,这些嵌入包含了丰富的语义信息,如身份、年龄和性别等。与CLIP图像嵌入相比,这种方法能够提供更强的语义细节和更高的保真度。
- 图像适配器:引入了一个轻量级的适配器模块,该模块具有解耦的交叉注意力机制(和IP-Adapter一致),允许将图像作为视觉提示与文本提示一起用于图像生成过程。这种设计使得InstantID能够灵活地处理各种风格的图像个性化。
- IdentityNet:设计了一个IdentityNet(就是一个ControlNet,只不过额外的监督信号是Face Embedding),它通过整合面部图像、面部关键点图像和文本提示来引导图像生成过程。IdentityNet在生成过程中完全由面部嵌入指导,而不使用任何文本信息,从而确保了面部身份的保留。
训练和推理策略:在训练过程中,只优化Image Adapter和IdentityNet的参数,而保持预训练文本到图像扩散模型的参数不变。在推理过程中,InstantID能够通过单步前向传播生成身份保持的图像,无需微调。
![IP一致性_2024-08-12_](https://s2.loli.net/2024/08/12/C36A8rwLTgsW5cV.png)
它的模型能够在保证Face的特征情况下,使用文本对于人脸生成进行控制,也是小红书之前火了一阵子的模型.
# An Image is Worth One Word: Personalizing Text-to-Image Generation using Textual Inversion(Textual Inversion)

IP一致性论文的更多相关文章

  1. CCProxy

    我在之前的博客里提到了用Teamviewer + CCProxy做内网穿透,当时只是简单提了一下,因为发现这种方式网速比较慢.今天又用到了它,虽然慢点,但是总比没的用好,哈哈哈.不得不感叹CCProx ...

  2. Computer Networking: A Top Down Approach

    目录 Chapter 1: Computer Networks and the Internet 1. What is the Internet? 2. The Network Edge 3. The ...

  3. Computer Neworking: A Top-Down Approach

    目录 Chapter 1: Computer Networks and the Internet 1. What is the Internet? 2. The Network Edge 3. The ...

  4. 分布式一致性算法:Raft 算法(论文翻译)

    Raft 算法是可以用来替代 Paxos 算法的分布式一致性算法,而且 raft 算法比 Paxos 算法更易懂且更容易实现.本文对 raft 论文进行翻译,希望能有助于读者更方便地理解 raft 的 ...

  5. 【转】分布式一致性算法:Raft 算法(Raft 论文翻译)

    编者按:这篇文章来自简书的一个位博主Jeffbond,读了好几遍,翻译的质量比较高,原文链接:分布式一致性算法:Raft 算法(Raft 论文翻译),版权一切归原译者. 同时,第6部分的集群成员变更读 ...

  6. Raft 一致性算法论文译文

    本篇博客为著名的 RAFT 一致性算法论文的中文翻译,论文名为<In search of an Understandable Consensus Algorithm (Extended Vers ...

  7. Raft一致性共识算法论文学习

    论文地址:https://pdos.csail.mit.edu/6.824/papers/raft-extended.pdf 看完raft共识算法,脑袋非常懵,所以写一篇学习笔记,记录一下. raft ...

  8. 搜索学术论文訪问google的能用的几个IP地址

    google搜索引擎打不开时的解决的方法,谷歌(google)的IP是多少? google IP镜像. 这里搜集了几个经过測试可用的IP,用来在不能域名訪问google的时候进行訪问 更新一个最新的. ...

  9. 【论文阅读】分布一致性算法Paxos 《The Part-Time Parliament》

    论文原文.翻译稿.PPt:https://1drv.ms/u/s!Ak-jGl23kTuMimOZzV-MyLQUYmsN?e=DL1xHD

  10. 服务发现 ap cp 强一致性 最终一致性 dns vip ip

    为什么基于域名 08 | 服务发现:到底是要CP还是AP? https://time.geekbang.org/column/article/208171 为什么需要服务发现?先举个例子,假如你要给一 ...

随机推荐

  1. 小米便签AS部署之Git的基本使用

    1 项目测试截图 及仓库地址 https://gitee.com/magicfatblink/Notes-master 2 小米便签代码的移植 2.1 IDE 的准备 2.1.1 AS版本选择 由于小 ...

  2. shell脚本获取函数返回值

    方式1 原理:return返回的值可以通过$?得到. 缺点:return只能返回整数 #!/bin/sh function test() { return 100 } test echo $? 方式2 ...

  3. 化合物同位素理论同位素分布计算软件Isopro 3.0

    大家好,今天分享一款软件,即可以计算化合物理论同位素分布的软件Isopro 3.0.在做质谱的实验时,特别对合成的化合物进行质量表征时,往往要求ppm绝对值在5以内,对质谱的分辨率要求很高.对于小分子 ...

  4. 🚀 Karpor - 让 AI 全面赋能 Kubernetes!

    什么是 Karpor? 一言以蔽之,Karpor 是一个现代化的 Kubernetes 可视化工具,核心特性聚焦在  搜索. 洞察. AI ,目标是更方便快捷地连接平台和多集群,并用 AI 赋能 Ku ...

  5. CF187D 题解

    模拟考最后一题是这道题,要是数组开大就场切了,最后不小心挂了 \(15\) 分. 以下是考场思路: 考虑这样一个问题,所有时间对 \(r+g\) 取余是可以的.毕竟红绿灯是一个循环. 再考虑这样一个东 ...

  6. Nuxt框架中内置组件详解及使用指南(三)

    title: Nuxt框架中内置组件详解及使用指南(三) date: 2024/7/8 updated: 2024/7/8 author: cmdragon excerpt: 摘要:"Nux ...

  7. Service Mesh Summit 回顾 | 轻舟服务网格的无侵入增强 Istio 经验

    在云原生社区近日主办的 Service Mesh Summit 2022 服务网格峰会上,网易数帆云原生技术专家方志恒分享了轻舟服务网格无侵入增强 Istio 的经验,本文据此次分享整理,介绍了对无侵 ...

  8. 阅读翻译Mathematics for Machine Learning之2.6 Generating Set and Basis

    阅读翻译Mathematics for Machine Learning之2.6 Generating Set and Basis 关于: 首次发表日期:2024-07-19 Mathematics ...

  9. CF1929B Sasha and the Drawing 题解

    CF1929B 题意 给定一个 \(n\times n\) 的正方形,已知正方形最多有 \(4\times n-2\) 条对角线,要求要有至少 \(k\) 条对角线经过至少一块黑色方格,求至少要将几条 ...

  10. 巧用 QLineF 从 QTransform 提取角度

    我们在对 QGraphicsItem 进行变换时,QT 提供了很多便捷的方法.但当我们想获取当前变换的角度时却有些困难,因为 QTransform 没有提供获取角度的方法.在文章Qt 从 QTrans ...