即插即用,无痛增强模型生成美感!字节跳动提出VMix:细粒度美学控制,光影、色彩全搞定
文章链接:https://arxiv.org/pdf/2412.20800
代码地址:https://github.com/fenfenfenfan/VMix
项目地址:https://vmix-diffusion.github.io/VMix/
亮点直击
分析并探索现有模型在光影、色彩等细粒度美学维度上生成图像的差异,提出在文本提示中解耦这些属性,并构建一个细粒度的美学标签体系,提供清晰的模型优化方向;
提出VMix条件注入方法,它将输入文本提示解耦为内容描述和美学描述,通过值混合交叉注意力的条件控制方法,从不同维度提升模型生成的美感;
提出的方法对于现有的扩散模型具有普适效果,作者基于此训练了一个即插即用的美学适配器,与社区模块高度兼容。
实验表明,提出的方法能显著提升现有模型生成美感,优于FreeU、DPO、Textual Inversion等方法
总结速览
解决的问题:
-
扩散模型在文本到图像生成方面表现出色,现有方法在提升图像质量以满足人类偏好方面做出了努力,但未能充分满足人类对视觉生成内容的细粒度审美偏好,如自然光线、丰富色彩和合理构图等;
-
现有方法在提升图像质量以满足人类偏好方面做出了努力,如FreeU、DPO等,尽管整体生成结果可能在文本对齐方面表现更好,但可能在视觉构图等方面表现较差,现有方法未能准确对齐生成图像与人类偏好。
提出的方案:
-
通过对齐人类设计师偏好,构建包括光影、色彩、构图等不同美学标签,将文本条件解耦成内容描述和美学描述;
-
提出新的条件注入方法VMix,通过审美嵌入初始化模块和跨注意力混合控制模块,在保持原有模型图文匹配能力同时,提升美学表现;
-
VMix设计灵活,能够与社区模块(如LoRA、ControlNet和IPAdapter)兼容,为图像生成提供更大的创造能力。
应用的技术:
-
扩散模型架构:Stable Diffusion、SDXL被作为基础图像生成模型进行实验,通过冻结基模仅训练额外小参数网络提升模型美感;
-
美学向量初始化:通过初始化美学向量,将输入文本提示分离为内容描述和多维度美学描述,并通过映射网络将审美标签作为额外条件整合到去噪模型中;
-
值混合交叉注意力:引入交叉注意力混合控制网络,在不直接改变注意力图的同时,最小化对图像-文本对齐的不利影响,从而更好的注入美学条件。
达到的效果:
-
VMix能够在不损害模型原有图文匹配能力的同时,提升模型在光影、色彩、构图等不同美学维度的表现;在与其他方法,如FreeU、DPO、Textual Inversion的比较中表现更出色,证明了其在提升图像美感方面的有效性。
-
在MJHQ-30K和LAION-HQ10K基准测试中,VMix在Aes分数上取得了最高分,表明其在提升美感的重要性。用户研究也表明,应用VMix后,预训练和开源模型更受用户青睐。
方法
VMix框架的pipeline和实现细节,如下图所示,分为三个阶段:
(1)美学向量初始化阶段;(2)训练阶段;(3)推理阶段
对于大多数微调方法,由于控制条件仅来源于文本模型的文本嵌入,即便输入文本中含有一些美学词汇,相关信息一方面很容易在与其它词汇的自注意力过程中被淹没,另一方面,过度包含美学词汇,使输入提示过长,可能导致无法在提示中生成某些主体,从而导致图文匹配度的下降。为了解决这个问题,论文将文本到图像合成的输入文本解耦为内容描述和美学描述,其中美学描述是引入的细粒度美学标签,内容输入是关于图像中主要主体和相关属性的描述。
美学向量初始化
为了让美学知识更高效注入到扩散模型中,设计了美学向量(AesEmb)初始化阶段,这一阶段产生的AesEmb将在训练和推理阶段使用,并且只需要推理一次即可离线缓存。如上图(a)所示,首先构建N组美学标签,其中表示一个特定的美学维度(例如丰富色彩、自然光线、合理构图等),而代表不包含此标签,即负面美学标签,值得注意的是,使用罕见词来表示,从而防止文本模型的语义先验泄漏到负面美学标签中。然后美学标签将被CLIP冻结的文本模型处理,从而产生一对[CLS]标记,记为, 最终可以得到N组这样预定义好的美学向量,即为AesEmb
其中d是维度,N表示美学标签对的数量。
交叉注意力混合控制
美学向量映射网络:在训练过程中,由于单张图片样本包含的正面美学标签的数量是不同的,这时预先定义好的AesEmb就派上用场了,每个样本会去AesEmb中索引对应向量,对于每个美学标签,如果该样本具备该属性,则索引;否则索引,从而重组得到最终的美学特征。然后通过一些线性层做维度变换,映射网络的最后一层用的是零线性层。整个映射网络的计算如下:
是从美学向量映射网络出的最终文本特征。在训练开始时,作为连接层的零初始化线性层的权重和偏置被设置为零。这种初始化确保了微调模型不会引入有害噪声,从而保留了原始预训练模型的能力。
值混合交叉注意力:交叉注意力层中的注意力图决定了文本标记在每个图像块的概率分布,为了尽可能保留预训练模型中固有的图文匹配能力,通过内容分支和美学分支双分支的方式在扩散模型中引入值混合交叉注意力网络,这两个分支共享注意力图,对于美学分支,仅让网络学习一个新的value,从而减少注入过程中对原始注意力图的影响,这个过程可以表示为:
训练及推理细节
模型全参数训练虽然会有更高的上限,但会产生高昂的成本,并且高度定制化;训练过程中,基模参数被冻结,只训练新增的映射网络和值混合交叉注意力网络,基模通过挂载一个小参数的LoRA,从而使模型训练过程更加稳定,并增强了其适用性。训练完成后,形成一个即插即用的模块。在推理阶段,默认使用所有正面的审美标签,如上图(c)所示,从而提升模型在所有审美维度上的生成质量。尽管在训练阶段使用了LoRA,在推理阶段这不是必需的,后面有相关的消融实验
实验结果
实验设置
训练数据:从LAION等大型公开英文数据集中提取了20万张图片,采用自动和人工过滤组合方式进行清洗。这批图除了内容描述文本外,还会标注不同美学维度(如色彩、光影、构图、重心等)的分类标签,用来作为训练过程中的额外条件。
训练设置: SD1.5和SDXL的学习率分别设置为1e−4和1e−5。Batch size设置为256,实验中的总训练步数为50,000。在推理阶段,使用DDIM采样器进行采样25步,CFG为7.5,不使用反向提示词。
评估细节:除了使用MJHQ-30K数据集进行评估外,额外构建一个只包含高美学和高分辨率图片的LAION-HQ10K数据集,使用FID、CLIP Score和Aes Score衡量生成图像的整体质量。
结果
定性比较:在视觉效果上,VMix显著优于其它方法,并且与使用同样训练集的SFT方法比,VMix的效果更好,从而验证了条件注入的有效性,同时对高质量数据进行消融。此外,VMix作为插件可以直接应用于开源模型,提升它们的美学表现。
SD1.5上不同方法的比较
SDXL上不同方法的比较
应用于开源模型的效果
定量指标:VMix模型有着最高的Aes Score,并且可以看到基模的图文匹配能力并没有受到影响,甚至条件解耦后模型相较普通SFT方式更容易在高质量数据集上收敛。推理阶段随着增大,图片美感也会随之提升。
消融实验:文中进一步分析了AesEmb不同维度对生成结果的影响,可以看到不同美学维度都能明显改善图片质量,当一起使用时效果最好;文中还对对LoRA的使用进行了消融,从而验证模型性能的提升主要来自VMix本身。
结论
这项研究提出了VMix,它通过引入美学标签(光影、色彩、构图等)作为额外的条件,并采用交叉注意力混合控制方法来增强模型在各种美学维度上的表现。论文发现,让模型对齐人类期望的最关键因素之一是使用适当的条件控制方法,在解耦的细粒度美学标签下进行训练。受此启发,论文提出了一种有效的条件控制方法,显著提高了模型的生成质量。广泛的实验验证了VMix在文本忠实度和视觉美学方面超越了其他最先进的方法。作为一个即插即用的插件,VMix可以与开源模型无缝集成,提升审美表现,从而进一步推动社区的发展。
参考文献
[1] VMix: Improving Text-to-Image Diffusion Model with Cross-Attention Mixing Control
相关文章:

