(2024,分数蒸馏抽样,Delta 降噪分数,LoRA)PALP:文本到图像模型的提示对齐个性化
PALP: Prompt Aligned Personalization of Text-to-Image Models
公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群)
目录
0. 摘要
4. 提示对齐方法
4.1 概述
4.2 个性化
4.3 提示对齐分数抽样
4.4 避免过饱和和模式崩溃
5. 结果
0. 摘要
内容创作者通常致力于使用个人主题创建个性化图像,超越传统的文本到图像模型的能力。此外,他们可能希望生成的图像涵盖特定的地点、风格、氛围等。现有的个性化方法可能会影响个性化能力或与复杂文本提示的对齐。这种权衡可能妨碍用户提示的实现和主题的忠实性。我们提出了一种新方法,专注于解决这个问题的单一提示的个性化方法。我们将我们的方法称为提示对齐个性化(prompt-aligned personalization)。尽管这可能看起来有限制,但我们的方法在改善文本对齐方面表现出色,能够创建具有复杂提示的图像,这可能对当前技术构成挑战。特别是,我们的方法使用额外的分数蒸馏抽样(score distillation sampling)项,保持个性化模型与目标提示对齐。我们展示了我们的方法在多样本和单样本环境中的多功能性,并进一步展示它可以组合多个主题或从参考图像(如艺术作品)中汲取灵感。我们定量和定性地与现有基准和最先进的技术进行了比较。
项目页面位于 https://prompt-aligned.github.io/



4. 提示对齐方法
4.1 概述
我们的主要目标是教导 G 生成与新主题 S 相关的图像。然而,与先前的方法不同,我们强调为单一文本提示(用 y 表示)实现最佳结果。例如,考虑这样一种情景,感兴趣的主题是自己的猫,提示是 y = "A sketch of [my cat] in Paris"。在这种情况下,我们的目标是生成一个忠实地代表猫的图像,同时包括所有提示元素,包括素描风格和巴黎的背景。
关键思想是优化两个目标:个性化和提示对齐。对于第一部分,即个性化,我们微调 G 以从噪声样本中重建 S。提高提示对齐的一种选择是在调整 G 对 S 进行微调时将目标提示 y 作为条件。然而,这会导致次优结果,因为我们没有描绘 y 的图像(例如,我们既没有猫的素描图像,也没有它在巴黎的照片)。相反,我们将 G 的噪声预测朝向目标提示 y 进行推动。具体而言,我们使用分数抽样方法将 G 对 S 的估计引导到分布密度 p(x|y)(见图4)。通过同时使用这两个目标,我们实现了两件事情:(1)通过反向扩散过程生成目标主题 S(个性化),同时(2)确保噪声预测与文本 y 对齐。接下来详细解释我们的方法。
4.2 个性化
我们遵循先前的方法 [15, 28, 39, 46],在代表 S 的一小组图像上对 G 进行微调,这组图像可以只有一张照片。我们使用 LoRA 方法 [22] 更新 G 的权重,其中我们仅更新网络权重的子集 θ_LoRA ⊆ θ,即自注意力和交叉注意力层。此外,我们优化一个新的词嵌入 [V] 来表示 S。
4.3 提示对齐分数抽样
在小图像集上进行长时间的微调可能导致模型过拟合。在这种情况下,扩散模型的预测总是将反向去噪过程引导到训练图像中的一个,而不考虑任何条件提示。确实,我们观察到过拟合的模型甚至在单个去噪步骤中都能从噪声样本中估计输入。

在图 5 中,我们通过分析模型对 x_0(真实样本图像)的估计来可视化模型的预测。真实样本的估计 ˆx_0 是通过模型的噪声预测导出的,公式如下:

从图 5 中可以看出,预训练模型(在个性化之前)将图像引导到类似素描的图像,其中估计值 ˆx_0 具有白色背景,但缺少主题细节。在没有 PALP 的情况下应用个性化,会导致过拟合,训练图像的元素(如背景)更为显著,而素描感逐渐消失,表明与提示 “A sketch” 不对齐,并过度拟合输入图像。使用 PALP 时,模型预测将反向去噪过程引导到类似素描的图像,同时保持个性化,还原了猫的形状。
我们的关键思想是鼓励模型的去噪预测朝向目标提示。或者,我们推动模型对真实样本的估计(用 ˆx_0 表示)与提示 y 对齐。
在我们的示例中,目标提示是 “A sketch of [V]”,我们将模型的预测推向素描,并防止过拟合特定图像背景。与个性化损失一起,这将鼓励模型专注于捕捉 [V] 的识别特征,而不是重建背景和其他干扰特征。
为了实现后者,我们使用分数蒸馏抽样(SDS)技术[34]。具体而言,给定一个不包含占位符 "[V]" 的干净目标提示 y^c。然后,我们使用分数抽样来优化损失:
![]()
![]()
请注意,我们使用预训练的网络权重来评估公式(3),并省略所有已学习的占位符(例如 [V])。因此,通过最小化该损失,我们将保持与文本提示 y 对齐,因为预训练模型具有有关提示元素的所有知识。
Poole等人 [34] 找到了一种优雅而高效的分数函数近似,使用以下方法:

