基础知识:潜变量、似然与生成模型目标

基础知识:潜变量、似然与生成模型目标

Charles Lv8

latent、prior、posterior、likelihood、ELBO、score matching、denoising loss 和 flow matching 都在描述生成过程:数据来自哪个分布、哪个隐藏状态,或哪条从噪声到样本的路径。公式里因此会同时出现可见变量 xx、潜变量 zz、噪声状态 xtx_t、先验、后验和各种下界或匹配目标。

潜变量:看不见但解释观测的因素

潜变量模型常写成:

zp(z),xpθ(xz)z\sim p(z),\quad x\sim p_\theta(x\mid z)

这里 zz 是隐藏原因,xx 是观测。生成方向是先抽 zz,再由 decoder 或生成模型产生 xx

在图像里,zz 可能编码姿态、光照、身份和风格;在世界模型里,ztz_t 可能编码当前 belief state;在视频扩散里,latent 可能是压缩后的图像网格,而不是语义变量。读论文时不要把 latent 当成固定含义,要问它服务重建、生成、预测、压缩还是规划。

先验和后验:生成前相信什么,观察后相信什么

先验:

p(z)p(z)

表示还没看到当前样本前,对隐藏变量的默认分布。

后验:

pθ(zx)p_\theta(z\mid x)

表示看到样本 xx 后,对隐藏变量 zz 的更新信念。根据贝叶斯公式:

pθ(zx)=pθ(xz)p(z)pθ(x)p_\theta(z\mid x) = \frac{p_\theta(x\mid z)p(z)} {p_\theta(x)}

难点在分母:

pθ(x)=pθ(xz)p(z)dzp_\theta(x) = \int p_\theta(x\mid z)p(z)\,dz

高维神经生成模型里,这个积分通常不可算,所以需要近似推断。

似然:模型解释数据的能力

最大似然训练希望:

maxθilogpθ(xi)\max_\theta \sum_i \log p_\theta(x_i)

直觉是让真实数据在模型分布下更可能。但很多生成模型不会直接计算完整 pθ(x)p_\theta(x)。自回归模型用条件概率连乘;VAE 用 ELBO;扩散用加噪去噪目标近似分布学习;flow matching 学连续路径的速度场。

所以看到 likelihood 时要问:它是显式可算的,还是被某个下界、代理 loss 或采样路径替代了。

ELBO:把不可算似然换成可优化下界

VAE 引入近似后验:

qϕ(zx)q_\phi(z\mid x)

先把边际似然乘除同一个 qϕ(zx)q_\phi(z\mid x)

pθ(x)=qϕ(zx)pθ(x,z)qϕ(zx)dzp_\theta(x) = \int q_\phi(z\mid x) \frac{ p_\theta(x,z) }{ q_\phi(z\mid x) } \,dz

也就是:

logpθ(x)=logEqϕ(zx)[pθ(x,z)qϕ(zx)]\log p_\theta(x) = \log \mathbb E_{q_\phi(z\mid x)} \left[ \frac{ p_\theta(x,z) }{ q_\phi(z\mid x) } \right]

因为 log\log 是凹函数,Jensen 不等式给出:

logEq[R]Eq[logR]\log \mathbb E_q[R] \ge \mathbb E_q[\log R]

所以:

logpθ(x)Eqϕ(zx)[logpθ(x,z)qϕ(zx)]LELBO(x)\log p_\theta(x) \ge \mathbb E_{q_\phi(z\mid x)} \left[ \log \frac{ p_\theta(x,z) }{ q_\phi(z\mid x) } \right] \equiv \mathcal L_{\mathrm{ELBO}}(x)

“lower bound” 就来自这一步:先在 log 外取期望,再把 log 移到期望里面,会得到不超过真实 log likelihood 的量。把联合分布 pθ(x,z)=pθ(xz)p(z)p_\theta(x,z)=p_\theta(x\mid z)p(z) 展开,ELBO 常写成:

LELBO(x)=Eqϕ(zx)[logpθ(xz)]DKL(qϕ(zx)p(z))\mathcal{L}_{\text{ELBO}}(x) = \mathbb{E}_{q_\phi(z\mid x)} \left[ \log p_\theta(x\mid z) \right] - D_{\mathrm{KL}} \left( q_\phi(z\mid x)\,\|\,p(z) \right)

第一项让 latent 能解释当前样本,第二项把每个样本的 posterior 拉回统一 prior。KL 太弱,latent 空间可能碎掉,采样差;KL 太强,decoder 可能忽略 latent,出现 posterior collapse。

训练时还要从 qϕ(zx)q_\phi(z\mid x) 采样。对高斯 posterior,可以写成:

ϵN(0,I),z=μϕ(x)+σϕ(x)ϵ\epsilon\sim\mathcal N(0,I), \qquad z = \mu_\phi(x) + \sigma_\phi(x)\odot\epsilon

这一步把随机性搬到与参数无关的 ϵ\epsilon,让 reconstruction term 的梯度能沿 zz 回到 encoder。ELBO 本身说明“优化什么下界”,重参数化说明“这个随机目标怎样反向传播”;更完整的训练信号比较见梯度估计、离散变量与训练信号

DDPM graphical model

图源:Denoising Diffusion Probabilistic Models,Figure 2,已本地化。原图展示扩散模型的正向加噪链和反向生成链。这里的重点是:生成模型常把直接建模 p(x)p(x) 改写成一条包含 latent/noise states 的逐步过程。