即插即用,无痛增强模型生成美感!字节跳动提出VMix:细粒度美学控制,光影、色彩全搞定
文章链接:https://arxiv.org/pdf/2412.20800 代码地址:https://github.com/fenfenfenfan/VMix 项目地址:https://vmix-diffusion.github.io/VMix/ 亮点直击 分析并探索现有模型在光影、色彩等细粒度美学维度上生成图像的差异,提出…...

面向对象分析和设计OOA/D,UML,GRASP
目录 什么是分析和设计? 什么是面向对象的分析和设计? 迭代开发 UML 用例图 交互图 基于职责驱动设计 GRASP 常见设计原则 什么是分析和设计? 分析,强调是对问题和需求的调查研究,不是解决方案。例如&#x…...

【每日学点鸿蒙知识】广告ID、NFC手机充值、CSS支持语法、PC与模拟器交互、SO热更新等
1、HamonyOS 样机获取成功返回Oaid为00000000-0000-0000-0000-000000000000? 请求授权时需要触发动态授权弹窗,看一下是不是没有触发授权弹窗。 可以参考以下代码以及文档: // ets import identifier from ohos.identifier.oaid; import hilog from oh…...

30分钟学会HTML
HTML 基本语法 HTML(HyperText Markup Language)是构成网页内容的基础。它使用一系列的标签来描述网页的结构,包括文本、图片、链接等元素。浏览器会解析这些标签并渲染成我们看到的网页。 在线体验一下 CodePen (在线 HTML 编辑器)。 千万不…...

