能量模型 (EBM)

为每个配置赋予一个未归一化能量,并通过玻尔兹曼形式定义概率密度的一类概率模型。

先看大局

要描述「哪些 xx 更可能出现」,最直接的办法是写下一条概率密度 p(x)p(x)。但密度必须处处非负且积分为一,这两条约束让人很难自由地「设计」一个密度。能量模型换一个出发点:先给每个配置 xx 打一个分数——能量 Eθ(x)E_\theta(x),分数越低越「合意」——再机械地把分数转成概率。 这样建模者只需关心相对优劣,归一化的事交给公式去办。本页接下来说明这个转换怎么做、代价在哪里,以及为什么这种「只比较、不归一化」的结构恰好契合 Cryo-ET 重构。

能量模型(EBM)通过一个标量能量函数 Eθ(x)E_\theta(x) 在配置 xx 上定义概率密度。这里 xx 是我们要建模的对象(在 Cryo-ET 中即一个三维密度体),θ\theta 是能量函数自身的参数(例如一个神经网络的权重)。能量越低,概率越高:

能量x−55
能量 E(x)密度 p(x) ∝ exp(−E(x)/T)

能量越低,概率越高:两个势阱底部对应密度的两个峰。温度 T 越高,exp(−E/T) 越平,密度趋向均匀,两峰之间的差异被抹平。

能量函数的局部极小对应密度的众数,势阱越深则该处概率质量越集中。温度参数 TT 把指数族 eE/Te^{-E/T} 整体缩放:低温下密度锐化、几乎全部集中在最深的阱中,高温下则趋于平坦、各配置概率趋同。配分函数 ZθZ_\theta 仅起整体归一化作用,并不改变密度的形状。

pθ(x)=1ZθeEθ(x),Zθ=eEθ(x)dx.p_\theta(x) = \frac{1}{Z_\theta}\,e^{-E_\theta(x)}, \qquad Z_\theta = \int e^{-E_\theta(x)}\,dx .

逐符号来看:pθ(x)p_\theta(x) 是配置 xx 的概率密度;Eθ(x)E_\theta(x) 是赋给该配置的标量能量;eEθ(x)e^{-E_\theta(x)} 把「低能量」单调地映成「大权重」;ZθZ_\theta 是对所有可能 xx 求和(积分)得到的归一化常数,它保证 pθ(x)dx=1\int p_\theta(x)\,dx=1。注意指数前的负号——它使得能量最低处概率最高,与物理中粒子倾向于落入低能态一致。

这就是玻尔兹曼–吉布斯形式。模型对 EθE_\theta 不施加任何结构约束 —— 任何把 xx 映到实数的函数,经归一化后都给出一个合法密度 —— 这使 EBM 成为极其灵活的一族模型。举一个最小例子:取 Eθ(x)=12(xμ)2/σ2E_\theta(x)=\tfrac12(x-\mu)^2/\sigma^2,代入上式就还原出均值 μ\mu、方差 σ2\sigma^2 的高斯分布,此时 Zθ=2πσZ_\theta=\sqrt{2\pi}\,\sigma 恰好可解。高斯之所以「简单」,正是因为它的能量是二次型;一旦把 EθE_\theta 换成一个深层网络,密度可以有任意多个、形状任意的势阱,而代价就藏在 ZθZ_\theta 里。

困难在于配分函数 ZθZ_\theta。当 xx 维度很高时该积分不可解——一个 1283128^3 体素的密度体就是约两百万维,对它做积分没有任何闭式或可数值穷举的办法——因此 pθ(x)p_\theta(x) 无法以闭式求值,似然亦然。EBM 的实用化建立在一个观察之上:许多关心的量并不需要 ZθZ_\theta

直觉

能量总是只在比较中起作用。两个状态之间的概率比值

pθ(x1)pθ(x2)=e(Eθ(x1)Eθ(x2)),\frac{p_\theta(x_1)}{p_\theta(x_2)} = e^{-(E_\theta(x_1)-E_\theta(x_2))},

