跳转至

SAEdit: Token-Level Control for Continuous Image Editing via Sparse Autoencoder

会议: ECCV2026
论文: ECCV 原文
领域: 图像生成
关键词: 连续图像编辑、稀疏自编码器、token 级控制、语义解耦、T5

一句话总结

SAEdit 将 T5 token 表征映射到稀疏语义空间,筛选并聚合可缩放的属性方向,再通过时序注入控制图像编辑强度;在 Flux 用户研究中,相对 ConceptSlider(Flux)的整体偏好胜率为 71%,但解耦能力仍受生成模型先验限制。

研究背景与动机

图像编辑不仅要回答“改成什么”,还要回答“改多少、只改谁”。 让同一个人从没有笑容逐渐变成大笑,并保持发色、项链和衣服纹理,比生成一张符合“开心的人”的图片更严格。 离散提示词只能用“轻微微笑”“咧嘴笑”等描述切换强度,且整句文本会共同影响画面,不天然对应一个独立的视觉旋钮。 直接在稠密文本嵌入之间插值虽然得到连续数值,语义变化却可能纠缠其他属性;原文图 2 就以编辑不足或无关元素变化说明这一问题。

已有连续编辑方法大致有两种代价:通用、无需逐编辑优化的方法容易牵动身份与构图,而 Concept Sliders 等专门优化的方法需要为新属性再训练可控表示。 因此,本文关注的不是再次提升文本到图像生成能力,而是从已有文本条件中提取更可分离的控制方向。 它希望同一个语义方向能跨人物、场景复用,同时只作用于被选中的主体 token。 这里的“连续”是同一属性的强弱变化,不是多轮对话编辑,也不是保证任意编辑指令都能线性改变像素。

稀疏自编码器(Sparse Autoencoder,SAE)提供了一个切入点:把稠密向量展开为高维、少量激活的字典表示,使特定属性更容易由少数坐标承载。 作者选择 T5 最终输出,而不是某个扩散模型内部层,这让语义控制器与图像渲染骨干分开。 方向一旦找到,兼容同一文本编码器的生成模型即可接收修改后的嵌入;这并不意味着不同文本编码器之间也能直接复用。 核心 idea:先用 SAE 暴露稀疏属性坐标,再从多个最小语义差异提示对中提炼共同方向,把该方向按强度和去噪阶段注入指定 token。

方法详解

整体框架

输入包括源图像及其文本条件、要修改的主体 token,以及定义目标属性的源/目标描述对;输出是在保留原内容的同时改变该属性的图像。 离线阶段训练 SAE;方向构建阶段筛选属性坐标并聚合多个提示对;编辑阶段才对具体图像的 token 嵌入施加控制。 这些阶段不应混为逐图优化:SAE 需要训练,但新属性无需重新训练扩散骨干或专属 LoRA。

框架依次包含“稀疏表征学习”“属性坐标筛选”“多提示方向聚合”和“token 级时序注入”。 前者给出可编码、可解码的稀疏空间,中间两者产生可复用方向,最后一者结合目标 token、初始噪声和编辑强度生成输出。 去噪器的网络和更新规则保持原样,但它接收的文本条件会随去噪阶段变化,不能把“不改去噪过程”误解为每一步条件恒定。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
        Corpus["提示语料<br/>冻结 T5 输出"] --> Sparse["稀疏表征学习"]
        Sparse -->|冻结 SAE| Select["属性坐标筛选"]
        Pairs["同一属性的<br/>多个提示对"] --> Select
        Select --> Aggregate["多提示方向聚合"]
        Aggregate --> Inject["token 级时序注入"]
        Source["源图文本、目标 token<br/>相同初始噪声"] --> Inject
        Inject --> Render["冻结生成骨干<br/>输出不同强度图像"]

关键设计

1. 稀疏表征学习:在生成器实际接收的文本条件上建立语义字典

作者先把提示语料送入冻结的 T5,收集每个非 padding token 的最终输出嵌入。 SAE 编码器将这些稠密嵌入映射到更高维的稀疏潜空间,解码器再重建原始 T5 表征。 训练的基本约束是重建准确,同时让每个 token 的潜码只有少量非零激活。 这种稀疏性使属性不必隐藏在大量稠密维度的混合变化中,而可以通过少数活跃坐标被识别。 选择最终输出很重要:这些正是扩散 Transformer 在去噪时接收的条件,修改后无需寻找骨干内部的对应层。