服务器信息整理:用途、操作系统安装日期、设备序列化、IP、MAC地址、BIOS时间、系统
文章目录 引言I BIOS时间Windows查看BIOS版本安装日期linux查看BIOS时间II 操作系统安装日期LinuxWindowsIII MAC 地址IV 设备序列号Linux 查看主板信息知识扩展Linux常用命令引言 信息内容:重点信息:用途、操作系统安装日期、设备序列化、IP、MAC地址、BIOS时间、系统 Linux…...

Golang设计模式目录
go语言实现设计模式 1 文章目录: 1.1 创建型模式 1.Golang设计模式之工厂模式2.Golang设计模式之抽象工厂模式3.Golang设计模式之单例模式4.Golang设计模式之建造者模式5.Golang设计模式之原型模式 1.2 结构型模式 6.Golang设计模式之适配器模式7.Golang设计模式之桥…...

选择IT驻场外包公司,要找有哪些资质的公司
在当今数字化快速发展的时代,IT驻场外包服务成为众多企业优化运营、提升竞争力的关键选择。无论是初创企业寻求技术起步支持,还是大型企业为降低成本、专注核心业务而将部分 IT 职能外包,IT 外包公司都扮演着至关重要的角色。然而,…...

Java List 集合详解:基础用法、常见实现类与高频面试题解析
正文 在 Java 集合框架中,List 是一个非常重要的接口,广泛用于存储有序的元素集合。本文将带你深入了解 List 接口的基本用法、常见实现类及其扩展,同时通过实际代码示例帮助你快速掌握这些知识。 👉点击获取2024Java学习资料 1…...

