机器学习系列手记(四):降维之线性判别分析与主成分分析

降维

线性判别分析与主成分分析

相同点:

      若将LDA扩展到高维情况,多类的类间散度矩阵不能按照二分类的情况进行的定义,此时可以得到与PCA类似的步骤,用于求解具有多个类别标签高维数据的降维问题。
      (1)计算数据集中每个类别的均指向量 μ j \mu_j μj 及总体均值 μ \mu μ 向量。
      (2)计算类内散度矩阵 S w S_w Sw,全局散度矩阵 S t S_t St,并得到类间散度矩阵 S b = S t − S w S_b=S_t-S_w Sb=StSw
      (3)对矩阵 S w − 1 S b S_{w}^{-1}S_b Sw1Sb进行特征值分解,将特征向量从大到小排序。
      (4)趋特征值前 d d d 大的对应的特征向量 w 1 , w 2 , . . . , w d w_1,w_2,...,w_d w1,w2,...,wd,通过一下映射将 n n n 维样本映射到 d d d
机器学习系列手记(四):降维之线性判别分析与主成分分析_第1张图片

不同点

      (1)从目标来看,PCA选择的是投影后数据方差最大的方向。由于它是无监督的,因此PCA假设方差越大,信息量越多,用主成分来表示原始数据可以去除冗余的维度,达到降维。而LDA选择的是投影后类内方差小、类间方差大的方向。其用到了类别标签信息,为了找到数据中具有判别性的维度,使得原始数据在这些方向上投影后,不同类别尽可能分开。
      举例说明:在语音识别领域,我们想从一段音频中提取出人的语音信号,这时可以使用PCA先进行降维,过滤掉一些固定频率(方差较小)的背景噪声。但如果我们的需求是从这段音频中区分出声音属于哪个人,那么就应该使用LDA对数据进行降维,使每个人的语音信号具有区分性。
      此外,在人脸识别领域,PCA和LDA都会被频繁使用。基于PCA的人脸识别方法也称为特征脸方法,将人脸图像按行展开形成一个高维向量,对多个人脸特征的协方差矩阵做特征值分解,其中较大特征值对应的特征向量具有与人脸相似的特征,故称为特征脸。然而由于其利用PCA进行降维,一般情况下保留的是最佳描述特征(主成分),而非分类特征。如果想要达到更好的人脸识别效果,应该用LDA方法对数据集进行降维,使得不同人脸在投影后的特征具有一定区分性。
      (2)从应用的角度看,可以掌握的一个基本原则是——对于无监督的任务使用PCA进行降维,对于有监督的任务则用LDA。
      PCA和LDA是典型的线性降维方法,对于非线性数据,可以通过核映射等方法对二者分别进行扩展以得到更好的降维效果。

你可能感兴趣的:(机器学习系列手记)