news 2026/2/28 22:51:29

(Arxiv-2025)全属性:用于视觉概念个性化的开放词汇属性编码器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
(Arxiv-2025)全属性:用于视觉概念个性化的开放词汇属性编码器

全属性:用于视觉概念个性化的开放词汇属性编码器

paper title:Omni-Attribute: Open-vocabulary Attribute Encoder for Visual Concept Personalization

paper是snap发布在Arxiv 2025的工作

图 1. Omni-Attribute 是一种开放词汇的图像属性编码器,能够从视觉输入中学习提取属性特定的表示。给定参考图像(顶部)及其对应的文本属性描述(彩色文本框),Omni-Attribute 可以在无需任何测试时优化的前提下,以完全前馈的方式对属性表示进行编码,并在新的情境中进行连贯的合成(中部和底部)。这些学习到的表示具有两个关键特性:(a) 它们能够捕捉用户指定图像属性的高保真、细粒度细节,同时抑制无关的视觉信息,从而减少“复制粘贴”伪影;(b) 它们具有可组合性,使得来自多个图像的表示能够无缝集成到一张连贯的生成图像中。

Abstract

视觉概念个性化旨在仅将特定的图像属性(如身份、表情、光照和风格)迁移到未见过的情境中。然而,现有方法依赖通用图像编码器的整体式嵌入,这些嵌入将多个视觉因素纠缠在一起,从而难以隔离单一属性。这通常会导致信息泄漏和不连贯的合成。为解决这一局限,我们提出了 Omni-Attribute,这是首个旨在学习高保真、属性特定表示的开放词汇图像属性编码器。我们的方法在数据和模型上进行了联合设计:(i) 我们构建了带有正、负属性标注的语义关联图像对,以显式教会编码器应保留或抑制哪些信息;(ii) 我们采用一种双目标训练范式,在生成保真度与对比解耦之间取得平衡。所得嵌入在开放词汇属性检索、个性化和组合生成方面表现出色,并在多个基准上取得了当前最优的性能。

1. Introduction

图像可以被视为视觉词袋 [12],其中包含丰富但纠缠的属性组合,例如身份、表情、姿态、背景、光照、相机角度以及艺术风格。这种内在复杂性使得图像属性的解耦与操控成为一个极具挑战性的问题。最近在个性化方向的进展 [16, 72] 展示了将图像属性迁移到新情境中的强大能力,使诸如“根据参考图生成我的狗”之类的应用成为可能。为实现这些目标,大多数现有方法依赖通用图像编码器,如 CLIP [54]、DINOv2 [46] 或用于图像生成的 VAE [31],从输入图像中提取整体表示,以指导后续的生成过程。然而,这一设计存在根本局限:由于这些编码器会将所有视觉信息压缩并纠缠在一个单一表示中,它们容易出现无关属性的信息泄漏,导致不期望的“复制粘贴”伪影 [11]。例如,如图 5 最左列所示,即使只希望个性化身份,现有图像嵌入仍会无意中迁移参考图像中的光照与服装细节。

在本文中,我们从一个新的角度重新审视属性操控问题,重点研究如何在编码器端直接学习属性级别的表征。我们提出了 Omni-Attribute,这是首个开放词汇图像属性编码器,能够将图像与文本属性描述共同输入并进行处理。不同于通用编码器对所有视觉内容不加区分地捕捉,Omni-Attribute 的设计目标是:(i)专门且忠实地提取与目标属性相关的信息;(ii)抑制与目标无关的视觉内容。

我们在数据与模型两个层面联合设计,以实现属性级别表示学习。在数据层面,我们的训练样本由语义关联的图像对组成。为引导编码器学习属性特定的表征,我们提出一种新的标注方式来建立图像对之间的语义联系,包括:(i)描述两张图共享语义的正属性;(ii)指出两者差异的负属性。这样的成对结构可显式教导编码器哪些视觉概念应被保留,哪些应被抑制。

在模型层面,我们将属性级别的表示学习建模为一个双目标优化问题:一方面,属性嵌入需要包含足够信息,以高保真地重建目标属性;另一方面,它还必须摒弃与任务无关的属性线索。为同时实现这两个目标,我们最小化两类互补损失:(i)生成式损失,确保从参考图像提取的嵌入能有效重建其配对图像;(ii)对比损失,在与负属性相关的嵌入之间引入排斥力。如图 1(a) 所示,这两种损失共同驱动编码器准确且专一地解耦属性特定信息。

最后,我们展示了 Omni-Attribute 在属性组合任务中的多样性:从不同图像中提取的多个属性嵌入可以无缝组合到一张图像中,如图 1(b) 所示。我们的核心贡献如下:

  • 我们提出了 Omni-Attribute,这是首个开放词汇属性编码器,能够在处理图像的同时结合文本属性描述,提取属性特定的表征。

  • 为学习此类属性级别的嵌入,我们引入了新的数据标注策略,并提出一种新的训练方案,在高保真编码和有效抑制无关信息之间取得平衡。

  • 我们展示了 Omni-Attribute 在多个下游任务中的适用性,包括基于属性的图像检索、个性化生成及属性组合。同时我们还对其嵌入空间进行可视化,以增强可解释性。

2. Related Work

视觉表征学习。Omni-Attribute 通过结合监督式、对比式和多模态学习来获取属性级别的嵌入,这三者构成了过去 15 年视觉表征学习的关键基础。早期方法(如 AlexNet [32]、ResNet [23])依赖在 ImageNet [13] 等大规模数据集上的监督预训练,从而学习可迁移到各类识别任务的层级特征。随后,自监督方法 [5, 7, 8, 20, 24] 引入实例级对比目标,以在减少对标注数据依赖的同时保留判别性表示。更近一步,CLIP [54] 通过多模态表征学习统一视觉与语言,使两种模态的嵌入空间得以对齐。在此基础上,DINO [6, 46, 59]、MAE [25] 等方法进一步推动了视觉抽象的发展,但其仍然编码整体性的全局特征,从而将多种图像属性纠缠在一起。沿着这一研究路线,Omni-Attribute 显式建模属性级表示,生成解耦且可组合的嵌入,连接了表征学习与可控图像生成。

图像引导生成。图像引导生成的目标是在保持语义一致性的前提下,通过操控或扩展参考图像的视觉属性来合成新上下文。扩散模型 [28, 61, 62] 与基于 Transformer 的架构 [14, 43, 64] 的最新突破显著提升了生成质量,推动了图像编辑 [18, 26, 35, 44, 63, 68, 70] 以及个性化 [9–11, 15, 16, 33, 51–53, 55, 57, 72] 等应用。一类常见策略是基于编码器的方法:首先将参考图像映射为潜在嵌入,再用这些嵌入对生成模型进行条件控制。例如,IP-adapter [72] 通过轻量级、解耦的交叉注意力层注入由 CLIP 编码的图像特征以实现个性化;Qwen-Image-Edit [68] 则利用多模态编码器 [66] 和 VAE [31] 对文本与视觉指令进行联合编码,实现统一的视觉–语言条件生成。然而,此类条件嵌入通常会将多个视觉属性纠缠在一起,导致信息泄漏和不期望的“复制粘贴”伪影 [11]。Omni-Attribute 在编码器端解决该问题,通过学习属性特定的嵌入生成更干净、更可控的合成结果。

视觉概念解耦。图像在共享像素上天然混合了多种视觉属性,使属性解耦成为长期存在的挑战。早期方法如 Break-A-Scene [1] 与 ConceptExpress [22] 尝试通过用户定义的或由注意力导出的空间掩码来分离概念,但这些方法仅限于提取在空间上可分离的元素。Inspiration Tree [65] 引入了视觉概念的层级式分解,但其表示缺乏可预测性。近期方法如 Token-Verse [17](基于优化)和 Mod-Adapter [76](基于编码器)通过操控 DiT [48] 的调制空间来表示图像属性,但面临两大局限:(i)逐 token 的调制方式难以个性化多 token(短语级)概念;(ii)采用 AdaLN 进行条件控制使得调节能力限制在简单的仿射变换(缩放与平移)。与我们的设定更接近的 OADis [56] 和 De-CLIP [71] 利用文本引导的对比目标进行属性解耦,但它们受限于固定的封闭属性集。相比之下,Omni-Attribute 能够忠实提取开放词汇的属性嵌入,从而实现更精确、更灵活的图像生成。

3. Omni-Attribute

我们的目标是学习一个开放词汇的属性编码器,该编码器以图像和文本属性描述为联合输入,生成解耦且属性特定的表示,同时抑制其他无关的视觉信息。

3.1. Semantic Connections between Image Pairs


图 2. 训练数据标注。我们的训练数据由语义关联的图像对组成,并附有正属性与负属性的标注,用以根据图像间共享或不同的特征来定义它们的关系。右侧的词云展示了属性标注的丰富性与多样性,有助于训练一个开放词汇的属性编码器。

如图 2 所示,我们的训练样本由语义关联的图像对组成。为学习属性级表征,我们设计了一种新的标注方案,通过两类属性为每个图像对建立语义联系:(i)正属性,用于描述两张图像共享的语义特征;(ii)负属性,用于强调两者之间的差异性特征。

正属性与负属性的标注。要获得高质量的属性标注,需要强大的视觉—语言理解能力以及冗长且细致的指令提示,这在大规模推理中成本极高。为在标注质量与成本之间取得平衡,我们采用两阶段标注流程。

在第一阶段,我们利用高性能但计算昂贵的 72B 参数多模态大语言模型(MLLM)[66],并配合详细的指令提示,为子数据集生成高质量的属性标注。受 Chain-of-Thought [67] 启发,我们通过显式提示模型,为每个正属性与负属性生成细粒度的相似性与差异性描述(如图 2 括号中的示例),从而提升标注质量。

在第二阶段,我们在这些已标注的图像对上微调一个 32B 参数的 MLLM,使其学习成为专门从事该任务的专家标注器。通过监督微调,这个学生模型能够内化任务相关的推理行为以及结构化的标注格式,使其无需详细指令即可进行高质量标注。这样显著降低了标注成本,使输入 token 长度减少 3.1 倍、单样本标注延迟减少 6.3 倍。更多关于 MLLM 微调与标注流程的信息见附录 A.2。

图 2(右)的词云展示了最终属性标注的丰富性与多样性,促进了开放词汇属性编码器的学习。

3.2. Attribute-level Representation Learning


图 3. 双目标表征学习。我们的属性级表征学习由两个互补目标共同驱动:生成式损失(上方),用于最大化嵌入中包含的信息并鼓励捕捉细粒度、高保真的细节;以及对比损失(下方),用于提取属性特定的信息并抑制无关内容。

学习高保真、属性级别的嵌入本质上是一个双目标优化问题:一方面,嵌入必须最大化与目标属性相关的信息,以表示细粒度的特征;另一方面,它们还必须抑制来自无关属性的干扰。如图 3 所示,我们通过联合优化两类互补的损失来实现这两个目标:(i)生成式损失,用于促进属性的忠实重建;(ii)对比损失,用于强化属性之间的分离与解耦。

生成式损失。训练框架由编码器 𝓔 和解码器(或生成器)𝓓 组成。给定一个带有 m 个正属性 {a₁⁺, …, aₘ⁺} 和 n 个负属性 {a₁⁻, …, aₙ⁻} 的训练图像对 (Iₓ, Iᵧ),我们随机将其中一张指定为参考图像 Iᵣ,另一张指定为真实图像 I_g,用于计算生成式损失。如图 3(上)所示,生成式损失引导模型在参考图像 Iᵣ 的属性嵌入以及对应文本提示 c_g 的条件下重建 I_g:

L gen = ϕ ( I ∗ , I g ) , I ∗ = D ( E ( I r , { a 1 + , … , a m + } ) , c g ) (1) \mathcal{L}_{\text{gen}} = \phi(I^*, I_g), \quad I^* = \mathcal{D}(\mathcal{E}(I_r, \{a_1^+, \ldots, a_m^+\}),\, c_g) \tag{1}Lgen=ϕ(I,Ig),I=D(E(Ir,{a1+,,am+}),cg)(1)

其中 φ 是图像间通用的相似度或距离函数(例如 L₂ 或流匹配损失)。需要注意的是,这里所有正属性都会作为输入提供给 𝓔,以确保其提取两张图像共享的全部属性信息。实验表明,在训练过程中若去掉任意正属性,会导致 𝓔 编码整张图像的整体信息,从而进一步导致“复制粘贴”伪影,而不是专注于指定的属性。

对比损失。为增强属性解耦,我们引入一种对比损失,使从图像对 (Iₓ, Iᵧ) 中编码得到的正属性嵌入彼此吸引,同时排斥与负属性或不同属性相关的嵌入,如图 3(下)所示。形式上,我们从中采样一个正属性 aᵢ⁺ 和一个负属性 aⱼ⁻,并优化:

L con = − log ⁡ ψ ( a i + , a i + ) ψ ( a i + , a i + ) + ψ ( a i + , a j − ) + ψ ( a j − , a i + ) + ψ ( a j − , a j − ) (2) \mathcal{L}_{\text{con}}=-\log\frac{\psi(a_i^+, a_i^+)} {\psi(a_i^+, a_i^+)+ \psi(a_i^+, a_j^-)+ \psi(a_j^-, a_i^+)+ \psi(a_j^-, a_j^-)} \tag{2}Lcon=logψ(ai+,ai+)+ψ(ai+,aj)+ψ(aj,ai+)+ψ(aj,aj)ψ(ai+,ai+)(2)

相似度函数 ψ 定义如下:

ψ ( a x , a y ) = s i m ( p o o l ( E ( I x , a x ) ) , p o o l ( E ( I y , a y ) ) ) (3) \psi(a_x, a_y)= \mathrm{sim}(\mathrm{pool}(\mathcal{E}(I_x, a_x)),\mathrm{pool}(\mathcal{E}(I_y, a_y))) \tag{3}ψ(ax,ay)=sim(pool(E(Ix,ax)),pool(E(Iy,ay)))(3)

其中相似度度量函数为:

s i m ( u , v ) = exp ⁡ ⁣ ( 1 τ u ⋅ v ∥ u ∥ ∥ v ∥ ) , \mathrm{sim}(u, v) = \exp\!\left(\frac{1}{\tau}\,\frac{u \cdot v}{\|u\|\|v\|}\right),sim(u,v)=exp(τ1u∥∥vuv),

它测量两个池化后属性嵌入的相似度,τ 为温度系数。该损失鼓励编码器在同一正属性的嵌入之间最大化相似度,同时在负属性或不同属性的嵌入之间最小化相似度(即便它们来自同一图像对),从而构建一个具有判别能力的属性级嵌入空间。

最终训练目标将生成式损失与对比损失结合:

L = λ gen ⋅ L gen + λ con ⋅ L con (4) \mathcal{L}= \lambda_{\text{gen}} \cdot \mathcal{L}_{\text{gen}}+ \lambda_{\text{con}} \cdot \mathcal{L}_{\text{con}} \tag{4}L=λgenLgen+λconLcon(4)

其中超参数 λ_gen 与 λ_con 用于在重建保真度与属性解耦之间取得平衡。

3.3. Model Architecture


图 4. 模型结构。我们的属性编码器由经过 LoRA 微调的 MLLM 以及一个可训练的轻量级连接器组成,在保留强视觉—语言先验的同时,能够适应属性解耦任务。图像解码器由一个冻结的生成器构成,并配备可训练的 IP-Adapter [72] 模块以实现个性化。

图 4 展示了我们的模型结构,其由属性编码器 𝓔 和图像解码器 𝓓 组成。

属性编码器。编码器的设计需满足两个关键要求:(i) 能够联合处理文本与图像输入;(ii) 拥有强大的视觉—语言先验,以支持属性解耦目标。为满足这些需求,我们采用 MLLM [66] 作为骨干网络。实证表明,与全量微调相比,LoRA [29] 微调更能保持预训练表征并缓解灾难性遗忘,这与 Shuttleworth 等人 [58] 的研究一致。为进一步使模型适应属性解耦任务,我们在骨干网络之后加入一个轻量、可训练的连接模块 [39]。

编码器的输入是一个多模态 prompt,由输入属性和图像共同组成,如图 4(左上)所示。编码器输出长度为 l 的 token 序列:

A = [ a 1 , … , a l ] , A = [a_1, \ldots, a_l],A=[a1,,al],

作为属性嵌入。

对比头部。为了计算对比损失,我们将二维属性嵌入通过平均池化聚合为一维表示:

p o o l ( A ) = ∑ i = 1 l a i / l . \mathrm{pool}(A) = \sum_{i=1}^{l} a_i / l.pool(A)=i=1lai/l.

图像解码器。对于生成式损失,完整的属性嵌入 A 会被直接输入到下游解码器中,该解码器由一个冻结的图像生成器组成,并在其前接入可训练的 IP-Adapter [72] 模块以实现个性化。

3.4. Composition of Multiple Attributes


