浅析扩散模型与图像生成【应用篇】(二十二)——DreamBooth

21. DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation

  本文提出一种根据少量样例图片来对文生图模型进行微调的方法,从而可以生成包含样例物体,但风格、姿态、背景都可以任意修改的图片。现有的文生图模型都是需要给出特别详细的描述,然后生成对应的图片,但即使描述得再具体,再详细,生成的图片可能也不能满足使用者的要求。比如,我就想生成与自己家狗一样的狗狗照片,但是姿势、背景都可以自由设定,而不是任意生成一张狗的图片。为了解决这个问题,本文通过输入少量样例图片(例如几张自己家狗的照片),并给定一个包含特殊标记符的文字描述(“a [V] dog”),来对一个文生图模型(如SD、Imagen)进行微调训练,使模型将样例中狗的特征与特殊标记符"[V]“关联起来。在推理时,只要在文字描述中加入特殊标记符”[V]“就能个性化的生成自己家狗狗的图片,如“a [V] dog is swimming”。这一特性无疑是非常有价值的,因此在各大图像生成软件中也都包含了DreamBooth工具。
在这里插入图片描述
  那么这么惊艳的效果是如何实现的呢?首先,我们简单回顾一下当前的文生图模型是如何工作的。目前流行的文生图模型,普遍采用基于扩散模型的架构,给定一个文字提示 P P P,由文本编码器 Γ \Gamma Γ进行编码后得到对应的文本条件 c = Γ ( P ) c=\Gamma(P) c=Γ(P),将一个随机噪声 ϵ \epsilon ϵ和条件 c c c一起输入到生成模型 x ^ θ \hat{x}_{\theta} x^θ中,可得生成的图像 x g e n = x ^ θ ( ϵ , c ) x_{gen}=\hat{x}_{\theta}(\epsilon, c) xgen=x^θ(ϵ,c)。生成模型 x ^ θ \hat{x}_{\theta} x^θ的训练过程如下 E x , c , ϵ , t [ w t ∥ x ^ θ ( α t x + σ t ϵ , c ) − x ∥ 2 2 ] \mathbb{E}_{\mathbf{x},\mathbf{c},\boldsymbol{\epsilon},t}\big[w_t\|\hat{\mathbf{x}}_\theta(\alpha_t\mathbf{x}+\sigma_t\boldsymbol{\epsilon},\mathbf{c})-\mathbf{x}\|_2^2\big] Ex,c,ϵ,t[wtx^θ(αtx+σtϵ,c)x22]其中 x \mathbf{x} x表示真实的图像, α t \alpha_t αt可以理解为是噪声和原图之间的比例系数, σ t \sigma_t σt是噪声的方差, w t w_t wt是损失权重, t t t是时间步数。通过对原始图像逐步添加噪声得到时刻 t t t时的有噪声图像 z t = α t x + σ t ϵ \mathbf{z}_t=\alpha_t\mathbf{x}+\sigma_t\boldsymbol{\epsilon} zt=αtx+σtϵ,然后利用生成模型在文本条件的引导下对噪声图像逐步去噪得到生成图像。当然基于扩散的文生图方法还是有很多细节和实现方式了,具体可参考本博其他的文生图模型介绍,如DALLE·2,LDM和GLIDE。
  了解了文生图模型的大体流程,下面就是要考虑如何让其根据我们提供的样例生成个性化图片了。最直接的方法,当然是使用样例图片对预训练好的文生图模型进行微调训练,但经过微调训练之后,模型可能具备了生成样例图片的能力,但它本质上是个随机采样的过程,无法保证每次生成的都是指定的样例图片。当然我也可以反复的训练,直到模型过拟合,只能输出特定样例的图片,但同时模型也丧失了生成其他图片的能力了,这肯定也不是我们希望看到的。那么如何告诉模型,我现在希望生成的就是我给你这几个样例图片里的对象呢?作者想到可以用一个特殊的标记符”[V]“来描述它,当模型看到输入文本里带有描述符”[V]“时,就知道我要生成样例图片中的对象了,如果没有特殊标记符,则生成其他的对象。基于这个想法,作者提出一种微调训练方法,给定几张样例图片(通常3-5张),并给定一个带有特殊标记符的文本描述“a [identifier] [class noun]”,其中”[identifier]“就是上文提到的特殊标记符,”[class noun]"是样例图片中对象的类别。利用这些文本-图像对对模型进行微调训练,使模型将样例对象的特征与特殊标记符绑定在一起,再看到这个标记符时就知道要生成样例对象了。
  那么这个特殊标记符如何设定呢?作者尝试使用了“unique”或“special”这类现成的英文单词,但这些词汇本身是具备一定含义的,在原有的文本编码器中也有相应的理解先验,因此需要模型先将这些词与原本的意思解绑,再与样例对象绑定,这就给模型训练带来很大的困难。此外,作者还尝试了使用随机的字母和数字组合,如“xxy5syt00”,但编码器是逐个字母来编码的,这些字母也会包含较强的先验与前面使用单词的方式存在同样的问题。最终,作者选择使用一些“罕见词”,就是利用文本库中的一些出现概率极低的词汇作为特殊标记符,如“sys”。实际中作者发现使用T5-XXL模型的文本库中{5000,…10000}范围里的字符数小于3的词汇可以取得较好的效果。
  在训练过程中,作者发现存在两个问题:1.语言漂移(Language drift),就是我们前文提到的随着训练,模型逐渐忘记了如何生成同类别的其他物体,如只能生成你家狗狗的照片,而不能生成其他狗的照片;2. 多样性损失,作者发现随着训练,模型输出图像中对象的姿态基本都保持不变。为了解决这个问题作者提出一种特定类别先验保持的损失函数(Class-specific Prior Preservation Loss),其思想也很简单,不是担心的在微调过程中忘记如何生成其他同类别的对象吗,我就把特殊标记符去掉,让模型同时生成一个其他类别的对象,和带有特殊标记符的生成过程一起进行微调,并计算损失,损失函数如下 E x , c , ϵ , ϵ ′ , t [ w t ∥ x ^ θ ( α t x + σ t ϵ , c ) − x ∥ 2 2 + λ w t ′ ∥ x ^ θ ( α t ′ x p r + σ t ′ ϵ ′ , c p r ) − x p r ∥ 2 2 ] \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}] Ex,c,ϵ,ϵ,t[wtx^θ(αtx+σtϵ,c)x22+λwtx^θ(αtxpr+σtϵ,cpr)xpr22]可以看到是在原本的损失函数基础上又加了一项,其中 x p r \mathbf{x}_{\mathrm{pr}} xpr是由一个参数冻结的预训练好的扩散模型生成的图像, c p r \mathbf{c}_{\mathrm{pr}} cpr是文本条件,其对应的文本输入为“a [class noun]”,即去掉了特殊标记符, λ \lambda λ是一个权重系数。整个过程如下图所示
