输入“一本书和一台笔记本电脑”,模型画出了一台电脑,却忘了书。再试一次,书出现了,电脑又不见了。一个自然的想法是:既然模型偶尔能画对,能不能多花一些生成时的计算,让它更经常画对?
最直接的做法是多生成几张,最后挑一张。还可以更主动一些:图像尚未成形时,就判断哪些方向更有希望,把后续计算放在那里。这就是扩散模型中很有吸引力的一类推理时扩展。
困难也从这里开始。中途的判断通常不准,过早追逐高分可能走偏;同时尝试的很多条路径,还可能在反复筛选中变成同一个祖先的后代。计算增加了,有效探索却未必同比增加。
URGE 和 Stein Guidance 研究了这条思路中的两个环节:如何利用生成路径的信息纠正引导偏差,以及如何用函数值查询实现无导数引导与校正。这里的“无导数”是指无需计算价值函数的梯度,基础去噪模型仍照常运行。这篇博客沿着这两个问题展开。读者只需熟悉概率、平均值和一点导数;较完整的推导放在可展开的段落中。[1][2]
1. 多算一点,究竟想得到什么?
先把扩散模型想成一个随机的绘画过程。从初始噪声出发,它逐步去噪,最后生成图像。本文沿生成方向记时间:\(0\) 是开始,\(T\) 是完成。固定训练好的模型,它会给出一个基础生成分布 \(p_{\mathrm{base}}(x)\)。
我们再给每张成品一个分数 \(r(x)\),例如衡量图像是否同时包含提示词要求的两个物体。把分数变成正的偏好权重 \(\phi(x)=\exp(\beta r(x))\),就能定义希望得到的分布:
\[\pi(x)= \frac{p_{\mathrm{base}}(x)\,\phi(x)} {\mathbb E_{p_{\mathrm{base}}}[\phi(X)]}.\]这个公式保留了模型原本的生成偏好,同时提高高分结果的相对概率。\(\beta\) 控制偏好强度。图 1 用一个只有两种结果的教学例子,把“乘上偏好,再重新归一化”画了出来。
这里的目标很具体:让输出分布接近 \(\pi\)。它和“尽可能找到分数最高的一张图”有关,却需要不同的误差指标。例如,从模型独立生成 \(M\) 张后取最高分,会得到另一种输出分布,一般不等于上面的 \(\pi\)。下面谈到的“校正正确”,都指向这个明确的采样目标。
增加计算也有不同方式。把去噪分成更多步,是增加数值深度 \(n\);同时维护更多条生成路径,是增加粒子数 \(N\);在一步里询问更多候选,是增加查询池大小 \(K\)。这些资源各自解决不同的问题,不能只用一个“采样次数”概括。
2. 想知道下一步怎么走,先问它的未来
一张只去噪到一半的图,可能像一团模糊的色块。直接问“现在像不像一本书”,并不一定能判断它最后能否画好。
更合理的问题是:从现在这个状态继续生成,最后得到的偏好权重,平均会是多少?数学上,这就是价值函数:
\[H_t^\star(x) =\mathbb E\!\left[\phi(X_T)\mid X_t=x\right].\]它把所有可能的后续生成都考虑了进去。一个中间状态即使现在不太像成品,只要它通向好结果的机会很大,就应当受到鼓励。
如果能精确知道这个函数,那么下一步可以按照“基础转移概率 × 下一步的价值”来抽样。连续时间里,对应的引导方向是 \(\sigma\sigma^\top\nabla\log H_t^\star\)。这就是 Doob 变换给出的方向。[1,§1][2,§3]
真正困难的是求出 \(H^\star\):它本身就包含了对未来的高维积分。实践中往往只能用一个近似值函数 \(H\),例如先预测最终图像,再对预测结果打分。
这带来一个很有用的分工。近似值函数帮助我们找到有希望的路径;校正机制负责处理近似判断引入的分布偏差。判断越好,后面的校正通常越容易,但校正的正确性不应依赖每一次判断都准确。
为什么“未来价值”会给出正确转移?
为简化记号,先固定初始状态 \(X_0=x_\star\)。设 \(P_k(x,dy)\) 是离散模型的基础转移,并记 \(\phi\) 为终点偏好。精确价值函数满足
\[H_k^\star(x) =\int P_k(x,dy)H_{k+1}^\star(y), \qquad H_n^\star=\phi.\]这就是 Bellman 递推。按价值倾斜后的转移为
\[P_k^\star(x,dy)= P_k(x,dy)\frac{H_{k+1}^\star(y)}{H_k^\star(x)}.\]把各步转移相乘,所有中间的 \(H_k^\star\) 都相消,只剩终点的 \(\phi(X_n)\) 和常数 \(H_0^\star(x_\star)\),于是整条路径恰好被终点偏好加权。
近似值函数可能不满足这条递推。它的局部 Bellman 缺陷可以写成
\[\delta_k(x)= \log\frac{\int P_k(x,dy)H_{k+1}(y)}{H_k(x)}.\]分母是现在作出的预测,分子是先走一步、再预测的平均值。精确价值使这个比值等于 1,缺陷为 0。沿不同路径积累的缺陷越不一致,后续校正通常越困难;所有路径共有的常数因子会在归一化时消掉。这个量用于分析,实际算法不必精确求出其中的积分。[2,§4,式 (11)]
如果初始噪声也随机抽取,精确 Doob 路径分布还要求相应地倾斜初始分布,或把初始因子纳入后续校正。不能在随机起点下直接漏掉这一项;Stein 稿件的附录 Proposition 22 单独处理了它。
3. URGE:把整条生成路径的账算清楚
假设近似引导已经改变了模型的走法。我们知道实际怎样模拟这条新路径,却很难算出它最后生成某一张图的总概率,因为同一个终点可以由许多不同路径到达。
URGE 的切入点是:保留实际走过的路径,就能直接对这次生成过程计算概率比。图 2 中两条路径到达同一个终点,但沿途的转移不同,校正时可以使用这些已经发生的随机选择。[1,§2.3]
用离散时间最容易理解。设基础模型每一步的转移密度为 \(P_k\),实际引导后的转移密度为 \(Q_k\),二者使用相同的初始分布,并满足计算概率比所需的支持条件。对一条实际采样出的路径,可以记下:
\[R= \phi(X_n) \prod_{k=0}^{n-1} \frac{P_k(X_k,X_{k+1})} {Q_k(X_k,X_{k+1})}.\]如果某条路径被引导机制抽得过于频繁,概率比会把它的权重压下来;如果它被抽得太少,概率比就会补偿。乘上最终偏好以后,权重同时考虑了“我们想要什么”和“这条路实际有多容易被抽到”。
在连续时间里,这个思路对应 Girsanov 换测度。URGE 利用路径上的随机增量构造权重,并在生成过程中对粒子进行重加权和重采样。论文还解释了:将一小段路径的权重按当前终点作条件平均,再取短时间极限,就能恢复相应的粒子层校正势。这让路径视角与基于分布演化方程的视角联系起来。[1,§2.3、Theorem 3.3、附录 B.4]
“无需导数”的含义需要说准确。URGE 的权重计算不需要为了校正再求奖励的高阶导数、额外 score 或 PDE 残差;它可以使用模拟时已有的漂移和噪声信息。原文的部分引导过程本身仍写成含 \(\nabla G\) 的形式。让引导的构造也只用函数值,是后面 Stein Guidance 要进一步解决的事。
同样,权重公式正确,不等于有限个粒子的重采样输出已经精确。URGE 的一致性结论有离散化与粒子数的极限条件。[1,Theorem 3.1]
4. 多条路径,可能已经变成一家人
序贯蒙特卡洛(Sequential Monte Carlo,SMC)会不断复制高权重粒子,淘汰低权重粒子。这个机制可以及时把计算放到有希望的区域,但复制同时会留下一个后果:不同粒子可能共享越来越长的生成历史。
想象四个人各自尝试解题。每隔一会儿,每个人都按当前评分随机挑一份草稿接着写,评分越高的草稿越容易被挑中。几轮之后,虽然还有四份答卷,它们可能都来自同一份早期草稿。后续仍可以各自探索,但此前的多样性已经丢失。
常用的有效样本量指标 ESS,由当前的归一化权重计算。权重都一样时,ESS 可以等于粒子数 \(N\),但这个数字本身不记录祖先是谁。因此,只看当前权重是否均匀,无法排除已经积累的祖先相关性。
Stein 稿件给出了一个更严格的例子:基础过程就是布朗运动,终点目标固定,每一步的局部 Bellman 误差已经很小;如果每个数值步都进行完整的多项分布重采样(multinomial resampling),那么存在这样的模型,使一个最终粒子的总变差误差满足
\[\left\|\nu_{n,N}^{\mathrm{SMC}}-\pi\right\|_{\mathrm{TV}} \asymp \frac nN, \qquad 2\le n\le N.\]总变差距离可以理解为:对任意一个事件,采样器与目标分布给出的概率最多能相差多少。这个反例说明,即使只是多细分几次时间,为维持同一精度,也可能被迫增加粒子数。[2,Theorem 1]
这里必须保留“存在这样的例子”和“每步完整重采样”两个条件。它没有宣称所有 SMC 都有这个下界,也没有排除自适应或稀疏重采样的价值。它指出了一个明确的设计问题:数值步数增加时,统计纠偏的负担能否保持稳定?
5. 热身:从两个对称候选看懂有限差分
接下来先看最小的引导操作:用两个函数值,决定下一步往哪里走。先把复杂的图像空间缩成一维:基础模型已经决定了下一步的大致位置 \(\mu\),我们向右试一点,再向左试一点:
\[Y^+=\mu+\delta, \qquad Y^-=\mu-\delta, \qquad \delta>0.\]这里继续用正的近似未来价值 \(H\) 判断候选,暂时省去时间下标。假设右边的价值 \(H^+=H(Y^+)\) 是 11,左边的价值 \(H^-=H(Y^-)\) 是 9。按价值比例选择,就有 55% 的概率走到右边,45% 的概率走到左边。
如果 \(\delta=0.1\),这次随机选择的平均位移是
\[0.55\times0.1+0.45\times(-0.1)=0.01.\]右边只比左边多了 10 个百分点的选择机会,就产生了朝右的平均移动。每次实际抽样,仍然只走到左右两个候选之一;0.01 是平均位移。
为什么这就是有限差分?
左右两点相距 \(0.2\),价值增加了 \(11-9=2\),所以两点之间的斜率是 \(2/0.2=10\)。这就是中心差分最朴素的含义:用两侧函数值的差,估计中间位置的斜率。
把选择概率写出来,会发现平均位移与这个斜率之间有一个精确关系:
\[\begin{aligned} \mathbb E[Y^J-\mu\mid\delta] &=\delta\,\frac{H^+-H^-}{H^++H^-}\\[4pt] &=\delta^2\, \frac{\displaystyle\frac{H^+-H^-}{2\delta}} {\displaystyle\frac{H^++H^-}{2}}. \end{aligned}\]最后一行的分子是中心差分斜率,分母是两侧平均价值。用一句话读,就是“平均位移 = 步幅平方 × 斜率 ÷ 平均价值”。刚才两侧的平均价值也是 10,因此
\[0.1^2\times\frac{10}{10}=0.01.\]这里还没有作任何近似。只有当我们进一步把有限差分解释成导数时,才需要两点足够接近、\(H\) 足够光滑:
\[\mathbb E[Y^J-\mu\mid\delta] \approx\delta^2\frac{H'(\mu)}{H(\mu)} =\delta^2(\log H)'(\mu).\]为什么出现 \(\log H\)?因为选择概率关心的是相对价值。把 11 和 9 同时乘以 100,左右概率完全不变。起作用的自然就是相对于自身大小的变化率 \(H'/H\)。[2,§3.1.1、附录 B.2.1]
回到扩散模型:沿一个随机方向测斜率
在高维空间里,让两点沿着同一个高斯方向一正一反:
\[\mu=x+hb(x), \qquad \delta=\sqrt h\,\sigma Z, \qquad Z\sim N(0,I).\]现在 \(\delta\) 是向量,候选仍是 \(Y^\pm=\mu\pm\delta\)。按价值比例抽样,小步长下给定方向的平均位移,其主导项变成 \(\delta\delta^\top\nabla\log H(\mu)\)。这一对候选只提供当前方向上的信息;利用 \(\mathbb E[ZZ^\top]=I\),对随机方向再取平均,就得到
\[\mathbb E[Y^J\mid x] =x+h\!\left[b(x)+ \sigma\sigma^\top\nabla\log H(x)\right]+o(h).\]候选的随机位移是 \(\sqrt h\) 量级,选择概率朝较好一侧的偏移也是 \(\sqrt h\) 量级,两者相乘,便产生了 \(h\) 量级的引导漂移。这个极限式需要稿件中的光滑性与可积性条件。[2,§3.1.1]
算法执行时,只要构造两个候选、查询两个价值、按比例随机选一个。基础去噪模型照常运行,价值函数的梯度出现在分析中,无需在执行时通过反向传播计算。
6. 用 Stein 恒等式,构造 K 个并行候选的无导数提议
两个对称候选说明,函数值里已经包含了方向信息。现在希望一步里并行查询 \(K\) 个候选:怎样只用多个方向上的价值,构造一个无需计算价值函数导数、又有引导作用的 proposal?
高斯 Stein 恒等式提供了连接。先看它最简单的一维形式:
\[\mathbb E[Zf(Z)]=\mathbb E[f'(Z)], \qquad Z\sim N(0,1).\]左边只用函数值,右边是导数的平均。如果正方向通常有更高的价值,“随机方向乘以价值”的平均就会偏向正侧。Stein 恒等式进一步说明,在相应可微与可积条件下,两者有精确的数学关系。
对高维高斯候选 \(Y=\mu+\sqrt h\,\sigma Z\),它变成
\[\mathbb E[ZH(Y)] =\sqrt h\,\sigma^\top\mathbb E[\nabla H(Y)].\]这就给了我们一个只用函数值获取梯度信息的办法:把每个随机方向乘上对应的价值,再求平均。[2,§3.1.2、Proposition 6]
先写出理想平均,再用有限次查询实现
前面希望下一步遵循“基础转移概率 × 未来价值”。如果能够考察所有可能的高斯候选,再按 \(H\) 重加权,理想的平均位移就是
\[\Delta_H =\frac{\mathbb E[(Y-\mu)H(Y)]}{\mathbb E[H(Y)]} =\sqrt h\,\sigma\, \frac{\mathbb E[ZH(Y)]}{\mathbb E[H(Y)]}.\]实现思路也随之清楚了:用 \(K\) 次查询的平均,替换公式里的期望;再把归一化权重变成选择概率。构造这批查询时,我们还要保留两个对称候选的一个关键性质:所有方向加起来恰好为零。
从两点对称,到 K 点整体平衡
第一步,生成 \(K\ge2\) 个独立高斯方向,减去它们的平均,再作一次缩放:
\[\begin{aligned} G_i&\stackrel{\mathrm{iid}}{\sim}N(0,I), &\bar G&=\frac1K\sum_{i=1}^K G_i,\\[3pt] Z_i&=\sqrt{\frac K{K-1}}\,(G_i-\bar G), &\sum_{i=1}^K Z_i&=0. \end{aligned}\]减去平均,让整组方向保持平衡。缩放因子 \(\sqrt{K/(K-1)}\) 则把每个方向的方差恢复到正确尺度:每个 \(Z_i\) 单独看仍然是标准高斯,因此仍可使用 Stein 恒等式。同一个池里的方向相互依赖,但各自的高斯边际分布保持不变。
第二步,构造候选,并行查询它们的价值:
\[Y_i=\mu+\sqrt h\,\sigma Z_i, \qquad H_i=H(Y_i), \qquad i=1,\ldots,K.\]第三步,按照价值比例随机抽取一个编号 \(J\),把 \(Y_J\) 作为下一步:
\[p_i=\frac{H_i}{\sum_{j=1}^K H_j}, \qquad \Pr(J=i\mid Y_1,\ldots,Y_K)=p_i.\]给定候选池 \(U=(Y_1,\ldots,Y_K)\),这次选择的平均位移恰好是
\[\begin{aligned} \mathbb E[Y_J-\mu\mid U] &=\sum_{i=1}^K p_i(Y_i-\mu)\\ &=\sqrt h\,\sigma\, \frac{\sum_{i=1}^K Z_iH_i}{\sum_{i=1}^K H_i}. \end{aligned}\]对照理想的 \(\Delta_H\):期望变成了候选平均,其余结构完全相同。这个给定池的恒等式是精确的;有限候选形成的比值仍有近似误差。实际操作是按 \(p_i\) 抽取一个候选,条件平均用于解释这种操作为什么产生引导。[2,式 (7)、式 (8)、Proposition 6]
当 \(K=2\) 时,中心化公式给出
\[Z_1=\frac{G_1-G_2}{\sqrt2}, \qquad Z_2=-Z_1.\]它恰好回到热身中的一正一反。因此,两点有限差分是 Stein Guidance 的最小特例;\(K\) 点构造把一个对称方向,推广成一组整体平衡的随机方向。它也支持奇数 \(K\),无需把候选分成若干对。
同一批查询,还让路径校正更稳定
两点方法同时做了两件事:两个值相减,提供斜率;两个值取平均,消去相反的一阶波动。\(K\) 点中心化保留了这两种作用。
如果所有候选价值相同,因为 \(\sum_i Z_i=0\),加权平均位移恰好为零。价值不同时,权重才让平均方向产生偏移。与此同时,候选平均价值
\[S=\frac1K\sum_{i=1}^K H(\mu+\sqrt h\,\sigma Z_i)\]的一阶变化与 \(\sum_i Z_i\) 成正比,也恰好相消。剩下的主要波动由曲率决定。在稿件的统一光滑性与正值界条件下,\(S\) 的归一化方差从独立候选的 \(O(h/K)\) 改善为中心化候选的 \(O(h^2/(K-1))\)。同一批函数值既提供引导,也让后面的完整路径权重更稳定。[2,Remark 2、Assumption 3]
Stein 得到的是哪个梯度?有限 K 还有什么误差?
固定当前状态处的 \(\sigma\),令
\[G_h(\mu)=\mathbb E[H(\mu+\sqrt h\,\sigma Z)].\]在可以交换求导与期望的条件下,Stein 恒等式给出
\[\begin{aligned} \Delta_H &=\sqrt h\,\sigma\, \frac{\mathbb E[ZH(Y)]}{\mathbb E[H(Y)]}\\ &=h\sigma\sigma^\top \frac{\mathbb E[\nabla H(Y)]}{\mathbb E[H(Y)]}\\ &=h\sigma\sigma^\top\nabla_\mu\log G_h(\mu). \end{aligned}\]这里精确出现的是高斯平滑后的价值 \(G_h\)。在小步长极限下,它的对数梯度才趋近于 \(\nabla\log H(\mu)\)。求导时冻结 \(\sigma\),也不对 \(\mu=x+hb(x)\) 作关于 \(x\) 的全导数。[2,Proposition 6,式 (23)]
中心化候选池给出的分子估计
\[\widehat v=\frac1{K\sqrt h}\sum_i Z_iH(Y_i)\]是无偏的,因为每个方向都有标准高斯边际:
\[\mathbb E[\widehat v] =\sigma^\top\mathbb E[\nabla H(Y)], \qquad \mathbb E[S]=G_h(\mu).\]但一般有
\[\mathbb E[\widehat v/S] \ne \mathbb E[\widehat v]/\mathbb E[S].\]所以,分子和分母分别无偏,不能推出归一化比值也无偏。有限候选误差仍需分析和校正。[2,Proposition 6、Theorem 11]
中心化也直接影响平均引导。若改为 \(K\) 个相互独立的高斯候选后直接按价值抽取,在固定 \(K\)、小步长极限下,一阶引导会缩小为理想值的 \(1-1/K\)。中心化候选保留了完整的一阶系数。这比较的是尚未外层校正的候选选择,条件见附录式 (24)。
7. 生成完以后,再做一次路径层面的校正
只用两点或多点选择,还存在两个近似:价值函数 \(H\) 不精确,候选池也只有有限个点。
Stein Guidance 的下一步,是把同一批查询得到的值沿路径记下来。每一步计算候选平均值 \(S_k\),并保留被选中候选的值,就能得到完整提议的权重:
\[R= \phi(X_n) \prod_{k=0}^{n-1} \frac{S_k}{H_{k+1}(X_{k+1})}, \qquad S_k=\frac1K\sum_{i=1}^K H_{k+1}(Y_{k,i}).\]这条公式不需要再查询价值函数的梯度,也不需要精确求出下一步价值的积分。严格说,它是在包含候选池和选择编号的扩展空间上构造的权重;其加权后选中路径的分布才是我们需要的目标。[2,§3.2、Theorem 12]
接着使用独立提议的 Metropolis–Hastings 更新,简称 MH。假设当前保留路径的权重是 \(R_{\mathrm{old}}\),新生成路径的权重是 \(R_{\mathrm{new}}\),接受新路径的概率为
\[\alpha =\min\!\left\{1,\frac{R_{\mathrm{new}}}{R_{\mathrm{old}}}\right\}.\]接受,就换成新路径;拒绝,就继续保留旧路径和旧权重。重复若干次,输出当前保留路径的终点。这里比较的是经过概率补偿的路径权重,不能简单替换成最终奖励。
独立的是提议路径。一条 MH 链相邻的输出仍然相关,因为拒绝时会重复保留旧状态。有限次更新一般也仍有初始化误差。若需要彼此独立的最终输出,可以独立重复整套程序。[2,Algorithm 2]
这条只用函数值的权重,为什么真的能校正?
关键只需要一行消去。给定候选池 \(U=(Y_1,\ldots,Y_K)\),选择概率是 \(H(Y_i)/(KS)\),所以对测试函数 \(f\),
\[\begin{aligned} \mathbb E\!\left[ \frac{S}{H(Y_J)}f(Y_J)\,\middle|\,U \right] &=\sum_{i=1}^K \frac{H(Y_i)}{KS}\, \frac{S}{H(Y_i)}f(Y_i)\\ &=\frac1K\sum_{i=1}^K f(Y_i). \end{aligned}\]再对候选池取平均。每个候选的边际都是正确的基础转移,因此右边恰好恢复 \(P_kf\)。沿时间重复这个消去,最后乘上 \(\phi(X_n)\),便得到
\[\mathbb E_{\widetilde Q}[R\,F(X_{0:n})] =\mathbb E_{P_n}[\phi(X_n)F(X_{0:n})].\]这里 \(\widetilde Q\) 是包含候选池与选择记录的提议分布。这个恒等式说明:即便 \(H\) 是近似的,权重仍然能给出正确的目标。相应 MH 接受规则满足详细平衡,目标分布是不变分布;有限时间收敛速度则需要进一步分析。
8. 更多去噪步,能否不再强迫我们堆更多路径?
现在可以回到最初的资源问题。每一步的候选平均值更稳定,会不会让生成变深以后,校正仍然容易?
设总时间 \(T\) 固定,步长 \(h=T/n\)。Stein 稿件把校正难度分成两个来源。第一个是近似价值没有满足 Bellman 递推而留下的误差;第二个是有限候选池带来的随机波动。
对于后者,每步的方差是 \(O(h^2/(K-1))\),累积 \(n\) 步后得到
\[\frac{nh^2}{K-1} =\frac{Th}{K-1}.\]随着网格变细,这个量反而缩小。价值函数近似带来的那部分误差则要另行控制,不能靠扩大候选池自动消失。[2,§4]
论文的 Theorem 4 在固定初始状态、终点值满足 \(H_n=\phi\),以及价值函数具有统一正值上下界、二阶空间导数有界、噪声系数有界等条件下,证明:为达到给定的有限网格采样精度,所需完整提议的数量可以不随去噪深度增长。结论允许常数依赖维数与价值函数的界,并不声称维数无关。
这也不意味着加深没有成本。若每次输出使用 \(m\) 次外层更新,加上初始化,一共需要 \(m+1\) 条完整提议,候选值查询总数是
\[Kn(m+1).\]它所解决的是“每条路径变长以后,为保持精度,还被迫增加多少条路径”的问题。每条路径本身多走的步数,依然要计算。
还有一个有意思的取舍。固定单条提议的查询预算 \(B=Kn\) 时,
\[\frac{Th}{K-1} =\frac{T^2}{B}\frac K{K-1}.\]对任何 \(K\ge2\),最后一个因子都介于 1 和 2 之间。因此,仅从这个池噪声项看,两点查询已经获得了相同的预算阶;更大的池可以提高并行度,但不能据此断言总效果一定更好。改变 \(K\) 同时也会改变可用的去噪步数,其他误差仍要一起考虑。
最后,这里的精度对象是离散时间模型的目标分布。它和连续时间扩散目标之间的数值离散化误差,需要另加一层分析。这样把数值误差、引导误差和采样误差分开,才能看清多出的计算究竟改善了什么。
9. 实验里,哪些现象最能说明问题?
先看 URGE 原论文的两个问题:采样分布有没有更接近目标?多放一些粒子,生成结果有没有随之改善?再看 Stein 稿件如何进一步检验候选之间的关系与完整路径校正。
URGE:先在“知道正确答案”的分布上检验
想检查校正是否有效,最直接的办法,是选一个能够算出目标分布的任务。URGE 使用了一个 30 维、含 40 个分量的高斯混合模型。加上二次奖励后,偏好调整后的目标分布仍有解析表达,因此可以把采样结果与正确答案直接比较。[1,§4.1、附录 C]
这组实验使用 8192 个粒子、500 个离散步,ESS 低于粒子数的 80% 时重采样。FK Steering 与 URGE 都使用引导函数 \(G=r\) 和重采样;原论文 Table 2 中,URGE 报告的是 5 个随机种子的平均结果。下面节选两种方法的对比。[1,Table 2、附录 C]
| 方法 | MMD ↓ | SWD ↓ | 均值误差 ↓ | 协方差误差 ↓ |
|---|---|---|---|---|
| FK Steering | 0.07 | 0.85 | 4.86 | 198.20 |
| URGE | 0.06 | 0.62 | 3.20 | 181.31 |
四项都是越小越好。MMD 与 SWD 衡量分布差异;其中,SWD 可以理解为把高维点云从许多方向投影,再比较各个方向的一维分布。均值误差看点云的中心位置,协方差误差看它的散开程度与各方向之间的关系。
在这组可以核对正确答案的实验中,URGE 的采样分布更接近奖励调整后的目标。例如,SWD 从 0.85 降到 0.62,均值误差从 4.86 降到 3.20。这为前面介绍的路径权重校正提供了实验支持;有限样本下误差更小,并不等于实验已经证明了采样无偏。
URGE:相同粒子数下,生成结果有什么变化?
回到文生图。URGE 原论文在 50 个提示词上进行比较,每个提示词使用 3 个随机种子。采样采用 100 步 DDIM,噪声参数为 1,CFG 强度为 7.5,每隔 20 步重采样。下表节选 Table 4 中都使用 4 个粒子的三种方法。[1,§4.3、Table 4、附录 C]
| 方法,均为 4 个粒子 | CLIP ↑ | HPS ↑ | ImageReward ↑ | GenEval ↑ |
|---|---|---|---|---|
| FK Steering | 0.2901 | 0.2849 | 0.8397 | 0.7200 |
| FK Steering 加梯度引导 | 0.2899 | 0.2839 | 0.7906 | 0.7467 |
| URGE | 0.2997 | 0.2927 | 0.9955 | 0.7800 |
这些指标都是越大越好。CLIP 看图像与文字的语义匹配,HPS 与 ImageReward 是学习得到的偏好评分,GenEval 检查提示词要求的物体等条件是否满足。与 FK Steering 相比,URGE 的 ImageReward 从 0.8397 提高到 0.9955,GenEval 从 0.7200 提高到 0.7800。同样的粒子数下,如何引导、如何计算路径权重,确实会影响最后的结果;相同粒子数与步数并不代表实测运行时间完全相同。
如果继续增加粒子呢?图 7 是原论文的粒子数扩展实验,分别使用 SD v1.5 和 SDXL。在测试的 \(N=2,3,4,6,8\) 下,URGE 的 ImageReward 持续上升,多数配置也高于 FK Steering;但 SD v1.5 的 \(N=2\) 和 SDXL 的 \(N=6\) 是例外。更多粒子在这组实验中带来了持续收益,这是经验结果,不能直接推广为所有任务上的单调性保证。该图使用 10 个提示词,与上表的 50 个提示词评测范围不同。[1,§4.3、Figure 3]
这些分数对应什么样的视觉变化?图 8 从原论文 Table 5 中选出“牙刷与单板滑雪板”和“马与长颈鹿”两组提示词,三列都使用 SD v1.5。观察时,重点看两个物体有没有同时出现,以及它们是否被混成了一个物体。例如,第一行的 FK 结果把牙刷与滑雪板的外形混在一起,URGE 的例子则能分别辨认出两类物体。[1,Table 5]
Stein:两个对称候选,为什么值得认真对待
接着看 Stein 稿件的可控布朗运动实验。稿件比较了中心化查询与独立查询,指标是 adjusted NESS,用来衡量归一化常数估计的效率。图 9 来自论文原图。[2,§5.1、Figure 2]
在受扰动的价值函数、\(n=192\) 的设置下,两个中心化候选达到 92.76%;两个独立候选为 31.40%。独立候选增加到 128 和 256 时,分别达到 92.38% 和 92.81%。
这个实验支持的是一个具体结论:在该设置中,精心安排候选之间的关系,可以比单纯增加候选数量更有效地稳定权重。这些百分比不意味着所有任务都能获得相同比例的加速。
Stein:引导之后,路径校正还贡献了什么
稿件还固定了 Hopper 任务上的扩散策略和 critic,研究采样出的动作分数分布是否接近预定目标。三个目标分别希望把 30%、60%、80% 的概率质量分配到原策略中 critic 分数最高的 10% 动作。
下表比较两点引导在外层校正前后的结果。对每个固定状态,先计算采样器与目标的 critic 分数累积分布之间的 KS 距离,也就是两条累积分布曲线的最大差距,再对八个状态取平均。数值越小,分布越接近。[2,§5.2]
| 目标强度 | 两点引导,尚未外层校正 | 使用 32 条完整提议进行校正 |
|---|---|---|
| 30% | 0.2174 | 0.0306 |
| 60% | 0.2804 | 0.0697 |
| 80% | 0.4041 | 0.1128 |
这里最清楚的信息是:引导已经朝高价值区域走,但整条路径的校正仍然明显改善了目标分布的匹配。实验测量的是固定 critic 的分数分布,不能直接解释成机器人实际回报提高了同样的比例。
回到开头:一本书和一台电脑
图 10 展示同一个 Stable Diffusion v1.5 骨干上的双物体提示词例子。除了“书和电脑”,还包括“刀和斑马”“电脑和胡萝卜”“餐桌和熊”。观察时可以问两个朴素的问题:两个物体都出现了吗?它们是否仍是可辨认的独立物体?[2,§5.3、Table 3]
这些图像把抽象的“偏好”变成了肉眼能理解的问题。它们也提醒我们,单个示例、分布误差与固定算力下的整体表现,是不同层次的证据,应当分别阅读。
10. 把“多想一会儿”变成可分析的算法
从 URGE 到 Stein Guidance,有一条连续的思路:先用近似判断安排探索,再记录生成过程中的概率信息,让额外计算能够修正这种判断带来的偏差。
URGE 说明,保留路径可以让校正权重更容易计算。Stein Guidance 则把候选选择、方差降低与完整路径校正接在一起:同一组中心化查询既提供方向,也为后续校正提供信息。
这给算法设计提出了一个很实际的标准:当我们把去噪步数、候选数或完整提议数翻倍时,应当能够说明,究竟是哪一项误差在下降,为此增加了多少计算。推理时扩展的价值,正在于把更多计算与更可靠的结果联系起来,并把这种联系说清楚、算清楚。
参考文献与图示来源
[1]URGE。Chenyang Wang, Weizhong Wang, Yinuo Ren, Jose Blanchet, Yiping Lu. Simple Approximation and Derivative Free Inference Time Scaling for Diffusion Models via Sequential Monte Carlo on Path Measures. ICML 2026。正式论文页面 · arXiv · HTML 全文。
[2]Stein Guidance。Stein Guidance without Gradients: Discretization Uniform Diffusion Inference Time Scaling beyond Particle SMC. 2026 年研究稿。本文依据该稿的 Theorem 1、§3、Theorem 4、§5,以及附录中的 Proposition 6、Theorem 11、Theorem 12 和 Proposition 22。理论结论与实验数值均按本文所依据的稿件版本表述。
图 1 至图 6 为本文绘制的教学示意图;图 7 与图 8 分别来自 URGE 原论文的 Figure 3 与 Table 5,按 CC BY 4.0 许可使用,图 8 仅作选图、排版与中文标签处理;图 9 与图 10 摘自 Stein Guidance 稿件的 Figure 2 与 Table 3。文中的两类结果概率、候选价值与 MH 接受示例为解释算法而设置;实验数值均在相应段落注明出处。