内容纲要

欢迎转载,作者:Ling,注明出处:机器学习:原理简明教程13-降维与LDA,PCA,因子分解

 

一句话概括(LDA):就是要找到一个向量,通过它进行投影,投影后可分,为了得到该向量,提出了一个目标公式,分子是类间均值差,越大越好,分母是类内方差和,越小越好,对其进行求导求极值,就知道投影方向了。

 

一句话概括(PCA):通过构造目标函数为样本方差,然后求导求极值,发现结果就是要求ATA=λX的特征值和特征向量,取特征向量大的就是主成分。

 

LDA:Linear Discriminant Analysis 线性判别分析

  • 主要通过投影进行分类
  • 与主题模型的LDA(Latent Dirichlet Allocation)区别

 

LDA的思路

    假定两类数据线性可分,即:存在一个超平面,将两类数据分开。则:存在某旋转向量,将两类数据投影到1维,并且可分。也就是要找个向量,将所有点投影过去,达到可分的目的。

 

ml_PCA_001

注:

第二个图比第一个图更好区分

 

LDA的推导

假定旋转向量为w,将数据x投影到一维y,得到

ml_PCA_002

从而,可以方便的找到阈值w0,y≥w0时为C1类,否则为C2类。

 

什么样的W是最佳的,这里需要引入几个概念:

松散度:令C1有N1个点,C2有N2个点,投影前的类内均值和投影后的类内均值、松散度为:

ml_PCA_003

松散度特性:一般称为散列值,是样本松散程度的度量,值越大,越分散。

 

Fisher判别模型:

目标函数

ml_PCA_004

含义

分子表示类之间要尽量分开,越大越好

分母表示类内需要尽量聚拢,越小越好

 

其中

ml_PCA_005

ml_PCA_006

分子推导:

ml_PCA_007

分母类似

Sw, Sb可以通过样本计算得到(已知)

 

求解w,通过求导求极值:

ml_PCA_008

注:

  • 括号中为列乘以矩阵乘以行,得到的是一个数,数不影响方向
  • 最后的式子表示方向一致

 

Fisher判别投影向量公式

ml_PCA_009

注:

  • 括号中为数,所以方向一致,
  • 最后得到了w的解的表示,非常简单

 

线性判别分析(Fisher’s linear discriminant)

ml_PCA_010

注:

严格的说,它只是给出了数据的特定投影方向投影后,数据可以方便的找到阈值w0,y≥w0时为C1类,否则为C2类。

 

实例

使用LDA将样本投影到平面上

ml_PCA_011

 

LDA特点

  • 由LDA的计算公式看出,LDA是强依赖均值的。如果类别之间的均值相差不大或者需要方差等高阶矩来分类,效果一般。
  • 若均值无法有效代表概率分布,LDA效果一般。
  • LDA适用于类别是高斯分布的分类。

ml_PCA_012

 

PCA与LDA关系

LDA:分类性能最好的方向

PCA:样本点投影具有最大方差的方向

ml_PCA_013

主成分分析:PCA

目的

  • 将多个特征综合为少数几个代表性特征,既能够代表原始特征的绝大多数信息,组合后的特征又互不相关,降低相关性。
  • 降低问题复杂性

 

主成分分析的一种简单推导

1)主成分是要找一个方向,让点投影在上面方差最大

ml_PCA_014

2)

ml_PCA_015

3)假定样本是去均值化的;若没有去均值化,则计算m个样本的均值,将样本真实值减去均值。否则得到的方向会过原点

4)求目标函数

ml_PCA_016

5)解目标函数

ml_PCA_017

6)ATA是散列矩阵

7)最后的式子就是一个球特征向量和特征值得过程

 

PCA的应用

  • 特征提取
  • 数据压缩
  • 降维
  • 去噪

 

PCA复杂推导可以参考:《R语言统计建模与R软件》第9.1节,主成分分析

 

PCA和SVD关系

在求解SVD过程需要进行PCA,取最优特征

 

因子分析

《R语言统计建模与R软件》第9.2节,以后分析