Gaussian Discriminant Analysis (GDA)
4 Generative Learning Algorithms
在前面的章节中,我们主要讨论的是判别式学习算法(Discriminative Learning Algorithms)。这类方法直接对条件概率分布 \(p(y \mid x)\) 进行建模,或等价地,直接学习一个用于区分类别的决策函数。例如,逻辑回归通过假设 \[ p(y \mid x) = \text{Bernoulli}(g(\theta^T x)) \] 来完成二分类任务,其中模型参数 \(\theta\) 是通过最大化条件对数似然或最小化等价的损失函数来学习的。
本章将转向另一类重要的方法:生成式学习算法(Generative Learning Algorithms)。与判别式方法不同,生成式模型并不直接建模 \(p(y \mid x)\),而是首先对联合分布 \(p(x, y)\) 作出假设,通常通过分别建模 \(p(x \mid y)\) 和 \(p(y)\),再利用贝叶斯公式推导出分类规则。
从概率建模的角度来看,生成式方法回答的问题是:在某一类别假设成立的前提下,数据是“如何生成的”。一旦给定了 \(p(x \mid y)\) 的形式以及类别先验 \(p(y)\),就可以通过 \[ p(y \mid x) = \frac{p(x \mid y)p(y)}{\sum_{y'} p(x \mid y')p(y')} \] 得到后验概率,从而完成分类。
生成式模型与判别式模型之间并不存在绝对的优劣关系,而是体现了一种偏好与权衡。生成式模型往往对数据分布作出了更强的结构性假设,因此在样本数量较少、模型假设接近真实分布时,能够更高效地利用数据;而判别式模型由于假设较弱,通常在模型失配或数据量较大时具有更好的鲁棒性。
本章首先介绍 Gaussian Discriminant Analysis(GDA),这是最经典的生成式分类模型之一。通过对类别条件分布作出高斯假设,可以得到具有清晰几何解释的分类规则。随后将介绍 Naive Bayes 方法,并讨论其在高维离散特征和文本分类等任务中的优势与局限。
通过本章的学习,可以从更高的概率建模视角理解分类问题,并为后续 EM 算法、混合模型等更一般的生成式方法奠定基础。
4.1 Gaussian Discriminant Analysis
本节介绍生成式学习算法中的经典方法 Gaussian Discriminant Analysis(GDA)。与逻辑回归等判别式方法直接建模 \(p(y \mid x)\) 不同,GDA 首先对联合分布 \(p(x, y)\) 作出概率假设,再通过贝叶斯公式推导出分类规则。
4.1.1 多元正态分布与条件分布建模
GDA 的基本假设是:在给定类别标签 \(y\) 的条件下,特征向量 \(x \in \mathbb{R}^d\) 服从多元正态分布。多元高斯分布的概率密度函数为 \[ p(x) = \frac{1}{(2\pi)^{d/2} |\Sigma|^{1/2}} \exp\left( -\frac{1}{2}(x-\mu)^T \Sigma^{-1} (x-\mu) \right). \]
指数中的二次型 \((x-\mu)^T \Sigma^{-1} (x-\mu)\) 描述了样本点到均值的马氏距离,其几何意义是以 \(\Sigma\) 所定义的度量来衡量偏离程度。协方差矩阵 \(\Sigma\) 同时编码了各维度的方差以及不同特征之间的相关性。
在 GDA 中,假设对于二分类问题 \(y \in \{0,1\}\),条件分布为 \[ p(x \mid y=0) = \mathcal{N}(\mu_0, \Sigma), \] \[ p(x \mid y=1) = \mathcal{N}(\mu_1, \Sigma), \] 并且两个类别共享同一个协方差矩阵 \(\Sigma\)。这一共享假设将在后续推导中直接导致线性判别边界。
4.1.2 模型假设与极大似然参数估计的推导
GDA 对类别先验作出如下假设: \[ p(y=1) = \phi, \quad p(y=0) = 1-\phi. \]
因此,联合分布可以写为 \[ p(x, y) = p(x \mid y)\,p(y). \]
给定训练样本 \(\{(x^{(i)}, y^{(i)})\}_{i=1}^n\),对参数 \(\phi, \mu_0, \mu_1, \Sigma\) 进行极大似然估计。对数似然函数为 \[ \ell(\phi, \mu_0, \mu_1, \Sigma) = \sum_{i=1}^n \log p(x^{(i)} \mid y^{(i)}) + \sum_{i=1}^n \log p(y^{(i)}). \]
先考虑 \(\phi\)。与 Bernoulli 分布的极大似然估计相同,有 \[ \phi = \frac{1}{n} \sum_{i=1}^n \mathbf{1}\{y^{(i)} = 1\}. \]
接下来考虑均值参数。由于在给定 \(y\) 的条件下 \(x\) 服从高斯分布,对 \(\mu_0\) 和 \(\mu_1\) 的极大似然估计等价于分别最小化对应类别样本的平方误差,从而得到 \[ \mu_0 = \frac{\sum_{i=1}^n \mathbf{1}\{y^{(i)} = 0\} x^{(i)}} {\sum_{i=1}^n \mathbf{1}\{y^{(i)} = 0\}}, \] \[ \mu_1 = \frac{\sum_{i=1}^n \mathbf{1}\{y^{(i)} = 1\} x^{(i)}} {\sum_{i=1}^n \mathbf{1}\{y^{(i)} = 1\}}. \]
协方差矩阵的极大似然估计来自对高斯对数似然中二次项的最小化。由于两个类别共享 \(\Sigma\),最终结果为 \[ \Sigma = \frac{1}{n} \sum_{i=1}^n \left(x^{(i)} - \mu_{y^{(i)}}\right) \left(x^{(i)} - \mu_{y^{(i)}}\right)^T. \]
这表明协方差是对“按类别中心化后的样本”整体进行估计,而不是简单地对所有样本去均值。
4.1.3 从高斯假设到线性判别函数的完整推导
GDA 的分类规则来源于后验概率 \(p(y \mid x)\)。根据贝叶斯公式,有 \[ p(y=1 \mid x) = \frac{p(x \mid y=1)p(y=1)} {p(x \mid y=0)p(y=0) + p(x \mid y=1)p(y=1)}. \]
为了分析决策边界,考虑后验概率的对数几率: \[ \log \frac{p(y=1 \mid x)}{p(y=0 \mid x)} = \log \frac{p(x \mid y=1)p(y=1)}{p(x \mid y=0)p(y=0)}. \]
将高斯密度函数代入,上式变为 \[ \log \frac{p(y=1 \mid x)}{p(y=0 \mid x)} = \log \frac{\phi}{1-\phi} - \frac{1}{2}(x-\mu_1)^T \Sigma^{-1} (x-\mu_1) + \frac{1}{2}(x-\mu_0)^T \Sigma^{-1} (x-\mu_0). \]
展开二次型项: \[ (x-\mu_k)^T \Sigma^{-1} (x-\mu_k) = x^T \Sigma^{-1} x - 2 \mu_k^T \Sigma^{-1} x + \mu_k^T \Sigma^{-1} \mu_k. \]
将 \(k=1\) 和 \(k=0\) 的展开式代入并合并,可以发现 \(x^T \Sigma^{-1} x\) 项相互抵消,剩余项为 \[ (\mu_1 - \mu_0)^T \Sigma^{-1} x - \frac{1}{2} \left( \mu_1^T \Sigma^{-1} \mu_1 - \mu_0^T \Sigma^{-1} \mu_0 \right) + \log \frac{\phi}{1-\phi}. \]
因此,对数几率可以写成线性形式 \[ \log \frac{p(y=1 \mid x)}{p(y=0 \mid x)} = \theta^T x + \theta_0, \] 其中 \[ \theta = \Sigma^{-1}(\mu_1 - \mu_0), \] \[ \theta_0 = -\frac{1}{2} \left( \mu_1^T \Sigma^{-1} \mu_1 - \mu_0^T \Sigma^{-1} \mu_0 \right) + \log \frac{\phi}{1-\phi}. \]
将该结果代回贝叶斯公式,可得 \[ p(y=1 \mid x) = \frac{1}{1+\exp(-(\theta^T x + \theta_0))}. \]
由此可以看出,在共享协方差矩阵的高斯假设下,GDA 所诱导出的判别函数在形式上与逻辑回归完全一致。但二者的本质区别在于建模路径:GDA 是通过对 \(p(x \mid y)\) 的生成式建模推导出这一结果,而逻辑回归则是直接对 \(p(y \mid x)\) 作出假设。