PCA和LDA以及之间的区别

Season请您先思考:

    ·PCA与矩阵有什么关系?

    ·LDA与瑞利商有什么关系?

    ·PCA和LDA在降维世界里,谁是赢家?


一、PCA

1、思想

       主成分分析(Principal components analysis),是一种降维方法,在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用,需要我们找出数据里最主要的方面,然后来代替原始数据。比如我们希望将数据从二维降低到一维,那么这里就存在了一个映射关系,通常这个映射关系我们用矩阵表示。而我们的工作便是找到这个矩阵,这里我们要思考矩阵是用哪些向量来表示的呢?带着这个问题我们来解决二维数据降维到一维的具体问题。数据如下图。我们希望找到某一个维度方向,它可以代表这两个维度的数据。图中列了两个向量方向,U1和U2那么哪个向量可以更好的代表原始数据集呢?从直观上也可以看出,U1U2好。为什么答案是这样呢?u1

PCA和LDA以及之间的区别

我们是这样解释的,因为我们希望降维后 ,样本点在这个向量(或者是超平面)上的投影尽可能的分开,也就是说基于最大化投影方差。为什么标准是这个样子呢?请试想,如果投影后的数据点全都集中到一个地方了,那么很多点就无法看到了,也就是说失去了很多有效的信息,如果我们将数据点尽可能的分开让大家都能看到,这样的话,信息保留的会最多。


2、数学推导

(注意:基于方差最大化挨个找出w1w2,,,且各个向量彼此正交)

PCA和LDA以及之间的区别

PCA和LDA以及之间的区别

PCA和LDA以及之间的区别

PCA和LDA以及之间的区别

3、算法流程

输入:n维样本集D,要降维到的维数n'

输出:降维后的样本集D'

(1)对所有的样本进行中心化

(2)计算样本的协方差矩阵

(3)对协方差矩阵进行特征值分解

(4)取出最大的n'个特征值对应的特征向量,将这些特征向量进行标准化后,组成特征向量矩阵W

(5)对样本集中的每一个样本x,都乘以矩阵W进行转化

(6)得出输出样本集D'


4、PCA的弱点

(1)它是运用于非监督的情况下的,对于有类别的数据则无法分辨出来,造成负面的影响。

(2)它只适用于非线性的情况下。

上述两种情况可用下图形象表示:。

PCA和LDA以及之间的区别

对于上述两种弱点,我们是否可有办法补救呢?当然是有的!

首先我们解决第二个弱点,当遇到非线性的情况怎么办呢?

既然工作是降维,但为什么不可以先升再降呢?我们知道当数据是非线性的,可以先把数据集从n维映射到线性可分的高维N>n,然后再从N维降维到一个低纬度n',这里的维度之间满足n'<n<N。(PS:这里就是用到和支持向量机一样的核函数的思想。)

使用了核函数的主成分分析一般称之为核主成分分析(Kernalized PCA,简称KPCA)。通过在高维空间进行协方差的特征值分解,然后用和PCA一样的方法进行降维。一般来说,映射向量不用显式的计算,而是在需要计算的时候用过核函数完成。由于KPCA需要核函数的运算,因此它的计算量要比PCA大很多。


下面我们来解决PCA第一个弱点,当遇到数据样本是标签类别的,PCA就不适用了呀,所以我们引进监督学习下的降维算法LDA。


二、LDA

何为LDA,线性判别分析(Linear Discriminant Analysis,以下简称LDA),在模式识别领域有广泛应用(人脸识别等图像识别领域),注意,这里有必要将其与自然语言处理领域的LDA(Latent Dirichlet Allocation)区别开来。

1、LDA的思想

它是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的(PCA是不考虑样本类别输出的的无监督降维技术)。LDA的思想用一句话概括就是“投影后类间方差最大,类内方差最小”(有点像分类的感觉哈),也就是说数据投影在低维度空间后,投影点尽可能的接近,而不同类别的投影点群集的中心点彼此之间的离得尽可能大。举图说明:

PCA和LDA以及之间的区别

显然是右边的图更符合我们表述的思想吧。下面我们会用数学推导来表述LDA的思想(类间中心点距离大,类内方差小),在介绍推导之前,我们会引入一个数学知识点:瑞利商。


2、瑞利商(Rayleigh quotient)与广义瑞利商(genralized rayleigh quotient)

数学定义如下:它是指这样的一个函数:

                                                          PCA和LDA以及之间的区别

其中X为非零向量,而A为PCA和LDA以及之间的区别的Hermitan矩阵。而Hermtain有一个性质是这样的,它的最大值等于矩阵A最大的特征值,而最小值等于矩阵A的最小的特征值,也就是满足:

                                                          PCA和LDA以及之间的区别