在这里插入图片描述
  作者表示在TPUv4上只需要5分钟就能对Imagen模型完成微调,在A100上也只需要五分钟就能完成SD模型的微调。经过微调训练,模型可以根据样例图片生成非常多样的图片,并保持样例对象的主要特征不变,如下图所示
在这里插入图片描述
  并且对于视角合成,艺术风格渲染和属性修改等复杂任务也不在话下
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/603261.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

智能可编程脉冲电源:为电源行业带来前所未有的创新

智能可编程脉冲电源是一种具有高精度、高可靠性、节能降耗和可编程性强等特点的电源设备。它主要由脉冲发生器、功率调节电路和控制电路等组成。脉冲发生器产生的脉冲信号可以驱动功率调节电路,实现对电源输出的电压和电流的精确控制。通过控制电路对脉冲信号进行调…

关闭vscode保存自动格式化的功能

1 首先打开设置 搜索:editor.formatOnSave 取消勾选框 2 再打开 settings.json 搜索 editor 找到 settings.json 设置: "editor.formatOnSave": false

速卖通商品评论API(aliexpress.item_review)返回值全解析

在电商领域,用户评论对于产品的推广和销售具有极其重要的影响。速卖通(AliExpress)作为全球知名的跨境电商平台,提供了丰富的API接口供开发者使用,其中aliexpress.item_review API允许开发者获取商品的评论信息。本文将…

基于SpringBoot的高校推荐系统

项目介绍 当前,随着高等教育的不断普及,越来越多的学生选择考研究生来提高自身的学术水平和竞争力。然而,考研生在选择报考院校和专业时面临着众多的选择和信息不对称的问题。为了解决这些问题,一些网站和APP已经推出了相关的院校…

LearnOpenGL(九)之材质

一、材质 在现实世界里,每个物体会对光产生不同的反应。比如,钢制物体看起来通常会比陶土花瓶更闪闪发光,一个木头箱子也不会与一个钢制箱子反射同样程度的光。在opengl中,我们可以针对每种表面定义不同的材质(Material)属性来模…

YzmCMS 7.0任意函数调用RCE 漏洞研究分析

YzmCMS是一款基于YZMPHP开发的一套轻量级开源内容管理系统,YzmCMS简洁、安全、开源、免费,可运行在Linux、Windows、MacOSX、Solaris等各种平台上,专注为公司企业、个人站长快速建站提供解决方案。 YzmCMS 某些接口调用了 db_pdo类的where方法 导致了远程命令执行漏洞&#xf…

分享6个免费下载电子书的网站