组合式图像生成的目标是通过整合来自不同参考源的多个对象或概念来合成连贯的输出。我们的实证结果表明,所学习到的属性嵌入具有可组合性(composable),从而为组合式生成提供了一种替代方案。Composable Diffusion [38] 通过推广无分类器引导(CFG)[27] 以处理多条件信号,实现了多条件合成。具体而言,它结合了“conditional score estimates”,其中每一个都表示与某个独立概念相关的梯度方向,通过计算模型条件预测与无条件预测间的差异得到。

我们在流匹配(flow-matching)生成器 [37] 中采用了类似思想。给定参考图像集合 {I₁, …, I_N} 及其对应的属性描述 {a₁, …, a_N},其中 N 表示参考源数量,我们首先为每个图像–属性对计算 conditional flow field:

Δ ( I i , a i ) = D ( E ( I i , a i ) , ∅ ) − D ( ∅ , ∅ ) . (5) \Delta_{(I_i, a_i)} = \mathcal{D}(\mathcal{E}(I_i, a_i), \varnothing)- \mathcal{D}(\varnothing, \varnothing). \tag{5}Δ(Ii,ai)=D(E(Ii,ai),)D(,).(5)

然后,我们通过对 conditional flow fields 进行线性组合来计算最终的速度:

v ∗ = D ( ∅ , c ) + ∑ i = 1 N w i ⋅ Δ ( I i , a i ) , (6) v^* = \mathcal{D}(\varnothing, c)+ \sum_{i=1}^{N} w_i \cdot \Delta_{(I_i, a_i)}, \tag{6}v=D(,c)+i=1NwiΔ(Ii,ai),(6)

其中 c 为提示词(prompt),wᵢ 控制每个条件信号的权重。需要注意的是,式 (6) 仅对属性条件应用 CFG。在实际应用中,我们也会根据 InstructPix2Pix [4] 的做法对提示词 c 应用 CFG。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/27 17:03:50

Anaconda配置PyTorch环境后,如何接入vLLM提升性能?

Anaconda配置PyTorch环境后,如何接入vLLM提升性能? 在大模型应用日益普及的今天,很多开发者都曾遇到这样的问题:明明GPU算力充足,推理服务却在高并发下“卡顿”严重;显存占用居高不下,但利用率却…

作者头像 李华
网站建设 2026/2/27 21:53:26

23、Docker在云端的应用与容器监控

Docker在云端的应用与容器监控 1. AWS ECS任务注册与运行 在AWS ECS中注册任务的方式与之前使用Nginx时类似,但需要指定一个新的任务族。不过,当任务运行时,可能会因为约束条件不满足而失败。 1.1 任务运行失败示例 假设容器实例类型为t2.micro,内存为1GB。而任务定义要…

作者头像 李华
网站建设 2026/2/26 1:27:06

利用Miniconda快速测试不同版本TensorFlow性能差异

利用Miniconda快速测试不同版本TensorFlow性能差异 在深度学习项目中,你是否曾遇到这样的场景:一篇论文声称其模型在 TensorFlow 2.4 上取得了突破性进展,但你在最新版 TensorFlow 2.13 中复现时却始终无法收敛?或者团队中的旧模型…

作者头像 李华
网站建设 2026/2/21 9:08:40

24、Docker 容器日志监控与管理全攻略

Docker 容器日志监控与管理全攻略 1. 容器日志查看与进程监控 在 Docker 中,我们可以使用 docker logs -f 命令来查看容器的日志。例如: $ docker logs -f gloomy_mclean 192.168.34.1 - - [10/Mar/2015:10:12:35 +0000] "GET / HTTP/1.1" 200 612 "-&q…

作者头像 李华
网站建设 2026/2/22 0:11:10

ChatGPT-5.2:走向全能智能助手的新时代

2025年12月9日,OpenAI发布了ChatGPT-5.2版本,这一版本不仅对人工智能技术进行了全面升级,更在实际应用中打破了传统的界限。无论是在工作、生活,还是娱乐领域,ChatGPT-5.2都不再是简单的问答工具,而是一个能…

作者头像 李华
网站建设 2026/2/19 8:31:15

磨石地坪技术应用与发展:从标杆实践到规范引领

一、磨石地坪行业的技术演进与市场格局技术原理与核心价值磨石地坪通过将特制胶凝材料与精选天然骨料科学混合,经整体浇筑、系统固化、精密研磨及密封处理而成,超越了传统地坪材料在性能与美学上的局限。其核心价值体现在四个维度:超长耐久性…

作者头像 李华