当向量x是标准正交基时,即满足PCA和LDA以及之间的区别时,瑞利商退化为:PCA和LDA以及之间的区别

(知识点补充:(1)Hermitan矩阵就是满足共轭转置矩阵和自己相等的矩阵,即PCA和LDA以及之间的区别,但也有另一种情况,如果我们的矩阵A是实矩阵且PCA和LDA以及之间的区别,那么A也是Hermitan矩阵。(2)矩阵有实数矩阵和复数矩阵。转置矩阵仅仅是将矩阵的行与列对换,而共轭转置矩阵在将行与列对换后还要讲每个元素共轭一下。共轭你应该知道,就是将形如a+bi的数变成a-bi,实数的共轭是它本身。所以,实数矩阵的共轭转置矩阵就是转置矩阵,复数矩阵的共轭转置矩阵就是上面所说的行列互换后每个元素取共轭。


以上就是瑞利商的内容,现在我们再看看广义瑞利商。它也有一个函数形式如下:

                                                        PCA和LDA以及之间的区别

其中x为非零向量,而A,B为PCA和LDA以及之间的区别的Hermtian矩阵,且B为正定矩阵。那么它的最大值和最小值是什么呢?这里我们可以进行转化操作,令PCA和LDA以及之间的区别

则分母转化为:PCA和LDA以及之间的区别

则分子转化为:PCA和LDA以及之间的区别    

整理得:PCA和LDA以及之间的区别,所以广义瑞利商的最大值以及最小值就是矩阵PCA和LDA以及之间的区别的最大特征值和最小特征值。

(知识点补充:正定矩阵和半正定矩阵解释是啥?怎么判定呢?

(1)解释

首先看半正定数学表达式定义为:PCA和LDA以及之间的区别,其中X是向量,M是变换矩阵,那么MX意思是代表对向量X进行M变换,那么在余弦公式里还记得这样一个公式存在吗?PCA和LDA以及之间的区别,于是半正定矩阵意味着PCA和LDA以及之间的区别也就是说半正定代表一个向量经过它的变换后的向量与其本身的夹角小于等于90度。因为正定矩阵是严格大于零的,也就是就是小于90度。

(2)性质和判定

实对称矩阵M,如果对于任意的实非零向量x≠0有PCA和LDA以及之间的区别,则矩阵M称为正定的。
正定矩阵的性质与判别方法
a. 对称矩阵M正定的充分必要条件是M的n个特征值全是正数。
b.对称矩阵M正定的充分必要条件是M合同于单位矩阵E
c.对称矩阵M正定(半正定)的充分必要条件是存在n阶可逆矩阵U使PCA和LDA以及之间的区别
d.对称矩阵M正定,则M的主对角线元素均为正数。

e.对称矩阵M正定的充分必要条件是:M的n个顺序主子式全大于零。


3、二类LDA

PCA和LDA以及之间的区别

PCA和LDA以及之间的区别


4、多类LDA

PCA和LDA以及之间的区别

PCA和LDA以及之间的区别


5、LDA算法流程

(1)计算类内散度矩阵PCA和LDA以及之间的区别

(2)计算类间散度矩阵PCA和LDA以及之间的区别

(3)计算矩阵PCA和LDA以及之间的区别

(4)计算PCA和LDA以及之间的区别的最大的d个特征值和对应的d个特征向量(PCA和LDA以及之间的区别,PCA和LDA以及之间的区别,,,,,,PCA和LDA以及之间的区别)得到投影矩阵W

(5)对样本集中的每个样本特征PCA和LDA以及之间的区别转化为新的样本PCA和LDA以及之间的区别

(6)得出样本集D'

注意:LDA不仅可以降维,还可以用于分类。但用于分类时,这里有个前提就是各个类别的样本数据符合高斯分布,这样利用LDA进行投影后,可以利用极大似然估计计算各个类别投影数据的均值和方差,进而得到该类别高斯分布的概率密度函数。当一个新的样本到来后,我们可以将其投影,然后讲投影后的样本特征分别带入各个类别的高斯分布概率密度函数,计算它属于这个类别的概率,最大的概率对应的类别即为预测类别。


三、LDA和PCA对抗赛

1、相同点

(1)两者的作用是用来降维的

(2)两者都假设符合高斯分布

2、不同点

(1)LDA是有监督的降维方法,PCA是无监督的。

(2)LDA降维最多降到类别数K-1的维数,PCA没有这个限制。

(3)LDA更依赖均值,如果样本信息更依赖方差的话,效果将没有PCA好。

(4)LDA可能会过拟合数据。


转载信息

1、线性判别分析LDA原理总结

2、主成分分析PCA原理总结

3、李宏毅机器学习