这仍然是统计意义上的解耦,不是每个坐标都有唯一且经过因果验证的标签。 一个属性可以分布在多个稀疏坐标中,同一坐标也可能受到语境影响,因此后续还需要筛选和聚合。 SAE 与 T5 表征空间绑定,而不是与某个人物、某个编辑属性或某一套去噪器权重绑定。 论文主要使用 Flux,并在 Stable Diffusion 3.5 上展示复用同一编辑方向的结果。

2. 属性坐标筛选:用提示对的相对激活变化定位目标概念

用“一个女人”和“一个正在笑的女人”这样的提示对定义属性后,分别编码两句文本的全部 token。 不能只比较新增的“笑”字对应 token,因为上下文化文本编码会把语义传播到其他 token。 作者因此对每句话的稀疏 token 表征做逐坐标 max-pooling:只要某个 token 强烈携带该特征,句级汇总就保留它。 这一步用于发现方向;后续把方向注入哪个主体 token,是另一个独立选择。

筛选依据是目标相对源提示的逐坐标激活比率,分母加入小常数以避免数值不稳定。 比率再除以其最大值,用阈值 \(\rho\in[0,1]\) 选出变化最显著的坐标集合。 保留坐标的方向分量取自目标提示表征,其他坐标置零;这不是把完整稠密提示差向量直接加回去。 目标是突出“新出现的属性”,而不是优先保留两句中本来都很强的“人物”等共享概念。 原文式 (2)–(4) 在文本抽取中残缺,以上依据第 4.2 节正文与图 4 解释,不把残缺排版补写成作者的精确公式。

3. 多提示方向聚合:提取跨语境一致的属性变化

单个提示对提取的方向可能携带场景偶然性,或者只在特定语境下表现出足够强的编辑效果。 作者用 LLM 生成 \(N\) 个表达相同属性关系的提示对,例如在海滩和吃蛋糕的场景中分别为人物添加“开心”。 对每一对执行同样的坐标筛选,得到 \(N\) 个候选方向,再把它们逐行堆成方向矩阵。 随后进行奇异值分解(SVD),取最大奇异值对应、位于特征维度上的主方向作为最终编辑方向。

可以把这理解为寻找许多语境共同支持的变化轴,而不是平均所有细节或选一个最顺眼的示例。 聚合出的方向不保证与单个候选方向具有同样少的非零分量,因为不同候选的支持坐标可能不同。 其作用是提高跨语境稳定性,并不提供完全消除无关概念的理论保证。 第 5.2 节显示,多提示聚合增强了表情变化,但仍可能改变项链、发色和服装细节,说明方向发现不能独自完成内容保持。 缓存未包含附录,因此无法确认 \(N\) 的具体取值、提示清单及方向归一化的全部实现细节。

4. token 级时序注入:同时控制修改对象与修改时机

在普通文本到图像设置中,先选择源提示中对应编辑主体的 token,例如“女人”。 只修改该 token 的稀疏编码,再解码回 T5 空间并替换原嵌入,其他 token 保持不变。 原文式 (5) 给出的核心变换可清楚读取,其中 \(\omega\) 控制编辑强度:

