Product of Experts for Visual Generation¶
会议: ICLR 2026
OpenReview: https://openreview.net/forum?id=dTYbqgvZmc
代码: 项目页
领域: 扩散模型 / 可控视觉生成 / 推理时模型组合
关键词: 专家乘积、退火 MCMC、序贯蒙特卡洛、异构模型组合、可控生成
一句话总结¶
本文把可控图像/视频生成统一成「多个异构专家模型的乘积分布采样」问题——生成模型当先验、判别模型(VLM)当软约束、物理仿真器当硬约束,再用「退火 MCMC + SMC 重采样」在推理时无需重训地从这个乘积分布里采样,从而比单一大模型获得更强的可控性与保真度。
研究背景与动机¶
领域现状:现代图像/视频生成模型(扩散、自回归视频模型)在外观真实度上已经很强,但要它们同时「严格遵循复杂文本指令」「符合物理规律」「精确摆放某个物体的位姿/轨迹」却很难。与此同时,社区里其实已经有一堆各有所长的模型:VLM 懂语义对齐、物理仿真器懂运动规律、深度图/inpainting 模型懂局部约束。
现有痛点:想把这些异构知识塞进一个模型,要么得训练一个无所不能的大模型(把文本、视觉语料、仿真轨迹全吃进去),代价高到不现实;要么走「reward steering」路线,但主流做法(梯度引导、CFG、或基于 SMC 的 reward steering)通常要求 reward 可微、稠密梯度可得,且把生成专家两两相乘时要算 path-wise importance weight,随着采样路径变长会出现 权重退化(weight degeneracy),少数粒子占满全部权重。
核心矛盾:每个专家只「擅长一部分约束」,但单独看谁都不够;要让一个样本同时满足所有约束,本质上是要从「多个分布的乘积」里采样,而乘积分布的高概率区往往是各专家的窄交集,直接拒绝采样在高维下接受率趋近于零。
本文目标:拆成两个子问题——(1) 怎么从一堆异构生成专家(扩散/流模型 + 自回归模型)的乘积里高效采样;(2) 怎么把只能给标量打分、不一定可微的判别专家(VLM、物理约束)也并进来一起采。
切入角度:把「组合多模型」重新表述成概率框架里的经典 Product of Experts(PoE)——生成模型写成数据先验 \(p^{(i)}(x)\),判别模型写成约束函数 \(r^{(j)}(x)\) 经 Boltzmann 变换成的非归一化分布 \(q^{(j)}(x)=\exp(r^{(j)}(x))\)。乘积分布天然只对「所有约束同时满足」的样本赋高概率。
核心 idea:用 退火重要性采样(AIS)+ 序贯蒙特卡洛(SMC) 替代不可行的拒绝采样——退火让采样从易采的光滑分布逐步逼近目标乘积分布,per-timestep 的 MCMC 核保持中间分布不变(不累积权重,从而避开权重退化),SMC 重采样负责把判别专家的打分注入到粒子群里。
方法详解¶
整体框架¶
目标是采样自所有专家的乘积分布
其中 \(p^{(i)}\) 是生成专家(流/扩散或自回归模型),\(q^{(j)}=\exp(r^{(j)})\) 是由判别专家(VLM 打分、物理约束)转成的软分布。直接采这个分布不可行,本文的整体思路是「退火 + 粒子群」:维护 \(L\) 个粒子,从一个易采的初始分布 \(p_T\) 出发,沿着一串中间分布 \(\{p_t\}_{t=T}^{1}\) 逐步退火到目标分布 \(p_1\);每过一个退火层,先对每个粒子跑 MCMC 让它落进生成专家乘积的高概率区,再按判别专家乘积的打分对粒子做加权重采样。最后从存活粒子里挑判别打分最高的那个输出。
整条流水线对判别器只要求 黑盒访问(只需知道它给样本打多少分,不需要梯度),因此 VLM、物理 loss 这类不可微/只给标量的约束都能直接接入。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["异构专家<br/>生成先验 + VLM + 物理仿真"] --> B["乘积分布 PoE 建模<br/>先验×约束统一成一个分布"]
B --> C["退火 MCMC 采样<br/>沿中间分布逼近生成专家乘积"]
C --> D["条件化生成专家<br/>专家间互相条件、削弱多模态"]
D --> E["SMC 并行重采样<br/>按判别专家打分加权存活"]
E --> F["输出最高分粒子<br/>图像/视频"]
关键设计¶
1. 乘积分布的 PoE 统一建模:把异构模型塞进同一个概率框架
痛点是异构模型「语言不通」——生成模型给的是分布、VLM 给的是标量打分、物理仿真器给的是渲染图,没法直接放一起优化。本文用 PoE 把它们统一:生成专家直接是先验 \(p^{(i)}(x)\);判别专家的标量 reward \(r^{(j)}(x)\) 经 Boltzmann 分布 \(q^{(j)}(x):=\exp(r^{(j)}(x))\) 变成非归一化概率;物理仿真器则写成一个以仿真渲染 \(c_{\text{sim}}\) 为中心的高斯 \(p_{\text{sim}}(x)\propto\exp(-w\|x-c_{\text{sim}}\|_2^2)\)。三类知识全部进入式 (1) 的连乘。这样做的关键好处是:乘积分布对「同时满足所有专家」的样本才给高概率,于是「遵循文本 + 符合物理 + 精确位姿」这些约束被自动以交集方式组合,而不需要手工设计融合规则或重训一个统一模型。
2. 退火 MCMC + per-timestep 不变核:避开权重退化地采生成专家乘积
直接对乘积分布跑 MCMC 会因为「局部精炼」而 mixing 极慢,指数时间才能找到高似然样本。本文引入 AIS:构造中间分布序列 \(p_t(x)\propto\prod_i p_t^{(i)}(x)\),其中 \(p_T\) 光滑易采、\(p_1\) 是目标乘积分布,每个 \(p_t^{(i)}\) 在「初始分布(高斯/均匀)」和「最终专家分布」之间插值。对流模型,\(p_t^{(i)}\) 取其速度场 \(v_t^{(i)}\) 生成的概率路径离散化,转移核 \(K_{t\leftarrow t+1}\) 是一步 Euler ODE 积分、\(K_t\) 是组合分数 \(\sum_i\nabla_x\log p_t^{(i)}\) 下的 Langevin 动力学;对自回归模型,\(p_t^{(i)}(x)=p^{(i)}(x_{1:T+1-t})\) 用前缀边缘,\(K_{t\leftarrow t+1}\) 追加下一段由模型预测采出的数据片、\(K_t\) 用 Gibbs 采样。关键区别在于:与既往「path-wise importance weight」做法不同,本文用每个时间步保持 \(p_t\) 不变的 MCMC 核,不去累积重要性权重,因此路径再长也不会出现权重退化。
3. 条件化生成专家:让专家互相「看一眼」以削弱多模态
即便有退火,乘积分布里单个专家 \(p^{(i)}(x)\) 自身的多模态仍会拖慢 MCMC 收敛。本文把专家改成条件依赖于其它专家负责的区域:\(p(x)\propto\prod_i p^{(i)}(x_i\mid x_{\text{pa}(i)})\),其中 \(x_i\) 是该专家负责的场景部分、\(x_{\text{pa}(i)}\) 是它被条件化的父区域。对流模型,具体实现为在原速度场上加一项「向父区域预测流对齐」的修正:
让每个专家在采样时「参考」其它专家当前的预测,能显著降低 \(p^{(i)}\) 的多模态、使乘积分布上的 MCMC 更高效。消融里去掉这一项("No Cond")会让物体插入的前景保真度与视觉协调性明显下降。
4. SMC 并行重采样:把黑盒判别专家注入粒子群
要把判别专家也并进式 (5) 的完整乘积,最朴素的做法是重要性采样——从生成专家乘积采 \(L\) 个样本,再按判别似然 \(\prod_j q_t^{(j)}(x)\) 加权抽一个。但 MCMC 样本彼此相关、覆盖不全,单纯重要性采样会偏。本文改用 并行 SMC:全程维护 \(L\) 个粒子,每个退火层先对每个粒子跑 MCMC(采生成乘积),再按判别专家乘积似然 \(\sum_j r_t^{(j)}(x^{(l)})\) 加权重采样,让高分粒子「繁殖」、低分粒子被淘汰。由于流模型的噪声样本对 VLM 是 OOD,中间步的判别打分定义在预测终点 \(\hat x\) 上:\(r_t^{(j)}(x)=r^{(j)}(\hat x)\)。增大粒子数 \(L\) 直接换来更高质量(Table 3 中 \(L\) 从 1 涨到 32,各指标单调上升)。
损失函数 / 训练策略¶
整个方法是 训练-free 的:不训练任何新参数,只在推理时调度一组预训练专家(FLUX.1 Depth/Fill、Wan2.1、FramePack、各种 VLM、物理仿真器)。"训练"层面的关键超参是退火长度 \(T\)、粒子数 \(L\)、每层 MCMC 步数 \(K\),以及条件化修正项与物理高斯里的权重 \(w\)。
实验关键数据¶
主实验¶
图像物体插入(把图形引擎里摆好位姿的 3D 资产 + 文本材质描述插入图像)。生成专家用 FLUX.1 Depth(保证位姿)+ FLUX.1 Fill(保证真实感)。
| 设置 | 方法 | 背景 MSE↓ | 前景 LPIPS↓ | GPT-4o 可控性↑ | ImageReward↑ |
|---|---|---|---|---|---|
| 图形引擎渲染输入 | RF-Solver | 1.619 | 0.178 | 0.518 | 0.948 |
| 图形引擎渲染输入 | Ours No Cond | 1.511 | 0.065 | 0.727 | 1.142 |
| 图形引擎渲染输入 | Ours | 1.429 | 0.065 | 0.827 | 1.175 |
| 角色插入(Magic Insert) | SDEdit | 0.968 | 0.026 | 0.744 | 1.640 |
| 角色插入(Magic Insert) | Ours | 0.365 | 0.064 | 0.818 | 1.711 |
本文在可控性(GPT-4o、前景 LPIPS)上全面领先:baseline 因文本提示不精确而不遵循位姿、或因全局加噪破坏背景,本文则同时保住背景与前景几何。
物理仿真指导的视频生成(用物理仿真器给定物体运动,生成对齐运动的视频)。
| 设置 | 方法 | 前景 IoU↑ | GPT-4o 可控性↑ | GPT-4o 语义对齐↑ | ViCLIP↑ |
|---|---|---|---|---|---|
| 物体级仿真 | Depth2V | 0.787 | 0.650 | 0.775 | 0.261 |
| 物体级仿真 | Image2V | 0.321 | 0.708 | 0.788 | 0.255 |
| 物体级仿真 | Ours | 0.739 | 0.708 | 0.842 | 0.270 |
| 全场景仿真(PhysGen3D) | Depth2V | – | 0.550 | 0.788 | 0.242 |
| 全场景仿真(PhysGen3D) | Ours | – | 0.587 | 0.825 | – |
单一 Depth2V/Traj2V 会用「相机上移」去补偿物体下落(运动方向被带歪),Image2V 干脆不跟运动;本文靠多专家组合既守住前景运动又合成自然的非前景内容。
消融实验¶
| 配置 | 关键指标 | 说明 |
|---|---|---|
| Ours (Full) | GPT-4o 可控 0.827 / 前景 LPIPS 0.065 | 完整模型 |
| w/o 条件化采样 (No Cond) | GPT-4o 可控 0.727 / LPIPS 0.065 | 去掉式(6)的专家间条件修正,可控性与协调性下降 |
| 粒子数 L=1 | VQAScore 0.567 | 退化为 Du et al. (2023),相当于无 SMC |
| 粒子数 L=8 | VQAScore 0.879 | 中等预算 |
| 粒子数 L=32 | VQAScore 0.904 / mIoU 0.728 | 大预算,单调最优 |
关键发现¶
- 条件化采样贡献明显:去掉专家间的条件修正(No Cond),前景保真度尚可但视觉协调性与 GPT-4o 可控性掉一截,说明「让专家互相参考」对乘积分布采样效率是关键。
- 算力可换质量:粒子数 \(L\) 是一根清晰的「计算-质量」旋钮,从 1→32 时 mIoU、VQAScore 单调上升;\(L=1\) 时退化为已有工作 Du et al. (2023)。
- 训练-free 也能打过专用方法:在带版面控制的文生图上,本文(大 \(L\))超过专门设计 cross-attention 干预的 SOTA 方法 3DIS-FLUX,且不需要任何应用专属设计。
亮点与洞察¶
- 把「组合模型」彻底概率化:生成当先验、判别经 Boltzmann 当软约束、物理仿真当高斯硬约束,三类异构知识用一个乘积分布统一表达,组合规则不再是工程拼接而是「采交集」,干净且可扩展。
- per-timestep 不变核 vs path-wise 权重:用每步保持 \(p_t\) 不变的 MCMC 核取代累积重要性权重,正面解决了既往 SMC reward steering 的权重退化问题——这是个可迁移到其它「长路径组合采样」场景的思路。
- 黑盒判别器接口:只要能对样本打分就能当专家,VLM、物理 loss、甚至不可微规则都能即插即用,给「用现成模型拼可控生成」提供了通用配方。
局限与展望¶
- 推理开销随专家数 / 粒子数线性增长:要采质量好就得加大 \(L\)、加深退火,多专家时每步要跑各自的 MCMC,计算成本不低,实时应用受限。
- 判别专家打分定义在预测终点 \(\hat x\) 上:流模型噪声样本对 VLM OOD,靠 \(\hat x\) 近似中间打分,这个近似在退火早期可能不准,作者把推导推迟到附录,鲁棒性边界未充分讨论。
- 评测规模偏小:图像插入 30/80 场景、视频 12 场景、文生图 50 场景,数据集规模有限,结论的统计可靠性还需更大规模验证。
- 改进思路:可探索自适应分配粒子/退火预算(难约束的区域多投算力)、把条件化修正项 \(w\) 做成可学习或自适应,以及缓存专家间的中间预测以摊薄多专家开销。
相关工作与启发¶
- vs 组合式生成(Du et al. 2020/2023、Huang et al. 2022):既往工作多组合同质生成专家,或单生成器 + 多判别器(Li et al. 2022);本文是通用框架,能把异构的生成+判别+物理仿真一起组合,\(L=1\) 时正好退化为 Du et al. (2023)。
- vs SMC reward steering(Skreta et al. 2025、He et al. 2025):它们对生成专家乘积算 path-wise importance weight,路径变长会权重退化;本文用 per-timestep 不变 MCMC 核、不累积权重,规避了这一问题。
- vs 物理仿真驱动视频(光流/点追踪条件、单一视频模型):既往把仿真输出转成单一条件信号(光流、point tracking)或只依赖一个视频模型;本文允许同时整合仿真器给出的多种信号(深度、轨迹、RGB 渲染),控制规格更完整。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 把异构模型组合统一成 PoE 乘积分布采样,并用 per-timestep 不变核解决权重退化,框架优雅且通用。
- 实验充分度: ⭐⭐⭐⭐ 覆盖图像插入/物理视频/版面文生图三类任务且消融清晰,但每类数据集规模偏小。
- 写作质量: ⭐⭐⭐⭐ 概率框架与算法推导严谨,公式与图示配合到位,部分关键近似推迟到附录。
- 价值: ⭐⭐⭐⭐⭐ 训练-free 即插即用、用现成模型就能拼出强可控生成,落地配方价值高。