其中 ZθZ_\theta 被约去。比如 Eθ(x1)Eθ(x2)=2E_\theta(x_1)-E_\theta(x_2)=-2,则 x1x_1 的概率是 x2x_2e27.4e^2\approx 7.4 倍——这个结论完全不依赖那个算不出来的 ZθZ_\theta。采样、排序与基于梯度的搜索都依赖能量,而非绝对概率。换句话说,能量的整体平移 EθEθ+cE_\theta\mapsto E_\theta+c 不改变任何分布,因为常数 cc 在比值中、也在 ZθZ_\theta 中被同样地吸收掉。

对数密度关于 xx 的梯度,即得分(score),同样不含 ZθZ_\theta

xlogpθ(x)=xEθ(x).\nabla_x \log p_\theta(x) = -\nabla_x E_\theta(x).

推导一行就够:logpθ(x)=Eθ(x)logZθ\log p_\theta(x) = -E_\theta(x) - \log Z_\theta,而 logZθ\log Z_\theta 不依赖 xx,对 xx 求梯度即为零,于是只剩 xEθ(x)-\nabla_x E_\theta(x)。得分是一个向量场,在每个 xx 处指向「概率上升最快」的方向,也就是「能量下降最快」的方向。正因如此,朗之万动力学这类基于梯度的采样器才能与 EBM 兼容:它们只需在每一点问能量函数「往哪个方向走能量更低」,而这恰是反向传播能直接给出的量。

深入

极大似然训练需要 θlogZθ=Epθ[θEθ(x)]\nabla_\theta \log Z_\theta = -\mathbb{E}_{p_\theta}[\nabla_\theta E_\theta(x)],这是一个模型分布下的期望,需要从 pθp_\theta 采样。把它代入对数似然的梯度,得到一个直观的「拔河」形式

θlogpθ(xdata)=θEθ(xdata)  +  Epθ ⁣[θEθ(x)],\nabla_\theta \log p_\theta(x_{\text{data}}) = -\,\nabla_\theta E_\theta(x_{\text{data}}) \;+\; \mathbb{E}_{p_\theta}\!\big[\nabla_\theta E_\theta(x)\big],

第一项压低数据点的能量,第二项抬高当前模型自己生成的样本的能量;两者平衡时模型分布与数据分布相符。难点在第二项的期望——它需要从 pθp_\theta 采样,而这正是配分函数难题换了个面孔。对比散度(contrastive divergence)用从数据出发的短马尔可夫链近似该期望,以偏差换取可负担的计算量。另一些方法则完全绕开 ZθZ_\theta得分匹配(score matching)不去碰似然,而是直接把模型得分 xlogpθ\nabla_x \log p_\theta 拟合到数据得分,目标函数里只出现 xEθ\nabla_x E_\theta 因而与 ZθZ_\theta 无关;噪声对比估计则把密度估计化为一个对已知噪声分布的二分类问题,让分类器在区分「真数据」与「噪声」的过程中间接学到未归一化的密度。

EBM 为本站若干重构方法提供概率骨架:能量先验 p(x)eEϕ(x)p(x)\propto e^{-E_\phi(x)} 在无需求值 ZZ 的情况下刻画哪些三维结构是合理的——平滑、连通、符合已知生物学的体被赋予低能量,碎裂或带伪影的体被赋予高能量。重构时把这条先验与数据似然相乘,CryoGEN 即采用此思路:CryoGEN-I 在该能量地形上求一个最低点(MAP 点估计),而 CryoWGEN 不止步于单点,转而从这条后验里采样一族解——其内循环正是上面提到的、只需得分 xE-\nabla_x E朗之万采样。相关的「只比较、不归一化」思想亦见于最优传输及熵正则传输中的吉布斯耦合,那里同样把一个未归一化的指数权重作为建模的核心对象。

← 推断与采样