**线性判别分析 (LDA) **
1. LDA 的基本概念
LDA(Linear Discriminant Analysis,线性判别分析)是一种生成式模型,用于分类任务。它假设每个类别的数据点服从正态分布,并利用贝叶斯定理找到决策边界,从而进行分类。
在 LDA 中,我们要计算给定样本 X 属于类别 k 的概率:
p k ( x ) = P ( Y = k ∣ X = x ) = π k f k ( x ) ∑ ℓ = 1 K π ℓ f ℓ ( x ) p_k(x) = P(Y = k | X = x) = \frac{\pi_k f_k(x)}{\sum_{\ell=1}^{K} \pi_{\ell} f_{\ell}(x)} pk(x)=P(Y=k∣X=x)=∑ℓ=1Kπℓfℓ(x)πkfk(x)
其中:
- πk :类别 k 的先验概率(类别 kkk 在训练集中出现的频率)。
- fk(x) :在类别 k 条件下 X 的概率密度函数(PDF)。
LDA 通过估计每个类别的先验概率 πk 和概率密度函数 fk(x 来进行分类。
2. LDA 如何建模?
LDA 的核心思想是:
- 假设每个类别的数据服从正态分布(高斯分布):
f k ( x ) = 1 2 π σ k 2 exp ( − ( x − μ k ) 2 2 σ k 2 ) f_k(x) = \frac{1}{\sqrt{2\pi \sigma_k^2}} \exp\left(-\frac{(x - \mu_k)^2}{2\sigma_k^2} \right) fk(x)=2πσk21exp(−2σk2(x−μk)2)
- μk :类别 k 的均值
- σk^2:类别 k 的方差(假设不同类别的方差相同,即共同方差 σ^2)
-
使用贝叶斯定理计算类别概率,然后将样本 x 分配给概率最大的类别。
-
估计参数:
- 均值 μk : 计算类别 k 中所有样本的平均值:
μ ^ k = 1 n k ∑ i : y i = k x i \hat{\mu}_k = \frac{1}{n_k} \sum_{i:y_i=k} x_i μ^k=nk1i:yi=k∑xi
- 方差 σ^2 : 计算所有类别的方差并取加权平均:
σ ^ 2 = 1 n − K ∑ k = 1 K ∑ i : y i = k ( x i − μ ^ k ) 2 \hat{\sigma}^2 = \frac{1}{n - K} \sum_{k=1}^{K} \sum_{i:y_i=k} (x_i - \hat{\mu}_k)^2 σ^2=n−K1k=1∑Ki:yi=k∑(xi−μ^k)2
- 先验概率 πk : 计算类别 k 的样本比例:
π ^ k = n k n \hat{\pi}_k = \frac{n_k}{n} π^k=nnk
其中:
- nk :类别 的样本数
- n :总样本数
3. LDA 与 Logistic 回归的比较
方法 | 相似点 | 不同点 |
---|---|---|
LDA | - 适用于分类问题 - 生成线性决策边界 | - 假设数据服从正态分布 - 需要估计均值和方差 - 适用于类别数量较多的情况 |
Logistic 回归 | - 适用于分类问题 - 生成线性决策边界 | - 不假设数据服从正态分布 - 对类别数量较多的数据,效果不如 LDA |
LDA 适用于:
- 样本较少时,因为它能更稳定地估计参数。
- 数据服从正态分布时,LDA 会比 Logistic 回归表现更好。
Logistic 回归适用于:
- 类别分布不符合正态分布的情况,LDA 假设数据是正态的,如果不满足,Logistic 回归可能更合适。
- 类别完全分离的情况,Logistic 回归可能会出现参数无穷大的问题,而 LDA 没有这个问题。
4. LDA 的实际应用
案例:肿瘤分类
假设我们要根据肿瘤的某些特征(如大小、形状)来判断它是良性还是恶性。我们可以:
- 计算每种肿瘤的均值 μk (良性 vs. 恶性)。
- 计算整体方差 σ^2。
- 计算先验概率 πk (样本中良性和恶性肿瘤的比例)。
- 使用贝叶斯定理计算样本属于某个类别的概率,然后进行分类。
如果肿瘤数据是正态分布的,LDA 比 Logistic 回归更稳定。
5. LDA 的局限性
- 假设数据是正态分布的,如果数据的分布远离正态,则 LDA 可能表现不佳。
- 对类别方差的假设可能不成立,如果不同类别的方差不同(异方差),那么二次判别分析 (QDA) 可能更合适。
- LDA 处理分类变量的能力较弱,因为它依赖于正态分布。