TextCraftor:一种创新的文本编码器微调技术,无需额外数据集改善图像质量与文本对齐

本文主要是介绍TextCraftor:一种创新的文本编码器微调技术,无需额外数据集改善图像质量与文本对齐,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TextCraftor是一种创新的文本编码器微调技术,能够显著提升文本到图像生成模型的性能。

通过奖励函数优化,TextCraftor是一种创新的文本编码器微调技术改善了图像质量与文本对齐,无需额外数据集。从演示图片来看效果相当好。

TextCraftor的提出为文本到图像生成领域带来了新的视角。其在图像编辑、视频合成等领域的应用前景广阔,尤其是在需要高质量和与文本高度对齐的图像生成任务中。此外,TextCraftor的控制生成能力也为个性化内容创作提供了新的可能性。

相关链接

论文链接:https://arxiv.org/pdf/2403.18978.pdf

论文阅读

TextCraftor:你的文本编码器可以是图像质量控制器

摘要

基于扩散的文本到图像生成模型,例如Stable Diffusion已经彻底改变了内容生成领域。尽管他们在图像编辑和视频合成有很强大的能力,但是这些模型并非没有其局限性。

合成一个与输入文本对齐良好的图像仍然是一个挑战,需要详细的提示并多次运行精心制作才能获得满意的结果。 为了减轻这些限制,许多研究都在努力利用各种技术微调预训练的扩散模型即UNet。然而,文本到图像扩散模型训练的关键问题一直存在大部分仍未开发。

是否可能和可行微调文本编码器来提高文本到图像扩散模型的性能?

我们的研究结果表明,在其他大型语言模型的Stable Diffusion中使用时不替换CLIP文本编码器,通过我们提出的微调方法TextCraftor来增强它,从而在定量基准和人的评估。

有趣的是,我们的技术还可以通过插值不同的文本编码器来实现可控的图像生成微调各种奖励。我们也证明了TextCraftor与UNet微调是正交的,并且可以结合进一步提高生成质量。

方法

TextCraftor概述:一个基于提示数据和奖励函数的端到端文本编码器微调范例。 将文本嵌入转发到DDIM去噪链中,得到输出图像并计算奖励损失,然后再进行反推。通过最大化奖励来更新文本编码器(以及可选的UNet)的参数。

实验

定性的可视化

  • 左:在part-prompts上生成的图像,按照SDv1.5, prompt engineering, DDPO和TextCraftor的顺序。

  • 右:来自HPSv2的示例,订购为sv1.5,提示工程和TextCraftor。

不同模型生成结果比较

每个提示显示从三个不同模型生成的图像,分别是SDv1.5,TextCraftor, TextCraftor UNet,从左到右列出。对于所有生成结果随机种子是固定的。

原始文本之间嵌入插值(权重)

0.0)和一个来自TextCraftor(重量1.0),演示 可控的一代。从上到下一行:TextCraftor使用HPSv2, PickScore和Aesthetics作为奖励模型。

混合风格

从不同的奖励模型微调的文本编码器可以协作并作为风格混合。底部列出的权重分别用于组合来自{origin, Aesthetics, PickScore, HPSv2}的文本嵌入。

消融对奖励模型及CLIP的影响

最左边的栏显示原始图像。averaged Aesthetics、PickScore和HPSv2平均得分分别为5.49分、18.19分和0.2672。下面的列显示使用不同的奖励模型合成无CLIP约束和有CLIP约束的图像。奖励分数列在底部。

结论

这项工作提出了TextCraftor,一个稳定而强大的框架来微调预训练的文本编码器来改进文本到图像的生成。只有提示词数据集和预定义的奖励函数,TextCraftor可以显着提高生成质量相比预训练的文本到图像模型,基于强化学习的方法和提示工程。

TextCraftor的提出为文本到图像生成领域带来了新的视角。其在图像编辑、视频合成等领域的应用前景广阔,尤其是在需要高质量和与文本高度对齐的图像生成任务中。此外,TextCraftor的控制生成能力也为个性化内容创作提供了新的可能性。

感谢你看到这里,也欢迎点击关注下方公众号,一个有趣有AI的AIGC公众号:关注AI、深度学习、计算机视觉、AIGC、Stable Diffusion、Sora等相关技术,欢迎一起交流学习💗~

这篇关于TextCraftor:一种创新的文本编码器微调技术,无需额外数据集改善图像质量与文本对齐的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

Oracle数据库使用 listagg去重删除重复数据的方法汇总

《Oracle数据库使用listagg去重删除重复数据的方法汇总》文章介绍了在Oracle数据库中使用LISTAGG和XMLAGG函数进行字符串聚合并去重的方法,包括去重聚合、使用XML解析和CLO... 目录案例表第一种:使用wm_concat() + distinct去重聚合第二种:使用listagg,

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

Python实现将实体类列表数据导出到Excel文件

《Python实现将实体类列表数据导出到Excel文件》在数据处理和报告生成中,将实体类的列表数据导出到Excel文件是一项常见任务,Python提供了多种库来实现这一目标,下面就来跟随小编一起学习一... 目录一、环境准备二、定义实体类三、创建实体类列表四、将实体类列表转换为DataFrame五、导出Da

Python实现数据清洗的18种方法

《Python实现数据清洗的18种方法》本文主要介绍了Python实现数据清洗的18种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录1. 去除字符串两边空格2. 转换数据类型3. 大小写转换4. 移除列表中的重复元素5. 快速统

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

通过C#获取PDF中指定文本或所有文本的字体信息

《通过C#获取PDF中指定文本或所有文本的字体信息》在设计和出版行业中,字体的选择和使用对最终作品的质量有着重要影响,然而,有时我们可能会遇到包含未知字体的PDF文件,这使得我们无法准确地复制或修改文... 目录引言C# 获取PDF中指定文本的字体信息C# 获取PDF文档中用到的所有字体信息引言在设计和出