目录
方法概览
实验结果
首页 科技周边 人工智能 GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

Apr 12, 2023 pm 02:55 PM
ai 模型

扩散模型大火之后,很多人将注意力放到了如何利用更有效的 prompt 生成自己想要的图像。在对于一些 AI 作画模型的不断尝试中,人们甚至总结出了让 AI 好好出图的关键词经验:

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

也就是说,如果掌握了正确的 AI 话术,作图质量提升效果将非常明显(参见:《「羊驼打篮球」怎么画?有人花了 13 美元逼 DALL·E 2 亮出真本事 》)。

此外,还有一部分研究者在往另一个方向努力:如何动动嘴皮子就把一幅画改成我们想要的样子。

前段时间,我们报道了一项来自谷歌研究院等机构的研究​。只要说出你想让一幅图变成什么样子,它就能基本满足你的要求,生成照片级的图像,例如让一只小狗坐下:

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

这里给模型的输入描述是「一只坐下的狗」,但是按照人们的日常交流习惯,最自然的描述应该是「让这只狗坐下」。有研究者认为这是一个应该优化的问题,模型应该更符合人类的语言习惯。

最近,来自 UC 伯克利的研究团队提出了一种根据人类指令编辑图像的新方法 InstructPix2Pix:给定输入图像和告诉模型要做什么的文本描述,模型就能遵循描述指令来编辑图像。

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

论文地址:https://arxiv.org/pdf/2211.09800.pdf

例如,要把画中的向日葵换成玫瑰,你只需要直接对模型说「把向日葵换成玫瑰」:

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

为了获得训练数据,该研究将两个大型预训练模型——语言模型 (GPT-3) 和文本到图像生成模型 (Stable Diffusion) 结合起来,生成图像编辑示例的大型成对训练数据集。研究者在这个大型数据集上训练了新模型 InstructPix2Pix,并在推理时泛化到真实图像和用户编写的指令上。

InstructPix2Pix 是一个条件扩散模型,给定一个输入图像和一个编辑图像的文本指令,它就能生成编辑后的图像。该模型直接在前向传播(forward pass)中执行图像编辑,不需要任何额外的示例图像、输入 / 输出图像的完整描述或每个示例的微调,因此该模型仅需几秒就能快速编辑图像。

尽管 InstructPix2Pix 完全是在合成示例(即 GPT-3 生成的文本描述和 Stable Diffusion 生成的图像)上进行训练的,但该模型实现了对任意真实图像和人类编写文本的零样本泛化。该模型支持直观的图像编辑,包括替换对象、更改图像风格等等。

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

方法概览

研究者将基于指令的图像编辑视为一个监督学习问题:首先,他们生成了一个包含文本编辑指令和编辑前后图像的成对训练数据集(图 2a-c),然后在这个生成的数据集上训练了一个图像编辑扩散模型(图 2d)。尽管训练时使用的是生成的图像和编辑指令,但模型仍然能够使用人工编写的任意指令来编辑真实的图像。下图 2 是方法概述。

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

生成一个多模态训练数据集

在数据集生成阶段,研究者结合了一个大型语言模型(GPT-3)和一个文本转图像模型(Stable Diffusion)的能力,生成了一个包含文本编辑指令和编辑前后对应图像的多模态训练数据集。这一过程包含以下步骤:

  • 微调 GPT-3 以生成文本编辑内容集合:给定一个描述图像的 prompt,生成一个描述要进行的更改的文本指令和一个描述更改后图像的 prompt(图 2a);
  • 使用文本转图像模型将两个文本 prompt(即编辑之前和编辑之后)转换为一对对应的图像(图 2b)。

InstructPix2Pix 

研究者使用生成的训练数据来训练一个条件扩散模型,该模型基于 Stable Diffusion 模型,可以根据书面指令编辑图像。

扩散模型学习通过一系列估计数据分布分数(指向高密度数据的方向)的去噪自编码器来生成数据样本。Latent diffusion 通过在预训练的具有编码器和解码器的变分自编码器的潜空间中操作来提高扩散模型的效率和质量。

对于一个图像 x,扩散过程向编码的 latent  中添加噪声,它产生一个有噪声的 latent z_t,其中噪声水平随时间步 t∈T 而增加。研究者学习一个网络,它在给定图像调节 C_I 和文本指令调节 C_T 的情况下,预测添加到带噪 latent z_t 中的噪声。研究者将以下 latent 扩散目标最小化:

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

此前,曾有研究(Wang et al.)表明,对于图像翻译(image translation)任务,尤其是在成对训练数据有限的情况下,微调大型图像扩散模型优于从头训练。因此在新研究中,作者使用预训练的 Stable Diffusion checkpoint 初始化模型的权重,利用其强大的文本到图像生成能力。

为了支持图像调节,研究人员向第一个卷积层添加额外的输入通道,连接 z_t 和GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求。扩散模型的所有可用权重都从预训练的 checkpoint 初始化,同时在新添加的输入通道上运行的权重被初始化为零。作者在这里重用最初用于 caption 的相同的文本调节机制,而没有将文本编辑指令 c_T 作为输入。

实验结果

在下面这些图中,作者展示了他们新模型的图像编辑结果。这些结果针对一组不同的真实照片和艺术品。新模型成功地执行了许多具有挑战性的编辑,包括替换对象、改变季节和天气、替换背景、修改材料属性、转换艺术媒介等等。

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

