概率论基础
概率论基础
1. 基本概率概念
1.1 先验与后验
- 先验概率 (Prior):$P(A)$,根据以往经验分析得到的概率,不依赖于当前观测数据。
- 后验概率 (Posterior):$P(A|B)$,在得到新数据(证据)之后,对事件发生的先验概率进行修正/更新后的概率。
1.2 概率与似然
- 概率:由因($\theta$)导果($x$)是概率。
- 解释:已知参数$\theta$,预测数据$x$会是怎么样。
- 例子:我知道这枚硬币是均匀的($\theta=0.5$),所以我打赌接下来扔10次,会有5次正面。
- 似然:由果($x$)导因($\theta$)是似然。
- 解释:已知数据$x$(结果已经发生,不可改变),猜测背后的参数$\theta$最可能是多少。
- 例子:我看到这枚硬币连续扔了10次都是正面(数据$x$),这太诡异了!这枚硬币真的是均匀的么?我举得它很有可能是一个造假的硬币(推测$\theta=0.9$)
公式角度理解
虽然概率函数和似然函数在数值上可能相等:$P(x|\theta) = L(\theta|x)$,但它们在数学意义上完全不同:
- 概率函数 (Probability Function):$P(x|\theta)$
- 自变量是 $x$(结果),参数是 $\theta$(固定)。
- 它描述的是在固定参数 $\theta$ 下,不同结果 $x$ 出现的可能性。
- 性质:$\sum_x P(x|\theta) = 1$ (或积分)。
- 似然函数 (Likelihood Function):$L(\theta|x)$
- 自变量是 $\theta$(参数),参数是 $x$(固定)。
- 它描述的是在固定结果 $x$ 下,不同参数 $\theta$ 导致该结果的可能性。
- 注意:似然函数不是概率分布,$\int L(\theta|x) d\theta$ 不一定等于1。
1.3 条件概率与贝叶斯公式
条件概率:假设 $A, B$ 是两个随机事件,并且 $P(B)>0$,则称 $P(A|B)=\frac{P(AB)}{P(B)}$ 为事件 $B$ 发生的条件下,事件 $A$ 发生的条件概率。
贝叶斯公式:
$$ P(A|B) = \frac{P(A\cap B)}{P(B)} = \frac{P(B|A)P(A)}{P(B)} \tag{1} $$其中:
- $P(A)$ 是先验概率。
- $P(AB)$、$P(A,B)$、$P(A \cap B)$都是联合概率,表示$A$和$B$同时发生的概率。
- $P(B|A)$ 是似然概率(Likelihood)。
- $P(A|B)$ 是后验概率。
- $P(B)$ 是边缘概率(标准化常量)。
扩展形式: 引入额外事件 $C$(相当于在已知 $C$ 的背景下):
$$\begin{aligned} P(A|B,C)&=\frac{P(A,B,C)}{P(B,C)} \\\\ &=\frac{P(B|A,C)P(A,C)}{P(B,C)} \\\\ &=\frac{P(B|A,C)P(A|C)P(C)}{P(B|C)P(C)} \\\\ &=\frac{P(B|A,C)P(A|C)}{P(B|C)} \end{aligned}$$2. 随机变量与分布
2.1 概率质量函数 (PMF)
概率质量函数 (Probability Mass Function, PMF) 描述离散型随机变量 $X$ 的概率分布,给出了随机变量每个可能取值的概率。
$$ P(X=x_i)=p_i $$其中,$X$ 是离散型随机变量,$x_i$ 是随机变量可能的取值,$p_i$ 表示取值为 $x_i$ 的概率。满足 $\sum p_i = 1$。
2.2 概率密度函数 (PDF)
概率密度函数 (Probability Density Function, PDF) 描述连续型随机变量 $X$ 的概率分布。
- 定义:$f(x)$ 表示在某个取值 $x$ 附近的概率密度。
- 性质:
- 非负性:$f(x) \ge 0$
- 归一性:$\int_{-\infty}^{\infty} f(x) \,dx = 1$
- 概率计算:事件 $a \le X \le b$ 的概率为 $\int_a^b f(x)\,dx$。
- 注意:PDF 在某点的值 $f(x)$ 不是概率(可以大于1),积分才是概率。
2.3 联合分布与边缘概率 (Joint & Marginal Probability)
联合概率 (Joint Probability) 表示两个或多个随机变量同时发生的概率,记为 $P(X=x, Y=y)$ 或 $f(x, y)$。
边缘概率 (Marginal Probability) 指从联合概率分布中,对其他变量进行求和(离散)或积分(连续),只保留关注变量的概率分布。这就好比将二维表格的数值加到边缘(Margin)上。
1. 离散型 (Discrete Case)
对于离散随机变量 $X, Y$,边缘概率质量函数 $P(X)$ 为:
$$ P(X=x_i) = \sum_{j} P(X=x_i, Y=y_j) $$即:固定 $X$ 的取值,把 $Y$ 所有可能取值的联合概率加起来。
2. 连续型 (Continuous Case)
对于连续随机变量 $X, Y$,边缘概率密度函数 $f_X(x)$ 为:
$$ f_X(x) = \int_{-\infty}^{\infty} f_{X,Y}(x, y) \, dy $$即:把 $Y$ 维度上的概率密度积分掉 (Integrate out),剩下的就是 $X$ 的密度。
3. 与条件概率的关系
边缘概率也常用于全概率公式中:
$$ P(X) = \sum_y P(X|Y=y)P(Y=y) $$2.4 似然函数 (Likelihood)
似然函数描述了在已知观测数据 $x$ 的情况下,模型参数 $\theta$ 的可信程度。
- 定义:$L(\theta | x) = P(x | \theta)$ (离散) 或 $L(\theta | x) = f(x | \theta)$ (连续)。
- 极大似然估计 (MLE) 就是寻找使似然函数最大的参数 $\theta$。
3. 统计量
3.1 方差 (Variance)
方差衡量随机变量与其均值的偏离程度(离散程度)。方差越大,数据越分散。
计算公式:
$$ Var(X) = E[(X - \mu)^2] = \frac{1}{n}\sum\limits^{n}_{i=1}(x_{i}-\bar{x})^{2} $$3.2 协方差 (Covariance)
协方差衡量两个随机变量(一维)之间的线性相关性。
- 正值:变化趋势一致(同增同减)。
- 负值:变化趋势相反。
- 0:无线性相关性。
计算公式:
$$ cov(X, Y) = E[(X-\mu_X)(Y-\mu_Y)] = \frac{1}{n}\sum\limits^{n}_{i=1}(x_{i}-\bar{x})(y_{i}-\bar{y}) $$3.3 协方差矩阵 (Covariance Matrix)
描述多维随机变量之间线性相关性的统计工具。假设样本向量 $X=(X_{1},X_{2}...,X_{n})$。
协方差矩阵 $\Sigma$ 是一个 $n \times n$ 矩阵,元素 $\Sigma_{i,j}$ 表示 $X_{i},X_{j}$ 之间的协方差:
$$ \Sigma_{i,j}=cov(X_{i},X_{j})=\frac{1}{N}\sum\limits_{k=1}^N(x_{i,k}-\bar{x_{i}})(x_{j,k}-\bar{x_{j}}) $$- 对角线元素:各变量的方差。
- 非对角线元素:变量间的协方差。
协方差矩阵的内积: 两个多维随机变量分布 $X,Y$ 的协方差矩阵的内积(如 Frobenius 内积 $Tr(\Sigma_{X}\Sigma_{Y})$)常用于衡量两个分布结构的相关性或相似度。
4. 信息论基础
4.1 熵 (Entropy)
衡量随机变量的不确定性或混乱程度。熵越大,不确定性越高。
$$ H(X) = -\sum_{i} p(x_{i}) \log p(x_{i}) $$4.2 交叉熵 (Cross Entropy)
衡量两个概率分布 $P$ 和 $Q$ 的差异。常用于机器学习中的损失函数(用 $Q$ 拟合真实分布 $P$)。
$$ H(P,Q) = -\sum_{i} p(x_{i}) \log q(x_{i}) $$关系:$H(P,Q) \geq H(P)$。
4.3 KL 散度 (KL Divergence)
又称相对熵,衡量分布 $Q$ 相对于 $P$ 的信息损失。
$$ D_{KL}(P\|Q) = \sum_{i} p(x_{i}) \log \left(\frac{p(x_{i})}{q(x_{i})}\right) $$关系:
$$ D_{KL}(P\|Q) = H(P, Q) - H(P) $$深度学习应用:KLD
4.4 互信息 (Mutual Information)
衡量两个随机变量 $X$ 和 $Y$ 之间的相互依赖程度,即通过知道 $Y$ 能减少多少关于 $X$ 的不确定性。
公式:
$$ I(X;Y) = \sum_{y \in Y} \sum_{x \in X} p(x,y) \log \left(\frac{p(x,y)}{p(x)p(y)}\right) $$与熵的关系:
$$ I(X;Y) = H(X) - H(X|Y) = H(Y) - H(Y|X) = H(X) + H(Y) - H(X,Y) $$5. 随机过程 (Stochastic Process)
随机过程是定义在概率空间上的一族随机变量 $\{X_t, t \in T\}$。
- 参数集 $T$:通常表示时间。
- $T = \{0, 1, 2, \dots\}$:离散时间随机过程。
- $T = [0, \infty)$:连续时间随机过程。
- 状态空间 $S$:随机变量 $X_t$ 所有可能取值的集合。
- 离散状态:如抛硬币结果、排队人数。
- 连续状态:如温度变化、股票价格、粒子位置(Diffusion Model 中涉及的就是连续状态)。
5.1 马尔科夫链 (Markov Chain)
1. 定义与马尔科夫性质
马尔科夫链是具有马尔科夫性质(无记忆性)的离散时间随机过程。即下一状态的概率分布只依赖于当前状态,而与过去的历史状态无关。
数学表达:
$$ P(X_{t+1} = j | X_t = i, X_{t-1} = i_{t-1}, \dots, X_0 = i_0) = P(X_{t+1} = j | X_t = i) $$在 Diffusion Model (DDPM) 中,正向扩散过程(加噪)和反向去噪过程都被建模为马尔科夫链:
- 正向过程 (Forward): $q(x_t|x_{t-1})$,仅依赖上一时刻。
- 反向过程 (Reverse): $p_\theta(x_{t-1}|x_t)$,仅依赖后一时刻(去噪)。
2. 转移概率 (Transition Probability)
对于时间齐次(Time-Homogeneous)马尔科夫链,转移概率与时间 $t$ 无关。
- 一步转移概率:从状态 $i$ 转移到状态 $j$ 的概率。 $$ P_{ij} = P(X_{t+1} = j | X_t = i) $$
- 转移概率矩阵 $P$:
$$
P = \begin{bmatrix}
p_{11} & p_{12} & \dots & p_{1n} \\
p_{21} & p_{22} & \dots & p_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
p_{n1} & p_{n2} & \dots & p_{nn}
\end{bmatrix}
$$
- 性质:每一行的元素之和为 1,即 $\sum_j P_{ij} = 1$。
3. C-K 方程 (Chapman-Kolmogorov Equation)
描述了多步转移概率与一步转移概率的关系。从状态 $i$ 经过 $n+m$ 步到达状态 $j$ 的概率 $P_{ij}^{(n+m)}$,等于中间经过任意状态 $k$ 的概率之和:
$$ P_{ij}^{(n+m)} = \sum_{k \in S} P_{ik}^{(n)} P_{kj}^{(m)} $$矩阵形式:
$$ P^{(n)} = P^n $$这意味着 $n$ 步转移矩阵等于一步转移矩阵的 $n$ 次幂。这在计算长时分布时非常有用。
4. 平稳分布 (Stationary Distribution)
如果存在一个概率分布 $\pi = [\pi_1, \pi_2, \dots]$,使得:
$$ \pi P = \pi $$则称 $\pi$ 为该马尔科夫链的平稳分布。
- 物理意义:当系统运行了足够长的时间后,系统处于各个状态的概率趋于稳定,不再随时间变化。
- 在 Diffusion Model 中,正向扩散过程的终点($T \to \infty$)通常设计为收敛到一个简单的平稳分布(如标准高斯分布 $\mathcal{N}(0, I)$),这也是生成模型能够从纯噪声开始采样的理论基础。
6. 变分推断与 ELBO (Evidence Lower Bound)
在生成模型(如 VAE, DDPM)中,我们的核心目标通常是最大化观测数据 $x$ 的似然概率 $P(x)$(即 Model Evidence)。
6.1 为什么需要 ELBO?
对于含有隐变量 $z$ 的模型,计算边缘概率 $P(x)$ 需要对所有可能的 $z$ 进行积分:
$$ P(x) = \int P(x, z) \, dz = \int P(x|z)P(z) \, dz $$- 困难:在深度学习的高维空间中,这个积分通常是不可解的 (Intractable)。
- 解决:我们无法直接最大化 $\log P(x)$,转而寻找它的一个下界 (Lower Bound),并最大化这个下界。只要下界变大了,原目标 $\log P(x)$ 大概率也会变大。这个下界就是 ELBO。
6.2 ELBO 的推导
利用 Jensen 不等式或 KL 散度性质,可以推导出:
$$ \log P(x) = \underbrace{\mathbb{E}_{q(z|x)} \left[ \log \frac{P(x,z)}{q(z|x)} \right]}_{\text{ELBO}} + \underbrace{D_{KL}(q(z|x) \| P(z|x))}_{\ge 0} $$- $q(z|x)$:变分后验分布(Approximate Posterior),通常由神经网络参数化(如 VAE 中的 Encoder)。
- $P(z|x)$:真实的后验分布(不可求)。
- 关键点:由于 KL 散度总是非负的 ($D_{KL} \ge 0$),所以:
$$
\log P(x) \ge \text{ELBO} \quad (\text{Evidence Lower Bound})
$$
最大化 ELBO 等价于:
- 最大化似然 $\log P(x)$ 的下界。
- 最小化 $q(z|x)$ 和真实后验 $P(z|x)$ 之间的差异(即 $D_{KL}$)。
6.3 常见形式
ELBO 常被写成以下两种形式(以 VAE 为例):
重构项 + 正则项 (Reconstruction + Regularization):
$$ \text{ELBO} = \underbrace{\mathbb{E}_{q(z|x)}[\log P(x|z)]}_{\text{Reconstruction Term}} - \underbrace{D_{KL}(q(z|x) \| P(z))}_{\text{Regularization Term}} $$- Reconstruction: 希望 $z$ 能准确还原出 $x$(类似 Autoencoder 的 Loss)。
- Regularization: 希望学到的分布 $q(z|x)$ 接近先验 $P(z)$(通常假设为标准高斯分布 $\mathcal{N}(0, I)$),防止过拟合。
联合概率形式(DDPM 中主要利用此性质):
$$ \text{ELBO} = \mathbb{E}_{q}[\log P(x, z) - \log q(z|x)] $$
6.4 为什么 VAE 和 DDPM 要用 ELBO?
| 算法 | 原因分析 | 应用方式 |
|---|---|---|
| VAE (Variational Autoencoder) | 无法直接计算后验 $P(z\|x)$(因为分母 $P(x)$ 难算)。 | VAE 把 ELBO 作为损失函数(取负号)。通过优化 Encoder ($q_\phi$) 和 Decoder ($p_\theta$) 来最大化 ELBO,从而近似极大似然估计。 |
| DDPM (Diffusion Model) | 定义了长链路的马尔科夫过程,$P(x_0)$ 的积分极其复杂。 | DDPM 的训练目标实际上是最大化 ELBO 的变种。通过繁复的数学推导,发现优化 ELBO 等价于在每一步做噪声预测 (Noise Prediction) 的均方误差 (MSE) 最小化:$\| \epsilon - \epsilon_\theta(x_t, t) \|^2$。 |