得分匹配、GAN 与生成模型的统一
概率密度估计的经典方法——最大似然估计——要求模型给出归一化的概率密度 pθ(x)p_\theta(x),这在复杂模型中往往不可行,因为归一化常数 Zθ=∫p~θ(x)dxZ_\theta = \int \tilde{p}_\theta(x)dx 的高维积分无法解析求解。2005 年,Aapo Hyvarinen 提出了一个绕过归一化常数的方法:得分匹配(Score Matching)。它不估计密度本身,而是估计密度的梯度——得分函数。 ...
概率密度估计的经典方法——最大似然估计——要求模型给出归一化的概率密度 pθ(x)p_\theta(x),这在复杂模型中往往不可行,因为归一化常数 Zθ=∫p~θ(x)dxZ_\theta = \int \tilde{p}_\theta(x)dx 的高维积分无法解析求解。2005 年,Aapo Hyvarinen 提出了一个绕过归一化常数的方法:得分匹配(Score Matching)。它不估计密度本身,而是估计密度的梯度——得分函数。 ...
生成模型的核心任务是学习数据分布 p(x)p(x),然后从中采样生成新样本。对于观测变量 xx,一个自然的框架是引入隐变量 zz,通过联合分布 p(x,z)=p(x∣z)p(z)p(x, z) = p(x|z)p(z) 建模数据生成过程。然而,一旦模型建好,真正困难的步骤浮现出来:如何从观测 xx 推断隐变量 zz 的后验分布 p(z∣x)p(z|x)? 这里需要澄清一个常见的混淆:先验假设与后验假设是两件不同的事。VAE 假设先验 p(z)=N(0,I)p(z) = \mathcal{N}(0, I),这只是对边际分布的约束——它规定了隐空间的整体结构,但并未约束给定 xx 后 zz 的条件分布。真正核心的建模假设是:编码器输出的 qϕ(z∣x)=N(μϕ(x),σϕ2(x)I)q_\phi(z|x) = \mathcal{N}(\mu_\phi(x), \sigma_\phi^2(x) I) 近似真实后验 p(z∣x)p(z|x)。换言之,VAE 假设的核心不在于边际分布层面的"zz 是正态的",而在于条件分布层面的"给定 xx 后,zz 的后验是正态的"——并且用参数化的编码器来逼近这个后验。 ...
一、从离散到连续:马尔可夫链的 SDE 极限 DDPM 的前向过程是一个离散的马尔可夫链:每一步从 xt−1x_{t-1} 到 xtx_t 添加一个小的高斯噪声。这个离散过程有一个自然的连续极限——当时间步长 Δt→0\Delta t \to 0 时,马尔可夫链收敛于一个随机微分方程(SDE)。 ...
DDPM 前向/反向过程的基础推导见 扩散模型与自动驾驶规划,本文聚焦变分下界的分解与最优参数化。 从直觉出发:拆楼与建楼 DDPM 的核心思想可以用一个朴素的类比来理解:一栋大楼(数据)可以逐步拆解为砖瓦水泥(噪声),反过来,学会拆楼的逆过程就能从砖瓦水泥重建大楼。这个类比的核心在于:逐步拆比一步拆更可控。如果一次爆破将大楼瞬间化为废墟,从废墟中重建大楼几乎不可能——因为信息丢失太严重,逆过程极度复杂。但如果每步只拆一小部分,每步的变化都很小,那么每步的逆过程也足够简单,可以用一个简单的高斯分布来描述。 ...
为什么自动驾驶需要扩散模型? 自动驾驶规划的核心难题在于"找到正确的轨迹分布",而非仅仅是"找到一条轨迹"。 考虑一个简单场景:自车接近一个无信号灯的 T 字路口。存在三种合理选项——左转、右转、直行通过。传统回归模型(L1/L2 损失)训练后面对此场景会输出三条轨迹的平均值:一条斜向路口中央的无意义曲线。这是损失函数的结构性局限,而非模型的能力缺陷——L2 回归在多模态分布上的最优解恰好是条件均值,而条件均值在物理上可能根本不可行。 ...