线性判别分析(LDA)的类内散度与类间散度优化过程
字数 1628 2025-11-11 03:36:40

线性判别分析(LDA)的类内散度与类间散度优化过程

题目描述

线性判别分析(Linear Discriminant Analysis, LDA)是一种监督学习的降维与分类算法,其核心思想是寻找一个投影方向,使得同类样本的投影点尽可能接近(类内散度小),不同类样本的投影点尽可能远离(类间散度大)。本题要求详细解释LDA如何通过数学定义类内散度与类间散度,并如何优化投影方向。


步骤1:定义类内散度与类间散度

假设有\(C\)个类别,第\(i\)类的样本集合为\(X_i\),样本总数为\(N\),第\(i\)类的样本数为\(N_i\)

  1. 类内散度(Within-class Scatter)
    • 衡量同类样本的离散程度。对每个类别\(i\),计算其协方差矩阵\(S_i\)

\[ S_i = \sum_{x \in X_i} (x - \mu_i)(x - \mu_i)^T \]

 其中$\mu_i$是第$i$类的均值向量。  
  • 总类内散度矩阵\(S_W\)为所有类别散度矩阵之和:

\[ S_W = \sum_{i=1}^C S_i = \sum_{i=1}^C \sum_{x \in X_i} (x - \mu_i)(x - \mu_i)^T \]

  1. 类间散度(Between-class Scatter)
    • 衡量不同类别均值之间的差异。定义全局均值向量\(\mu = \frac{1}{N}\sum_{i=1}^C N_i \mu_i\)
    • 类间散度矩阵\(S_B\)通过各类均值与全局均值的差异计算:

\[ S_B = \sum_{i=1}^C N_i (\mu_i - \mu)(\mu_i - \mu)^T \]


步骤2:投影与优化目标

设投影方向为\(w\)(单位向量),样本\(x\)投影后为\(w^T x\)。投影后的类内散度和类间散度变为标量:

  • 投影后类内散度:\(w^T S_W w\)
  • 投影后类间散度:\(w^T S_B w\)

LDA的目标是最大化类间散度与类内散度的比值(广义瑞利商):

\[J(w) = \frac{w^T S_B w}{w^T S_W w} \]


步骤3:求解最优投影方向

  1. 拉格朗日乘子法
    优化问题可转化为:

\[ \max_w \ w^T S_B w \quad \text{s.t.} \quad w^T S_W w = 1 \]

约束条件避免\(w\)的尺度影响比值。构建拉格朗日函数:

\[ L(w, \lambda) = w^T S_B w - \lambda (w^T S_W w - 1) \]

  1. 求导解方程
    \(w\)求偏导并令其为零:

\[ \frac{\partial L}{\partial w} = 2S_B w - 2\lambda S_W w = 0 \]

整理得广义特征值问题:

\[ S_B w = \lambda S_W w \]

  1. 特征值分解
    • \(S_W\)可逆,两边左乘\(S_W^{-1}\)

\[ S_W^{-1} S_B w = \lambda w \]

  • \(w\)\(S_W^{-1} S_B\)的特征向量,对应最大特征值的特征向量使\(J(w)\)最大。

步骤4:多类别扩展与降维

对于\(C\)类问题,最优投影方向不止一个。取\(S_W^{-1} S_B\)的前\(k\)个最大特征值对应的特征向量(\(k \leq C-1\)),组成投影矩阵\(W \in \mathbb{R}^{d \times k}\)\(d\)为原始维度)。降维后的数据为:

\[Z = X W \]


关键点总结

  1. LDA通过类内散度\(S_W\)和类间散度\(S_B\)量化类别可分性。
  2. 优化目标为广义瑞利商的最大化,转化为广义特征值问题。
  3. 多类别下,投影矩阵由前\(k\)个特征向量构成,降维后维度不超过\(C-1\)

通过这一过程,LDA在保留类别判别信息的同时实现降维,常用于分类预处理或特征提取。

线性判别分析(LDA)的类内散度与类间散度优化过程 题目描述 线性判别分析(Linear Discriminant Analysis, LDA)是一种监督学习的降维与分类算法,其核心思想是寻找一个投影方向,使得同类样本的投影点尽可能接近(类内散度小),不同类样本的投影点尽可能远离(类间散度大)。本题要求详细解释LDA如何通过数学定义类内散度与类间散度,并如何优化投影方向。 步骤1:定义类内散度与类间散度 假设有$C$个类别,第$i$类的样本集合为$X_ i$,样本总数为$N$,第$i$类的样本数为$N_ i$。 类内散度(Within-class Scatter) 衡量同类样本的离散程度。对每个类别$i$,计算其协方差矩阵$S_ i$: $$ S_ i = \sum_ {x \in X_ i} (x - \mu_ i)(x - \mu_ i)^T $$ 其中$\mu_ i$是第$i$类的均值向量。 总类内散度矩阵$S_ W$为所有类别散度矩阵之和: $$ S_ W = \sum_ {i=1}^C S_ i = \sum_ {i=1}^C \sum_ {x \in X_ i} (x - \mu_ i)(x - \mu_ i)^T $$ 类间散度(Between-class Scatter) 衡量不同类别均值之间的差异。定义全局均值向量$\mu = \frac{1}{N}\sum_ {i=1}^C N_ i \mu_ i$。 类间散度矩阵$S_ B$通过各类均值与全局均值的差异计算: $$ S_ B = \sum_ {i=1}^C N_ i (\mu_ i - \mu)(\mu_ i - \mu)^T $$ 步骤2:投影与优化目标 设投影方向为$w$(单位向量),样本$x$投影后为$w^T x$。投影后的类内散度和类间散度变为标量: 投影后类内散度:$w^T S_ W w$ 投影后类间散度:$w^T S_ B w$ LDA的目标是最大化类间散度与类内散度的比值(广义瑞利商): $$ J(w) = \frac{w^T S_ B w}{w^T S_ W w} $$ 步骤3:求解最优投影方向 拉格朗日乘子法 优化问题可转化为: $$ \max_ w \ w^T S_ B w \quad \text{s.t.} \quad w^T S_ W w = 1 $$ 约束条件避免$w$的尺度影响比值。构建拉格朗日函数: $$ L(w, \lambda) = w^T S_ B w - \lambda (w^T S_ W w - 1) $$ 求导解方程 对$w$求偏导并令其为零: $$ \frac{\partial L}{\partial w} = 2S_ B w - 2\lambda S_ W w = 0 $$ 整理得广义特征值问题: $$ S_ B w = \lambda S_ W w $$ 特征值分解 若$S_ W$可逆,两边左乘$S_ W^{-1}$: $$ S_ W^{-1} S_ B w = \lambda w $$ $w$为$S_ W^{-1} S_ B$的特征向量,对应最大特征值的特征向量使$J(w)$最大。 步骤4:多类别扩展与降维 对于$C$类问题,最优投影方向不止一个。取$S_ W^{-1} S_ B$的前$k$个最大特征值对应的特征向量($k \leq C-1$),组成投影矩阵$W \in \mathbb{R}^{d \times k}$($d$为原始维度)。降维后的数据为: $$ Z = X W $$ 关键点总结 LDA通过类内散度$S_ W$和类间散度$S_ B$量化类别可分性。 优化目标为广义瑞利商的最大化,转化为广义特征值问题。 多类别下,投影矩阵由前$k$个特征向量构成,降维后维度不超过$C-1$。 通过这一过程,LDA在保留类别判别信息的同时实现降维,常用于分类预处理或特征提取。