着急看书的宝子们看这里! 收藏了一堆电子书网站终于能派上用场了~ 01/Z-Library https://zh.zlibrary-be.se/ 世界上最大的电子图书馆,拥有超千万的书籍和文章资源,99%的书籍资料都能在这里找到。 我给的这个网址现在还能正常打开使用&…

台湾精锐APEX行星减速机噪音产生及优化策略

台湾精锐APEX行星减速机在各种机械装置中的应用逐渐广泛。然而,其噪音问题也日益凸显。噪音不仅影响工作环境,还可能对设备的正常运行和使用寿命产生负面影响。因此,了解APEX行星减速机噪音的产生以及优化噪音问题变得至关重要。 APEX行星减…

【2024最新华为OD-C卷试题汇总】游戏表演赛分队(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 文章目录 前…

博睿数据将出席ClickHouse Hangzhou User Group第1届 Meetup

2024年5月18日,博睿数据数智能力中心负责人李骅宸将受邀参加ClickHouse Hangzhou User Group第1届 Meetup活动,分享《ClickHouse在可观测性的应用实践和优化》的主题演讲。 在当前数字化浪潮下,数据的规模和复杂性不断攀升,如何高…

【触想智能】工业级平板电脑五大特征与应用领域分析

工业级平板电脑是专供工业环境使用的工业控制计算机,也被称为工控一体机。工业级平板电脑基本性能及兼容性与商用平板电脑几乎相同,但是工业级平板电脑更注重在不同环境下的稳定性能,因此,工业级平板电脑与普通的商用平板电脑存在…

【揭秘!】我国土地管理的基本国策与基本国情,你了解多少?

在这片古老而又充满活力的土地上,每一寸土地都承载着历史的记忆和未来的希望。我国的土地管理政策,正是在基本国情的基础上,精心编织的一张保障国家和人民利益的大网。今天,就让我们一起揭开我国土地管理的基本国策和基本国情的神…

记录我的程序猿副业首笔创收

在这个充满机遇的数字时代,我,一个普通的程序猿,编程爱好者,终于在云端源想这个平台上收获了属于我的第一桶金。这是一个关于兼职、学习与成长的故事,希望能激发同在编程路上的你,勇敢迈出那一步。 先晒晒…

Web3钱包开发获取测试币-OKB X1Testnet(三)

Web3钱包开发获取测试币-OKB X1Testnet(三) 基于以上两篇 Web3钱包开发获取测试币-Polygon Mumbai(一) :https://suwu150.blog.csdn.net/article/details/137949473Web3钱包开发获取测试币-Base Sepolia(二):https://suwu150.blog.csdn.net/article/det…

《Decoupled Contrastive Learning for Long-Tailed Recognition》阅读笔记

论文标题 《Decoupled Contrastive Learning for Long-Tailed Recognition》 针对长尾识别的解耦对比学习 作者 Shiyu Xuan 和 Shiliang Zhang 来自北京大学计算机学院多媒体信息处理国家重点实验室 初读 摘要 监督对比损失(Supervised Contrastive Loss, SC…

《米小圈动画古诗》—“诗情画意”也不是很难嘛!

创新是一个民族的灵魂和希望,是一个国家兴旺发达的不竭动力,而学习古诗词就是丰富孩子想象力、培养学生创新精神最有效的方法。因为,诗的韵律,情绪跌宕,可以让孩子在大脑中形成一幅完整的图画。 诗歌带给人最美妙的体…

MacOS搭建docker本地私有镜像库

相关环境 macOS: bigsur 11.7.8 docker desktop: 4.22.0 docker engine: 24.0.5 准备工作 本机已经安装好docker desktop,未安装的自行参考其他教程。如果不能翻墙,可以修改本地的镜像地址,可在docker desktop 设置中的docker engine中修…

最新AI实景自动无人直播软件:智能讲解、一键开播,享受24小时自动专业直播体验

在现今数字化时代(ai无人直播下载:hzzxar)直播行业越来越受到人们的关注和喜爱。随着人工智能的不断发展,AI实景自动无人直播软件应运而生,为商家提供了更便捷、高效的直播方式。本文将介绍如何利用这一创新技术&#…

活动预告 | 5月16日 Streaming Lakehouse Meetup · Online 与你相约!

随着 Apache Flink 技术社区的不断成熟和发展,越来越多企业开始利用 Flink 进行流式数据处理,从而提升数据时效性价值,获取业务实时化效果。与此同时,在大数据领域数据湖架构也日益成为新的技术趋势,越来越多企业开始采…

源码部署与SaaS账号:企业软件选择的自建房与租赁公寓之辩

在数字化运营的时代,企业选择软件解决方案就如同在选择住所:源码部署类似于“自建房屋”,而SaaS账号则更像是“租赁公寓”。 自建房屋(源码部署) 当你选择自建房屋时,你需要投入大量的时间和资金来购买土地…