研究人员将新方法与最近的一些技术,如 SDEdit、Text2Live 等进行了比较。新模型遵循编辑图像的说明,而其他方法(包括基准方法)需要对图像或编辑层进行描述。因此在比较时,作者对后者提供「编辑后」的文本标注代替编辑说明。作者还把新方法和 SDEdit 进行定量比较,使用两个衡量图像一致性和编辑质量的指标。最后,作者展示了生成训练数据的大小和质量如何影响模型性能的消融结果。

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求

以上是GPT-3、Stable Diffusion一起助攻,让模型听懂甲方修图需求的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Vue.js 中字符串转对象用什么方法? Vue.js 中字符串转对象用什么方法? Apr 07, 2025 pm 09:39 PM

Vue.js 中字符串转对象时,首选 JSON.parse() 适用于标准 JSON 字符串。对于非标准 JSON 字符串,可根据格式采用正则表达式和 reduce 方法或解码 URL 编码字符串后再处理。根据字符串格式选择合适的方法,并注意安全性与编码问题,以避免 bug。

mysql安装后怎么使用 mysql安装后怎么使用 Apr 08, 2025 am 11:48 AM

文章介绍了MySQL数据库的上手操作。首先,需安装MySQL客户端,如MySQLWorkbench或命令行客户端。1.使用mysql-uroot-p命令连接服务器,并使用root账户密码登录;2.使用CREATEDATABASE创建数据库,USE选择数据库;3.使用CREATETABLE创建表,定义字段及数据类型;4.使用INSERTINTO插入数据,SELECT查询数据,UPDATE更新数据,DELETE删除数据。熟练掌握这些步骤,并学习处理常见问题和优化数据库性能,才能高效使用MySQL。

Laravel的地理空间:互动图和大量数据的优化 Laravel的地理空间:互动图和大量数据的优化 Apr 08, 2025 pm 12:24 PM

利用地理空间技术高效处理700万条记录并创建交互式地图本文探讨如何使用Laravel和MySQL高效处理超过700万条记录,并将其转换为可交互的地图可视化。初始挑战项目需求:利用MySQL数据库中700万条记录,提取有价值的见解。许多人首先考虑编程语言,却忽略了数据库本身:它能否满足需求?是否需要数据迁移或结构调整?MySQL能否承受如此大的数据负载?初步分析:需要确定关键过滤器和属性。经过分析,发现仅少数属性与解决方案相关。我们验证了过滤器的可行性,并设置了一些限制来优化搜索。地图搜索基于城

mysql 无法启动怎么解决 mysql 无法启动怎么解决 Apr 08, 2025 pm 02:21 PM

MySQL启动失败的原因有多种,可以通过检查错误日志进行诊断。常见原因包括端口冲突(检查端口占用情况并修改配置)、权限问题(检查服务运行用户权限)、配置文件错误(检查参数设置)、数据目录损坏(恢复数据或重建表空间)、InnoDB表空间问题(检查ibdata1文件)、插件加载失败(检查错误日志)。解决问题时应根据错误日志进行分析,找到问题的根源,并养成定期备份数据的习惯,以预防和解决问题。

Vue.js 如何将字符串类型的数组转换为对象数组? Vue.js 如何将字符串类型的数组转换为对象数组? Apr 07, 2025 pm 09:36 PM

总结:将 Vue.js 字符串数组转换为对象数组有以下方法:基本方法:使用 map 函数,适合格式规整的数据。高级玩法:使用正则表达式,可处理复杂格式,但需谨慎编写,考虑性能。性能优化:考虑大数据量,可使用异步操作或高效数据处理库。最佳实践:清晰的代码风格,使用有意义的变量名、注释,保持代码简洁。

如何设置Vue Axios的超时时间 如何设置Vue Axios的超时时间 Apr 07, 2025 pm 10:03 PM

为了设置 Vue Axios 的超时时间,我们可以创建 Axios 实例并指定超时选项:在全局设置中:Vue.prototype.$axios = axios.create({ timeout: 5000 });在单个请求中:this.$axios.get('/api/users', { timeout: 10000 })。

mysql安装后怎么优化数据库性能 mysql安装后怎么优化数据库性能 Apr 08, 2025 am 11:36 AM

MySQL性能优化需从安装配置、索引及查询优化、监控与调优三个方面入手。1.安装后需根据服务器配置调整my.cnf文件,例如innodb_buffer_pool_size参数,并关闭query_cache_size;2.创建合适的索引,避免索引过多,并优化查询语句,例如使用EXPLAIN命令分析执行计划;3.利用MySQL自带监控工具(SHOWPROCESSLIST,SHOWSTATUS)监控数据库运行状况,定期备份和整理数据库。通过这些步骤,持续优化,才能提升MySQL数据库性能。

偏远的高级后端工程师(平台)需要圈子 偏远的高级后端工程师(平台)需要圈子 Apr 08, 2025 pm 12:27 PM

远程高级后端工程师职位空缺公司:Circle地点:远程办公职位类型:全职薪资:$130,000-$140,000美元职位描述参与Circle移动应用和公共API相关功能的研究和开发,涵盖整个软件开发生命周期。主要职责独立完成基于RubyonRails的开发工作,并与React/Redux/Relay前端团队协作。为Web应用构建核心功能和改进,并在整个功能设计过程中与设计师和领导层紧密合作。推动积极的开发流程,并确定迭代速度的优先级。要求6年以上复杂Web应用后端

See all articles