其中 ϕ 是控制 x 外观的权重,˜w(t) 是加权函数。这里的 G^α 表示无分类器引导预测,它是条件和无条件(y = ∅)噪声预测的外推(extrapolation)。标量 α ∈ R+ 通过以下方式控制外推:
![]()
在我们的情况下,x = ˆx0,并且根据公式(2)从 G 的噪声预测中导出。因此,ˆx0 的外观直接由 LoRA 权重和 [V] 控制。
4.4 避免过饱和和模式崩溃
通过 SDS 进行引导会产生较少多样性和过饱和的结果。类似 [26, 52] 的替代实现改善了多样性,但整体上个性化仍受到影响(请参见附录 A)。我们认为这背后的原因是公式(4)中的损失将预测 ˆx_0 推向 p(x|y_c) 的分布中心,而干净的目标提示 y^c 只包含主题类别,即 “一只猫的素描”,因此损失将鼓励 ˆx_0 走向一般猫的分布中心,而不是我们的猫的分布中心。
相反,我们发现 Delta Denoising Score (DDS) [18] 变体效果更好。具体而言,我们使用个性化模型预测与预训练模型预测
![]()
![]()
之间的残差方向,其中 α 和 β 分别是它们的引导尺度。这里 y_P 是个性化提示,即 “A photo of [V]”,y^c 是一个干净的提示,例如 “A sketch of a cat.””。然后,分数可以通过以下方式估计:

这会扰动去噪预测到目标提示的方向(见图 4 的右侧)。我们的实验证明,不平衡的引导尺度,即 α > β,效果更好。我们还考虑了两个变体实现:(1)在第一种实现中,我们对两个分支(文本对齐和个性化分支)使用相同的噪声,以及(2)我们对分支使用两个独立同分布的噪声样本。使用相同的噪声比后者实现更好的文本对齐。
关于 PALP 的计算复杂性:公式(6)中的梯度与个性化梯度成比例,具有缩放:

由于右侧的梯度也是公式(1)的导数的一部分,因此我们不需要通过对齐分支对文本到图像模型进行反向传播。这可能对使用更大模型的引导来提升较小模型的个性化性能很有用。最后,我们还注意到对于较大的 t 值,缩放项非常大。通过
![]()
重新缩放梯度确保了所有时间步的均匀梯度更新,并提高了数值稳定性。
5. 结果
我们将我们的方法与多样本方法进行比较,包括 CustomDiffusion [28]、P+ [51] 和 NeTI [1]。我们还使用我们的实现对 TI [15] 和 DB [39] 进行比较,这也应该突显出通过将我们的框架与现有的个性化方法结合使用所取得的收益。


