Efficient Personalization of Quantized Diffusion Model without Backpropagation (ZOODiP)¶
会议: CVPR 2025
arXiv: 2503.14868
代码: https://github.com/ignoww/ZOODiP_project (有)
领域: 扩散模型
关键词: 扩散模型个性化, 量化模型, 零阶优化, 内存高效微调, 边缘设备
一句话总结¶
本文提出 ZOODiP,通过零阶优化在量化后的扩散模型上进行个性化(Textual Inversion),利用子空间梯度投影去噪和部分时间步采样加速训练,仅用 2.37GB 显存和前向传播即可达到与梯度方法可比的个性化效果,内存节省最高 8.2 倍。
研究背景与动机¶
领域现状:扩散模型在图像生成领域表现出色,个性化(personalization)任务——用少量用户图片定制生成特定概念——是重要应用场景。主要方法包括微调去噪网络(DreamBooth)和优化文本 token(Textual Inversion)。量化技术已成功压缩推理内存,但训练/微调量化模型仍需大量内存。
现有痛点:(1) 现有方法大多依赖反向传播,不适合仅加速推理的移动处理器;(2) 存储激活值和梯度消耗大量内存,即便使用 LoRA/QLoRA 等参数高效方法仍需 6-8GB+;(3) 进化策略(GF-TI)虽无需反向传播,但每次迭代需 30 次前向传播,训练极慢且不稳定。
核心矛盾:在内存极度受限的边缘设备上实现高质量个性化,需要同时解决"无反向传播""量化模型不可微""零阶梯度噪声大"三个问题。
本文目标 (1) 如何在量化(不可微)模型上估计有效梯度?(2) 如何降低零阶优化的梯度噪声以加速收敛?(3) 如何在有限迭代内选择最有效的训练时间步?
切入角度:作者观察到三个关键现象——零阶优化可处理不可微目标;Textual Inversion 训练的 token 变化集中在低维子空间;文本 embedding 对不同扩散时间步的影响差异显著。
核心 idea:在量化扩散模型上用零阶优化训练 token embedding,通过子空间梯度投影去噪 + 部分时间步采样,实现仅前向传播的超低内存个性化。
方法详解¶
整体框架¶
ZOODiP 基于 Textual Inversion 框架:输入是少量参考图片和包含新 token \(v^*\) 的文本提示,输出是优化后的 token embedding。核心流程为:(1) 对 Stable Diffusion 全部组件(U-Net、VAE、文本编码器)进行 INT8 量化;(2) 用随机梯度估计(RGE)替代反向传播计算梯度;(3) 通过子空间梯度(SG)投影去除噪声维度;(4) 用部分均匀时间步采样(PUTS)聚焦有效时间步。整个训练过程只需前向传播,不存储激活值和梯度。
关键设计¶
-
零阶优化 + 量化模型(ZO with Quantized Model):
- 功能:在不可微的量化模型上估计梯度,消除反向传播
- 核心思路:对 token embedding \(\theta\) 施加随机扰动 \(\mu e_i\)(\(e_i \sim \mathcal{N}(0,I)\)),通过计算扰动前后损失差异来估计梯度:\(\hat{g}_\theta = \frac{1}{n}\sum_{i=1}^{n}\frac{\mathcal{L}(\theta+\mu e_i)-\mathcal{L}(\theta)}{\mu}e_i\)。使用 \(n=2\) 个随机方向,扰动大小 \(\mu=10^{-3}\)。量化采用对称 N-bit 量化,将权重映射到整数范围后用 scale 和 zero-point 恢复
- 设计动机:量化引入的 rounding 函数使模型不可微,传统反向传播无法使用。零阶优化只需前向传播即可估计梯度,完美适配量化模型,同时避免存储中间激活值,大幅降低内存
-
子空间梯度(Subspace Gradient, SG):
- 功能:通过 PCA 分析 token 轨迹,投影去除梯度中的噪声维度,加速收敛
- 核心思路:每 \(\tau=128\) 次迭代,将更新的 token 存入轨迹缓冲区 \(B \in \mathbb{R}^{\tau \times d}\),对标准化后的 \(\bar{B}\) 做 SVD 得到特征值和特征向量。基于阈值 \(\nu=10^{-3}\) 找到累计方差比超过 \(1-\nu\) 的最小索引 \(i^*\),用剩余低方差特征向量构造投影矩阵 \(P_\nu\)。每次梯度更新时投影去除噪声:\(\hat{g}' = \hat{g}(I - P_\nu^\top P_\nu)\)。实验表明超过 80% 的维度被投影去除
- 设计动机:零阶梯度估计本质上是高噪声的,尤其在个性化任务中只有 1-5 张图片时更严重。作者发现 Textual Inversion 的 token 变化集中在低维子空间(仅保留 1/3 维度即可保持概念),因此可以安全地投影去除高噪声维度
-
部分均匀时间步采样(Partial Uniform Timestep Sampling, PUTS):
- 功能:聚焦文本 embedding 影响最大的时间步区间进行采样,提升训练效率
- 核心思路:从 \(U(T_L, T_U)\) 均匀采样时间步(\(T_L=500, T_U=900\)),跳过文本影响弱的低噪声时间步。实验验证:\(U(0,500)\) 采样时无法学习参考图像的颜色和形状等概念特征,而 \(U(500,1000)\) 则成功学习
- 设计动机:扩散模型可视为基于时间步的混合专家系统,不同时间步的文本条件影响差异巨大。将有限的训练迭代集中在文本影响最大的时间步上,可最大化每次迭代的学习效果
损失函数 / 训练策略¶
使用标准 LDM 去噪损失 \(\mathcal{L}_{LDM} = \mathbb{E}[\|\epsilon - \epsilon_\phi(z_t, t, c(y^*))\|_2^2]\),仅优化 token embedding \(\theta\),模型权重完全冻结且量化。采用 ZOAdam 优化器,学习率 \(\eta = 5 \times 10^{-3}\),总迭代 30,000 次,batch size 为 1。
实验关键数据¶
主实验¶
在 DreamBooth 数据集 30 个主题上评估,每个主题 25 个提示,每提示生成 5 张图,共 3750 张。
| 方法 | 量化 | 无梯度 | 内存(GB) | CLIP-T↑ | CLIP-I↑ | DINO↑ |
|---|---|---|---|---|---|---|
| DreamBooth | ✗ | ✗ | 19.4 | 0.281 | 0.782 | 0.592 |
| QLoRA | ✓ | ✗ | 7.56 | 0.297 | 0.762 | 0.607 |
| TuneQDM | ✓ | ✗ | 8.96 | 0.289 | 0.788 | 0.555 |
| Textual Inversion | ✗ | ✗ | 6.75 | 0.285 | 0.778 | 0.559 |
| GF-TI | ✓ | ✓ | 2.37 | 0.253 | 0.540 | 0.011 |
| ZOODiP (Ours) | ✓ | ✓ | 2.37 | 0.287 | 0.772 | 0.558 |
消融实验¶
| 配置 | CLIP-T↑ | CLIP-I↑ | DINO↑ |
|---|---|---|---|
| 基础 ZO(无SG无PUTS) | 0.273 | 0.736 | 0.505 |
| +SG | 0.265 | 0.747 | 0.527 |
| +PUTS | 0.277 | 0.744 | 0.562 |
| +SG +PUTS(完整模型) | 0.266 | 0.759 | 0.569 |
关键发现¶
- SG 和 PUTS 的联合使用在 DINO 指标上从 0.505 提升到 0.569(+12.7%),说明两者互补
- ZOODiP 比 GF-TI 在 CLIP-I 上高 43%,在同等 2.37GB 内存下质量天壤之别
- 训练速度:ZOODiP(n=2, INT8)达 16.1 iter/s,比 TI 快 1.7 倍,比 GF-TI 快 22 倍
- 超参数 \(\tau=128, \nu=10^{-3}\) 最优;时间步范围 \([500, 900]\) 在所有指标上最佳
- 尽管 \(\nu\) 很小,SG 仍能投影去除超过 80% 的维度,说明 token 优化的有效维度极低
亮点与洞察¶
- 子空间梯度投影是优雅的去噪策略:利用优化轨迹本身的低秩结构来降噪,不引入额外模型或参数,且计算开销极小(PCA 维度仅 128)。这个思路可迁移到任何零阶优化场景
- 内存节省的极致组合:量化(减权重内存)+ 零阶优化(去激活值和梯度内存)+ 仅优化 token(极少参数),三者叠加实现 8.2 倍内存压缩,存储仅需 3KB
- 时间步采样的实用洞察:明确指出文本条件在 \(t \in [500, 900]\) 时影响最大,这对所有 Textual Inversion 类方法都有参考价值
局限与展望¶
- 零阶优化需要 30,000 次迭代(约 30 分钟),虽然比 GF-TI 快很多但仍较慢
- 仅验证了 Stable Diffusion v1.5,未扩展到 SDXL 或更大模型
- Token 表达能力有限(单 token),复杂概念的保真度不如 DreamBooth 全模型微调
- PUTS 的最优区间 \([T_L, T_U]\) 需要额外实验确定,不同版本模型可能不同
相关工作与启发¶
- vs Textual Inversion: TI 用反向传播优化 token,需 6.75GB 显存;ZOODiP 用零阶优化替代,内存降至 2.37GB,性能接近
- vs GF-TI: 同样是无梯度方法,但 GF-TI 用进化策略每步需 30 次前向,且性能极差(CLIP-I 仅 0.540);ZOODiP 用 RGE 仅需 2-3 次前向,质量显著更好
- vs TuneQDM: TuneQDM 在量化模型上微调量化参数但仍需反向传播(8.96GB),ZOODiP 完全避免反向传播
评分¶
- 新颖性: ⭐⭐⭐⭐ 零阶优化+量化+子空间投影的组合有创新,但各组件并非全新
- 实验充分度: ⭐⭐⭐⭐ 消融详尽,超参数分析充分,但仅在 SD v1.5 上验证
- 写作质量: ⭐⭐⭐⭐ 逻辑清晰,动机推导自然,实验可视化好
- 价值: ⭐⭐⭐⭐ 对端侧个性化有重要实用价值,子空间梯度思路有启发性
相关论文¶
- [ECCV 2024] Memory-Efficient Fine-Tuning for Quantized Diffusion Model
- [CVPR 2025] CleanDIFT: Diffusion Features without Noise
- [CVPR 2025] Learning Visual Generative Priors without Text
- [CVPR 2025] Data-Free Group-Wise Fully Quantized Winograd Convolution via Learnable Scales
- [CVPR 2025] MLLM-as-a-Judge for Image Safety without Human Labeling