Arduino UNO 驱动1.8 TFT屏幕显示中文
背景 最近入手了一块1.8寸的tft屏幕,通过学习文档,已经掌握了接线,显示英文、数字、矩形区域、划线、画点等操作, 但是想显示中文的时候操作比较复杂。 问题 1、arduino uno 驱动这款屏幕目前使的是自带的<TFT.h> 库操作…...

Flink operator实现自动扩缩容
官网文档位置: 1.Autoscaler | Apache Flink Kubernetes Operator 2.Configuration | Apache Flink Kubernetes Operator 1.部署K8S集群 可参照我之前的文章k8s集群搭建 2.Helm安装Flink-Operator helm repo add flink-operator-repo https://downloads.apach…...

分布式系统架构6:链路追踪
这是小卷对分布式系统架构学习的第6篇文章,关于链路追踪,之前写过traceId的相关内容:https://juejin.cn/post/7135611432808218661,不过之前写的太浅了,且不成系统,只是简单的理解,今天来捋一下…...

vite-plugin-imagemin安装问题
vite-plugin-imagemin 是一款图片资源压缩插件,能够在打包的时候显著的降低图片资源占用。不过,在安装过程中我们遇到了如下的问题。 对于上面的问题,有以下几种常见的解决方案: 1,使用 yarn 在 package.json 内配置(推荐) 打开 package.json 配置文件,然后添加如下脚本…...

Git revert回滚
回退中间的某次提交(此操作在预生产分支上比较常见),建议此方式使用命令进行操作(做好注释,方便后续上线可以找到这个操作) Git操作: 命令:revert -n 版本号 1:git re…...

永磁同步电机预测模型控制(MPC)
永磁同步电机预测模型控制(MPC) 文章目录 前言1、模型预测控制1.1 连续控制集模型预测控制(CCS-MPC)1.2 有限控制集模型预测控制(FCS-MPC)1.3 模型预测控制的优缺点 2、永磁同步电机模型预测控制2.1 预测模型2.2 价值…...

【JAVA】switch ... case ... 的用法
语法结构: switch(表达式){ case 值1: 表达式和值1匹配时执行的语句 break; case 值2: 表达式和值2匹配时执行的语句 break; …...

基于STM32的热带鱼缸控制系统的设计
文章目录 一、热带鱼缸控制系统1.题目要求2.思路3.电路仿真3.1 未仿真3.2 开始仿真,显示屏显示水温、浑浊度、光照强度等值3.3 当水温低于阈值,开启加热并声光报警3.4 当浑浊度高于阈值,开启自动换水并声光报警3.5 当光照低于阈值,…...

Vue项目整合与优化
前几篇文章,我们讲述了 Vue 项目构建的整体流程,从无到有的实现了单页和多页应用的功能配置,但在实现的过程中不乏一些可以整合的功能点及可行性的优化方案,就像大楼造完需要进行最后的项目验收改进一样,有待我们进一步…...

WinForm开发-自定义组件-1. 工具栏: UcompToolStrip
这里写自定义目录标题 1. 工具栏: UcompToolStrip1.1 展示效果1.2 代码UcompToolStrip.csUcompToolStrip.Designer.cs 1. 工具栏: UcompToolStrip 自定义一些Winform组件 1.1 展示效果 1)使用效果 2)控件事件 1.2 代码 设计 编码 UcompToolStrip.…...

法律专业legal case的留学论文写作技巧分析(1)
对于法律专业的留学生而言,案例的分析是写作的重要方面。无论留学的国家是英、美、澳洲还是加拿大,它们都属于case law 的法律体系。一个非常显著的特点便是通过对案例进行分析和提炼,从中总结提炼出principle和rules。case analysis的留学论…...