Energy-Based Model:先学兼容性,再决定怎样归一化和搜索

有些模型不直接输出规范化概率,而是学习能量:

Eθ(x,y)E_\theta(x,y)

给定输入 xx,兼容的 yy 应该有较低能量,不兼容的 yy 应该有较高能量。如果要把它写成条件概率,可以定义:

pθ(yx)=exp(Eθ(x,y))Zθ(x)p_\theta(y\mid x) = \frac{ \exp(-E_\theta(x,y)) }{ Z_\theta(x) }

其中:

Zθ(x)=exp(Eθ(x,y))dyZ_\theta(x) = \int \exp(-E_\theta(x,y')) \,dy'

叫 partition function。分子只给出未归一化相对权重,分母把所有可能 yy' 的权重加起来,才让概率积分为 1。高维连续输出里 Zθ(x)Z_\theta(x) 往往很难计算,这正是 EBM 灵活但训练和采样不轻松的地方。

EBM 的推理可以是:

y=argminyEθ(x,y)y^* = \arg\min_y E_\theta(x,y)

也可以通过 sampling 找多个低能量解。它适合表达“一种输入对应多个合理输出”:不必把多种未来平均成一个点,只要给不同合理区域较低能量。

但 energy function 不是训练 loss 的同义词。只降低真实样本能量,会让所有位置都变低,形成 energy collapse。训练必须同时塑造不合理区域,常见路线包括 negative / contrastive samples,或对表示方差、协方差和 latent capacity 加约束。H-JEPA 里出现的 latent EBM 就建立在这个通用视角上;论文特有架构留到H-JEPA 精读展开。

可以先这样区分三类对象:

对象 学到什么 推理时做什么
显式 likelihood model 规范化 pθ(x)p_\theta(x) 或条件概率 直接算概率或按分解采样
EBM 未归一化兼容性 Eθ(x,y)E_\theta(x,y) 优化或采样寻找低能量状态
Score-based model 数据空间里的 xlogpt(x)\nabla_x\log p_t(x) 沿 SDE / ODE 或采样器更新样本

Score:概率密度地形的方向

score 定义为:

xlogpt(x)\nabla_x \log p_t(x)

它表示在噪声水平 tt 下,样本 xx 往哪个方向移动会让 log density 上升。扩散模型常以噪声预测或 denoising MSE 的形式训练,实际学习的是不同噪声水平下的概率方向。

如果模型学到的 score 不准,采样路径就会偏;如果少步蒸馏让某些噪声阶段退化,生成会出现结构、纹理或动态上的问题。DMD、DMD2、Score SDE、Phased DMD 都能从这个角度读。

Flow matching:学习从噪声到数据的速度场

Flow matching 常把生成看成连续路径:

dxtdt=vθ(xt,t)\frac{dx_t}{dt} = v_\theta(x_t,t)

这里 dxt/dtdx_t/dt 表示样本状态随连续时间的瞬时变化率,vθ(xt,t)v_\theta(x_t,t) 表示模型在当前位置和时间给出的速度方向。

训练目标让模型速度 vθv_\theta 接近某个目标速度 utu_t

LFM=Et,xt[vθ(xt,t)ut2]\mathcal{L}_{\text{FM}} = \mathbb{E}_{t,x_t} \left[ \|v_\theta(x_t,t)-u_t\|^2 \right]

这和 score matching 的读法相近:模型在每个时间点告诉采样器下一步往哪里走,而不是一次输出最终样本。Rectified Flow、flow matching action head、连续时间视频生成都在使用这类语言。

世界模型里的 latent:要服务决策

世界模型里的 latent state 常写成:

pθ(zt+1zt,at)p_\theta(z_{t+1}\mid z_t,a_t)

这里 latent 不只是压缩图像。它要保留未来预测、动作后果、reward、risk 和 planning 需要的信息。

PlaNet latent dynamics

图源:PlaNet,Figure 2,已本地化。原图比较不同 latent dynamics 设计。这里的重点是:世界模型里的 latent state 既要压缩历史,也要表达可 rollout 的不确定未来。

常见误读

误读 更稳的理解
latent 就是压缩向量 latent 可能是生成原因、belief state、噪声状态或动作相关状态
重建好就代表 latent 好 重建可能保留纹理,却丢掉动作、接触和风险
likelihood 高就一定样本好 likelihood、视觉质量和下游决策价值不完全等价
低 energy 就已经是规范化概率 还需要 partition function;很多 EBM 推理直接使用相对能量
energy function 就是训练时直接最小化的 loss 训练要塑造正负区域的能量差,不能把所有位置一起压低
denoising loss 只是像素误差 它常在近似学习分布方向或生成路径

读完以后怎么判断

看到 latent、prior、posterior、ELBO、energy、score 或 flow matching,先问:随机变量是什么,生成链从哪里开始,推断链看到什么,训练目标是在逼近 likelihood、下界、兼容性、方向场还是下游 reward,评测是否覆盖采样质量和决策价值。这个问题链会支撑 VAE、EBM、DDPM、Score SDE、DMD、Dreamer、PlaNet、V-JEPA、JEPA 和视频世界模型论文。

  • Title: 基础知识:潜变量、似然与生成模型目标
  • Author: Charles
  • Created at : 2026-06-08 09:00:00
  • Updated at : 2026-06-08 09:00:00
  • Link: https://charles2530.github.io/2026/06/08/ai-files-prerequisite-math-latent-likelihood-and-generative-objectives/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments