Multi-Concept Customization of Text-to-Image Diffusion——【论文笔记】

2024-01-18 18:04

本文主要是介绍Multi-Concept Customization of Text-to-Image Diffusion——【论文笔记】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文发表于CVPR 2023

论文地址:CVPR 2023 Open Access Repository (thecvf.com)

Github官方代码地址: github.com

 一、Intorduction

最近的文本到图像模型能够根据文本提示生成高质量的图像,可以覆盖广泛的物体、风格和场景。尽管这些模型具有多样的通用功能,但用户通常希望从他们自己的个人生活中综合特定的概念。例如,亲人,如家人,朋友,宠物,或个人物品和地方,如新沙发或最近参观的花园,都是有趣的概念。用户往往希望生成与个人生活紧密相关的内容,而这些通常不会出现在大规模训练数据中。

所以产生了对模型进行定制化的需求,当前个性化模型主要存在以下一些挑战:

  • 遗忘问题: 微调模型时,存在着它可能会忘记或改变已有知识的风险。

  • 过拟合问题: 由于训练样本的数量有限,模型可能会过拟合这些样本,并导致生成的内容缺乏多样性。

  • 复合微调: 如何将多个新概念融入模型,以便可以自由组合它们,比如在图像中合成“月门”前的宠物狗。

本文提出了一种微调扩散模型的方法,自定义扩散的文本到图像的扩散模型。此方法在计算和存储效率上都进行了优化。为了克服上述挑战,我们确定了模型权重的一个小子集,即从文本到交叉注意层中潜在特征的键和值映射。微调这些就足以用新概念更新模型。为了防止模型遗忘,我们使用一小组具有相似字幕的真实的图像作为目标图像。我们还在微调过程中引入了增强,这导致了更快的收敛和更好的结果。为了注入多个概念,我们的方法支持同时训练两者,或者分别训练它们,然后合并。

二、Related Work

深度生成模型:

主流的生成模型包括GAN(生成对抗网络),VAE(变分自编码器),自回归模型,基于流量的模型和扩散模型。这些模型可以以不同类型的条件作为输入,如类别标签,图像或文本提示,以增强生成结果的可控性。

文本条件合成:

之前的研究仅局限于有限的类别。最近的模型在超大规模数据上训练,显示出了显著的泛化能力,但在对特定实例(如个人玩具或稀有类别)的生成上仍有限。

图像编辑和模型微调:

用户常常希望编辑特定的单个图像,而不是随机生成新图像。与预训练模型的表示编辑相关的挑战在于:如何通过逐图像或逐编辑优化来实现。

迁移学习:

预训练模型可以通过迁移学习适应新的数据分布,有研究专注于将模型从一个域调整到另一个域,但这常常导致原有概念的灾难性遗忘。

调整文本到图像模型的特点:

与类似的工作(如DreamBooth和Textual Inversion)相比,本研究关注在不遗忘既有概念的情况下微调模型以获取多个新概念。并且本研究只微调交叉注意层参数的一个子集,减少了微调所需时间。

我们提出了一种面对多个概念组合微调的挑战性场景的解决方案,实现了减少微调参数数量,从而加快微调过程,通过自动度量和人类偏好研究验证了所提方法的效果。

三、Method

给定一个预训练的文本到图像扩散模型,我们的目标是在模型中嵌入一个新的概念,只要给出四张图像和相应的文本描述。微调后的模型应该保留其先验知识,允许基于文本提示的新概念的新一代,这篇文章主要还是在Stable-Diffusion的基础上进行微调的,关于Stable-Diffusion这里就不过多介绍。

我们提出的模型微调方法,如下图所示,只更新模型交叉注意层中的一小部分权重。此外,我们使用一个正则化集的真实的图像,以防止过度拟合的目标概念的几个训练样本。

权重的变化率

作者通过分析目标数据集上的微调模型中每一层的参数变化,发现更新的参数主要来源于以下三类:

这些参数来自三种类型的层-(1)交叉注意(文本和图像之间),(2)自我注意(图像本身),以及(3)其余参数,包括扩散模型U-Net中的卷积块和归一化层。

正如我们所看到的,交叉注意层参数与其他参数相比具有相对较高的Δ。此外,交叉注意层仅占模型中总参数计数的5%。这表明它在微调过程中起着重要作用,我们在我们的方法中利用了这一点。

 模型微调:

交叉注意块根据条件特征修改网络的潜在特征,即,在文本到图像扩散模型的情况下的文本特征。给定文本特征c和潜在图像特征f,Q=Wqf,K=Wkc,V=Wvc。

其中Wq、Wk和Wv分别将输入映射到查询、键和值特征,d是键和查询特征的输出维度。潜在特征然后用注意力块输出更新。微调的任务是更新从给定的文本到图像分布的映射,文本特征仅输入到交叉注意块中的Wk和Wv投影矩阵。因此,我们建议在微调过程中仅更新扩散模型的Wk和Wv参数。

 

多概念组合微调

其实实现多个概念组合微调的基本原理和单个没有太大区别。为了对多个概念进行微调,我们将每个概念的训练数据集组合起来,并使用我们的方法联合训练它们。为了表示目标概念,我们使用不同的修饰符标记V_i,用不同的罕见标记初始化,并使用每层的交叉注意键和值矩阵沿着对其进行优化。

四、Experiments

数据集: 我们在十个目标数据集上进行实验,这些数据集涵盖了各种类别和不同的训练样本。它由两个场景类别、两个宠物和六个对象组成。

评价指标:

(1)Image-alignment(图像对齐),即,使用CLIP图像特征空间中的相似性,生成的图像与目标概念的视觉相似。

(2)Text-alignment,使用CLIP特征空间中的文本-图像相似性,生成的图像与给定提示的文本对齐。

(3)KID ,用于从LAION-400 M检索的类似概念的500幅真实的图像的验证集,以测量目标概念上的过拟合(例如,在一个实施例中,V dog)和忘记现有的相关概念(例如,狗)。

  (4)人类偏好研究。

与Dreambooth、Textual Inversion进行比较:

单一概念微调:

论文中提到:第一行:代表水彩画艺术风格的概念。我们的方法还可以在背景中生成山脉,DreamBooth和Textual Inversion忽略了这些山脉。第二行:改变背景场景。我们的方法和DreamBooth执行类似,比文本反转更好。第三行:添加另一个对象,例如,一张带目标桌子的橙子沙发我们的方法成功地添加了另一个对象。我们在我们的网站上展示更多的样品。

多概念微调:

论文中提到:第一行:我们的方法在遵循文本条件的同时与个人猫和椅子具有更高的视觉相似性。第二行:DreamBooth有时会忽略猫,而我们的方法会同时生成猫和木盆。第三行:我们的方法更好地保持了与目标图像的视觉相似性。第四排:目标桌子和椅子一起在花园里。

如此相比之下,相对于Dreambooth、Textual Inversion而言,论文所提出的方法是相对优异的。

 

上图是基于文本和图像对齐所作的比较,左边的图是单个概念微调,右边则是多个概念的微调。与其他方法相比,论文所提的方法位于更沿着右上角(方差较小)。考虑到图像对齐与文本对齐之间的权衡,我们的方法与baselines相当或更好。 

五、Discussion

这篇论文的主要创新点在于它仅仅通过改变交叉注意力层的一小部分参数(K、V)以实现个性化微调Stable-Diffuison。相对于Dreambooth微调整个模型的做法而言,无疑是大大减小了训练时间以及微调后的权重模型(3GB——75MB),并且实现了多个概念的个性化微调。

这篇关于Multi-Concept Customization of Text-to-Image Diffusion——【论文笔记】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/619801

相关文章

mysqld_multi在Linux服务器上运行多个MySQL实例

《mysqld_multi在Linux服务器上运行多个MySQL实例》在Linux系统上使用mysqld_multi来启动和管理多个MySQL实例是一种常见的做法,这种方式允许你在同一台机器上运行多个... 目录1. 安装mysql2. 配置文件示例配置文件3. 创建数据目录4. 启动和管理实例启动所有实例

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2