2025编程技术前沿:探索最新的开发工具与趋势
随着技术的飞速发展,编程领域每天都在演化,新的技术、框架和工具层出不穷。本文将聚焦2025年最具潜力和吸引力的编程技术与工具,从前沿语言到最受欢迎的开发框架,带您一起探索软件开发领域的最新趋势。 一、编程语言的新生代之星…...

sqlserver sql转HTMM邮件发送
通过sql的形式,把表内数据通过邮件的形式发送出去 declare title varchar(100) DECLARE stat_date CHAR(10),create_time datetime SET stat_dateCONVERT(char(10),GETDATE(),120) SET create_timeDATEADD(MINUTE,-20,GETDATE()) DECLARE xml NVARCHAR (max) DECLAR…...

GeoTrust True BusinessID Wildcard
GeoTrust由DigiCert 提供支持,是最受信任和尊重的品牌之一,以提供高保证的网站安全而闻名。 GeoTrust True BusinessID通配符证书 – 以低成本保护多个主机名。即使将其用于您的公司主页或电子邮件服务器主机名,保护所有敏感信息也是您的目标…...

R语言的数据结构
R语言的数据结构 R语言是专门为统计计算和数据分析而设计的一种编程语言,因其强大的数据处理能力而受到广泛欢迎。在R中,数据结构是理解和有效使用R语言的基础。本文将详细介绍R语言中的主要数据结构,包括向量、矩阵、数据框、列表、因子等&…...

安装和配置MySQL教程
以下是在不同操作系统下安装和配置MySQL的详细教程: Windows系统 下载MySQL安装包 访问MySQL官方网站(https://dev.mysql.com/downloads/mysql/),根据你的操作系统版本(32位或64位)下载相应的MySQL Commu…...

黑马Java面试教程_P10_设计模式
系列博客目录 文章目录 系列博客目录前言1. 工厂方法模式1.1 概述1.2 简单工厂模式1.2.1 结构1.2.2 实现1.2.3 优缺点 1.3 工厂方法模式1.3.1 概念1.3.2 结构1.3.3 实现1.3.4 优缺点 1.4 抽象工厂模式1.4.1 概念1.4.2 结构1.4.3 实现1.4.4 优缺点1.4.5 使用场景 总结࿰…...

043_小驰私房菜_MTK Camera,Hal层将camera型号写到property属性中
【问题背景】 app层需要知道当前设备的摄像头型号,然后做一些差异化处理。底下如何上报这个摄像头型号? 【分析】 在kernel和hal层,都是有地方能获取到当前摄像头的型号,就看在哪里添加方便。获取到摄像头硬件型号后,将其写入到property属性, 然后app就可以通过读取该…...

基础图形化界面的一个图片爬虫期末
下面是爬取界面: 点击即可自动化爬取 以下是完整代码: import tkinter as tk import requests import os #用于文件和目录操作。# 图片爬虫函数 def image_spider(textbox):headers = {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, …...
Outlook2024版如何回到经典Outlook
Outlook2024版如何回到经典Outlook 如果新加入一家公司,拿到的电脑,大概率是最新版的Windows, 一切都是新的。 如果不coding, 使用国产的foxmail大概就可以解决一切问题了。可惜老程序员很多Coding都是基于传统Outlook的,科技公司所有人都是I…...

仿生的群体智能算法总结之二(十种)
群体智能算法是一类通过模拟自然界中的群体行为来解决复杂优化问题的方法。以下是10种常见的群体智能算法,接上文https://blog.csdn.net/lzm12278828/article/details/144933367仿生的群体智能算法总结之一(十种)-CSDN博客https://blog.csdn.net/lzm12278828/article/detail…...

SpringBoot入门之创建一个Hello World项目
文章目录 一、使用传统的方式1、创建一个SpringBoot项目2、配置pom.xml文件3、下载Maven依赖4、创建一个Controller类:com.devops.controller.HelloController5、创建一个引导类:com.devops.HelloApplication6、启动项目8、访问80809、完整项目结构 二、…...