\[ e'_{\mathrm{token}}=S_{\mathrm{dec}}\left(S_{\mathrm{enc}}(e_{\mathrm{tgt}})+\omega d_{\mathrm{edit}}\right). \]

对合成源图,编辑时复用生成源图的初始噪声 \(x_T\),让改变主要来自文本条件,而不是随机起点。 对真实图像,标准文本到图像编辑路线还需先用反演取得能够重建源图的起点。 token 局部替换并不等于显式像素掩码,因此不能保证只影响某个空间区域,尤其在多主体或强关联概念中。 原文称 \(\omega=0\) 恢复原嵌入,但严格按公式得到的是 SAE 重建值;有限重建误差下,不宜将其理解为数学上完全相等。

为减少结构破坏,作者进一步让注入强度随去噪进程增加,早期较弱、后期较强,并用 \(\tau\) 限制上界。 这样先利用原条件建立构图,再让属性方向影响后续细节;它与所有步骤使用同一强度的策略不同。 原文采用指数调度,但式 (6) 的指数、乘积和括号在缓存中损坏,本文不猜补精确调度表达式。 强度参数提供连续控制接口,但输出视觉变化是否单调、是否平滑,仍需依靠生成器和实验证据判断。 接入 Flux-Kontext 时还有一个关键变化:修改的是指令中的动作 token,而不是主体 token。 例如“make the man laugh”中从“laugh”对应 token 减去笑的方向,以削弱原指令的强度;不能直接照搬普通设置的主体加法。

一个完整示例

以图 10 的“angry”属性为例,源图是一位佩戴项链的人物,需要逐渐增强愤怒表情,同时保留身份和装饰。 先用仅相差“生气”含义的提示对筛选稀疏坐标,获得针对该属性的初始方向。 接着从多个同类提示对聚合出共同方向,减少某个场景描述对控制向量的偶然影响。 这两个步骤建立属性控制器,不是对待编辑图片做梯度优化。 编辑时复用源图的噪声,把方向加到主体 token 的稀疏编码中,逐步改变强度得到一组图像。 如果聚合后的强方向同时改变项链或发色,再利用时序注入限制它在早期构图阶段的影响。 原文的定性对照表明,这一顺序能得到更强表情并较好保留细节;缓存没有各档强度数值,故这里不虚构参数。

损失函数 / 训练策略

SAE 使用重建目标和稀疏约束,重建项可采用输入与重建嵌入间的均方误差。 另有超参数控制每个 token 潜码期望的非零激活数,训练样本明确排除 padding token。 T5 和图像生成骨干冻结,针对新属性的操作是构建提示对、筛选坐标和 SVD,而非逐属性训练新的生成器。 因此“zero-shot”或“无逐编辑优化”只描述训练完成后的使用方式,不能读成整个方法不需要学习。 缓存的式 (1) 也存在排版损坏,且正文将具体实现指向未提供的附录;不能据此断定损失项的精确组合、稀疏实现、字典宽度或训练预算。

实验关键数据

主实验

第 5.3 节(第 12 页)以 63 张人物场景源图构建评估集,每图应用 6–8 种编辑,共计 432 个编辑场景。 每个场景生成 3–5 档强度,因此每种方法至少评估 1,296 张图像;这不是 1,296 个独立源场景。 图像保持用 LPIPS 衡量,数值越低通常表示与源图越接近;身份保持用 ArcFace 特征余弦相似度衡量。 提示遵循度使用相对源图的 VQA 分数变化,而非仅计算编辑图的绝对分数。 用本笔记符号重述其定义如下,\(I_{\mathrm{src}}\)、\(I_{\mathrm{edit}}\) 分别代表源图和编辑图,\(P_{\mathrm{tgt}}\) 是同一个目标提示:

\[ \Delta\mathrm{VQA}=\mathrm{VQA}(I_{\mathrm{edit}},P_{\mathrm{tgt}})-\mathrm{VQA}(I_{\mathrm{src}},P_{\mathrm{tgt}}). \]

下表摘录原文表 1(第 13 页),数值都是受试者选择 SAEdit 胜过对应方法的比例。 用户研究只比较 Flux 系列方法,每次展示双方各 3 档强度,共收集 390 次成对比较回答,不等于 390 名独立参与者。

对比方法 图像保持胜率 提示遵循胜率 整体质量胜率
Flux Kontext(CFG) 73% 71% 70%
Flux Kontext(LLM) 60% 68% 70%
ConceptSlider(Flux) 71% 67% 71%
Flux Space 59% 92% 93%

这些偏好率支持本文方法在该组比较中的优势,但不是成功率,也没有说明每个对手分配了多少回答。 Flux Kontext 本身没有原生连续强度旋钮,因此作者分别用 CFG 变化和 LLM 编写的不同强度指令作为代理基线。 图 11 的自动指标比较以曲线呈现,当前文本未保留可靠数值,故不据此编造 LPIPS 或 VQA 的精确提升。

消融实验

下表是依据第 5.2 节及图 9、10(第 10–11 页)整理的定性分析表,不是原文第二张数值表。 缓存只有表 1 可直接读取精确结果;消融曲线及缺失附录不能被补成虚构的数值实验。

配置 原文可确认的观察 结论边界
单提示对方向 表情编辑偏弱,第 5.2 节称身份得到保持 图 10 图注另提无关变化,不能表述为完全不扰动
多提示对聚合 编辑增强,但发色、项链和衣服纹理可能改变 聚合提高属性强度,不独自保证细节保持
多提示对聚合加指数注入 较好保留细节,同时保持较强的目标表情 基于图 10 的定性示例,无可读取的数值差值
去掉 SAE,直接使用稠密 T5 编辑不足且属性纠缠,测试了 mean/max pooling 支持稀疏空间作用,但缓存无法量化下降幅度
均值聚合替代 SVD,或均值 token 池化替代 max-pooling 图 9 将它们列为对照,并报告完整配置更优 未提供可读取的各变体精确指标

关键发现

  • 属性方向与注入调度解决不同问题:前者提高语义针对性,后者减少强编辑对结构和细节的扰动。
  • 多提示聚合不能替代时序控制;编辑更强和图像保持更好不是同一件事。
  • SD3.5 的跨骨干结果以及真实图像、风格编辑扩展主要属于定性证据,不能据此推导统一的跨模型胜率。

亮点与洞察

  • 控制单位从整句提示缩小到主体 token,但方向发现仍读取整句话。这一区分同时利用上下文语义与局部干预,避免把属性定位等同于找新增单词。
  • SAE 不只是解释工具,也被用作可操作的控制空间。关键价值在于将筛选出的方向解码回模型已经认识的条件接口。
  • 多提示对与 SVD 将某次具体编辑抽象成跨语境属性方向。这使新属性的主要成本转向方向构建,而不是训练专属 LoRA。
  • 可迁移的设计启发是把“方向是否正确”和“何时施加方向”分开评估。不过其他条件空间能否复用这一策略,仍需独立实验。

局限与展望

  • 作者明确展示模型先验导致的失败:给女性加胡须会改变其感知性别,把狗变绿会让纹理变得卡通化,见图 12(第 14 页)。稀疏控制不能自动解除底座已纠缠的概念。
  • 主定量集集中于人物编辑,只有 63 张源图。广泛非人物属性、复杂多主体指代和真实图片上的性能不能由该规模直接外推。
  • 本笔记的分析:token 选择不是空间掩码,连续参数也不是视觉单调性的保证。未来可分别评估空间泄漏、身份漂移和强度单调性。
  • 当前缓存没有附录,无法复核训练预算、具体超参数、全部提示列表及真实图像反演设置;公式抽取问题已在对应方法段落注明。
  • 用户研究没有在可读正文中给出参与者人数、置信区间或逐方法样本分配。这里报告观察到的偏好率,不额外声称统计显著性。

相关工作与启发

  • 对比 Concept Sliders(原文参考文献 24):该方法学习按属性控制的 LoRA;SAEdit 学习共享 SAE 后通过提示对寻找新方向。差别是可控表示及新增属性成本,不是完全消除训练。
  • 对比 Prompt Sliders(参考文献 58):前者优化概念 token,本文在现有 T5 表征的稀疏空间施加方向。两者使用的骨干与反演条件不同,不能将所有横向结果视为单变量消融。
  • 对比 FluxSpace(参考文献 15):两者都追求连续语义编辑,本文强调稀疏坐标筛选和 token 定位;用户研究中的优势应与其特定强度调参方式一起解读。
  • 对比 SAEuron 与 Concept-Steerers(参考文献 14、38):这些工作把 SAE 用于概念遗忘或生成引导,本文聚焦保留原图内容的连续图像编辑,而非证明更强的通用可解释性。
  • 原文入口为 ECCV 官方论文页;上述相关工作依据本文参考文献说明,不添加未核实的项目或代码链接。

评分

以下为笔记作者的主观判断,采用 5 分制,不是会议评分。 - 新颖性:4/5。将共享文本 SAE、属性筛选与时序控制组合成可复用的连续编辑接口。 - 实验充分度:3/5。有多类基线、消融和用户研究,但人物集规模有限,当前缓存缺附录。 - 写作质量:4/5。方向发现与方向应用区分清楚,不过复现还依赖附录,缓存公式也有损坏。 - 价值:4/5。适合研究轻量条件控制与可解释表征的实际用途,但需要保留对模型先验和重建误差的警惕。