相关文章:
(2024,分数蒸馏抽样,Delta 降噪分数,LoRA)PALP:文本到图像模型的提示对齐个性化
PALP: Prompt Aligned Personalization of Text-to-Image Models 公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群) 目录 0. 摘要 4. 提示对齐方法 4.1 概述 4.2 个性化 4.3 提示对齐分数抽…...
近日遇到数据库及其他问题
一、查找备份表和原表不一样数据 select * from A where (select count(1) from A_BAK where A.IDA_BAK.ID) 0 二、在数据量比较大的表中新增有默认值的列速度较慢问题 使用 以下语句,在上亿数据的表中执行速度较慢 alter table TEST add col_a integer DEFA…...
【conda】conda 版本控制和环境迁移/安装conda加速工具mamba /conda常用指令/Anaconda配置
【conda】安装conda加速工具mamba /conda常用指令/Anaconda配置 0. conda 版本控制和环境迁移1. 安装conda加速工具mamba2. conda install version3. [Anaconda 镜像](https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/)使用帮助4. error deal 0. conda 版本控制和环境迁移…...
“/bin/bash“: stat /bin/bash: no such file or directory: unknown
简介:常规情况下,在进入容器时习惯使用 /bin/bash为结尾,如:docker exec -it test-sanic /bin/bash, 但是如果容器本身使用了精简版,只装了sh命令,未安装bash。这时就会抛出"/bin/bash&quo…...
基于Spring Boot+vue的云上新鲜水果超市商城系统
本云上水果超市是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了用户、员工信息和管理员这三者的需求。操作简单易懂,合理分析各个模块的功能,尽可能…...
vue-ESlint代码规范及修复
1. 介绍 ESLint:是一个代码检查工具,用来检查你的代码是否符合指定的规则(你和你的团队可以自行约定一套规则)。 在创建项目时,我们使用的是 JavaScript Standard Style 代码风格的规则。 规范网址:https://standardjs.com/rules-zhcn.htm…...
Oracle数据库断电后不能打开的解决
数据库突然断电后,不能打开。或者偶尔能打开,但是很快就关闭。 原因可能很多。但是解决问题只有一种办法:看trace日志,alert错误日志 简单写下我的解决过程: 1,在alert日志中: 错误如下两种:…...
论文复现: In-Loop Filter with Customized Weights For VVC Intra Coding
论文复现: In-Loop Filter with Customized Weights For VVC Intra Coding 这个好难好难。啊啊啊啊。核心:权重预测模块功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的…...
配置华为设备NQA UDP Jitter检测VoIP业务抖动
组网需求 如图1所示,总部和子公司之间需要跨越外部网络进行通信,DeviceA和DeviceD为总部和子公司的网络出口设备,DeviceB和DeviceC为外部网络提供商的边缘设备。 总部和子公司之间经常要通过VoIP进行电话会议,要求双向时延小于2…...
GitHub要求所有贡献代码的用户在2023年底前启用双因素认证
到2023年底,所有向github托管的存储库贡献代码的用户都必须启用一种或多种形式的2FA。 双重身份认证 所谓双重身份认证(Two-Factor Authentication),就是在账号密码以外还额外需要一种方式来确认用户身份。 GitHub正在大力推动双…...
Nginx——强化基础配置
1、牢记Context Context是Nginx中每条指令都会附带的信息,用来说明指令在哪个指令块中使用,可以将Context 理解为配置环境。 每个指令都拥有自己的配置环境,如果把配置环境记错了,或者在设计时未考虑配置环境的作用,…...
黑马苍穹外卖学习Day6
HttpClient 介绍 HttpClient 是 Apache 提供的一个开源的 Java HTTP 客户端库,用于发送 HTTP 请求和处理 HTTP 响应。它提供了一种更简便的方式来执行 HTTP 请求,并支持多种协议,如 HTTP、HTTPS、FTP 等。 使用 HttpClient 可以方便地与远程…...
【Java 设计模式】设计原则之里氏替换原则
文章目录 1. 定义2. 好处3. 应用4. 示例结语 在软件开发中,设计原则是创建灵活、可维护和可扩展软件的基础。 这些原则为我们提供了指导方针,帮助我们构建高质量、易理解的代码。 ✨单一职责原则(SRP) ✨开放/封闭原则(…...
一步步指南:从指定时长中提取需求的帧图片,高效剪辑视频
在现代多媒体时代,视频已经成生活中不可或缺的一部分。从视频中提取某一帧图片,或者对视频进行剪辑,都是常见的需求。下面一起来看云炫AI智剪如何从指定时长中提取需求的帧图片,如何高效地剪辑视频。 按指定时长提取视频某帧图片的…...
【打卡】牛客网:BM93 盛水最多的容器
题目: 考虑到盛水容器的特殊性。双指针从最两边开始遍历,遍历过程中舍弃最小的。 不知道原理。 模板的: class Solution { public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*…...
Golang 文件操作
读取 一次性读取 data, err : os.ReadFile("filename.txt") if err ! nil {log.Fatal(err) } fmt.Println(string(data))按行读取 方式1:bufio.NewScanner file, err : os.Open("filename.txt") if err ! nil {panic(err) } defer file.Clo…...
C++I/O流——(3)文件输入/输出(第二节)
归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言📝 含泪播种的人一定能含笑收获ÿ…...
内网穿透[让你在家里也能榨干学校的服务器]Yep!
内网穿透 问题:什么是内网穿透,内网穿透的作用是什么? 前提!!!!你得拥有超级管理员的权限,比如root,不然后面的一切免提! 应用场景如下:比如你…...
构建基于RHEL9系列(CentOS9,AlmaLinux9,RockyLinux9等)的支持63个常见模块的PHP8.1.20的RPM包
本文适用:rhel9系列,或同类系统(CentOS9,AlmaLinux9,RockyLinux9等) 文档形成时期:2023年 因系统版本不同,构建部署应略有差异,但本文未做细分,对稍有经验者应不存在明显障碍。 因软件世界之复杂和个人能力…...
你知道什么是Java中的类型强转吗?
强制类型转换 强转存在与父转子的时候,子转父不需要进行强转,如 Object o "hello"; //String类是Object类的子类,无需进行强转类型强转分为两种情况: Ⅰ、向下转型:将父类对象引用转换为子类对象引用&am…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
dify打造数据可视化图表
一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
回溯算法学习
一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...
[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG
TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码:HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...
