数据分析:主成分分析(PCA)1

目录:

前言

怕什么真理无穷,进一寸有一寸的欢喜——胡适

学以致用,以学促用。

最近在分析数据,发现几大分析方法,PCA,ICA,CCA,又因为光学是没用的,还要有输出检验,因此,开始写这个系列的帖子了。

主成分分析

之前对PCA算法有过一段时间的研究,但没整理成文章,最近,又刚好再用这个做人脸重构,故趁热打铁整理下PCA算法的知识。
本文观点旨在抛砖引玉,有异议的大家可以再评论下面写出来,一起讨论。

主成分分析(PCA)是多元统计分析中用来分析数据的一种方法,它通过矩阵变换用一组数量更少的特征对样本进行描述,从而降低了数据的维度。它的本质实际上是K-L变换。PCA方法最著名的应用应该是在人脸识别中特征提取及数据降维,我们知道如果输入一张200*200大小的人脸图像,单单光是提取它的灰度值作为原始特征,则这个原始特征将达到40000维,这给后面的处理将带来极大的难度。著名的人脸识别Eigenface算法就是采用PCA算法,用一个低维子空间描述人脸图像,同时又保存了识别所需要的信息。
为了先让大家有一点儿直观的印象,先给出几张图。
1比如这样的一些数据点
这里写图片描述
是投影到绿色的线还是红色的线?
这里写图片描述
看完之后,大家心里应该有个答案。
下面先介绍下PCA算法的本质K-L变换

1K-L变换(卡洛南-洛伊(Karhunen-Loeve)变换):最优正交变换

它具有如下优点:

  • 一种常用的特征提取方法;
  • 最小均方误差意义下的最优正交变换;
  • 在消除模式特征之间的相关性、突出差异性方面有最优的效果。

离散K-L变换:对一个向量x用确定的完备正交归一向量基 u j 展开:

x = j = 1 y j u j

补充说明正交基的意思是说

U j U j 只在i=j的时候等于1,其他时候等于0.

也因此:
y j = y j u j T u j = u j T ( j = 1 y j u j ) = u j T x
上面的公式看懂的话,就可以继续下面的推导了,如果,实在看不懂,可以再看几遍。
现在我们希望降低维度,依旧是少用几个基来表示 x
也就是说:
x ^ = j = 1 d y j u j
但这么做,肯定会带来误差,我们希望误差最小化。
先把误差(均方误差意义下)表示出来:
ϵ = E [ ( x x ^ ) T ( x x ^ ) ]
= E [ ( j = d + 1 ( y j u j T ) ( j = d + 1 ( y j u j ) ]

= E [ d + 1 y j 2 ]

= d + 1 [ u j T E ( x x T ) u j ]
R = E x x T
= d + 1 [ u j T R u j ]
使其最小,通过langrange乘子法进行求解:
g ( u j ) = d + 1 [ u j T R u j ] d + 1 r j ( u j T u j 1 )
求偏导后得到:
R u j = r j u j
满足上市时,误差取得最小值。
即相关矩阵R的d个特征向量(对应d个特征值从大到小排列)为基向量来展开向量x时,其均方误差最小,为:
ϵ = d + 1 r j

因此,K-L变换定义:当取矩阵R的d个最大特征值对应的特征向量来展开x时,其截断均方误差最小,是剩余的最小的n-d个之和。这d个特征向量组成的正交坐标系称作x所在的D维空间的d维K-L变换坐标系, x在K-L坐标系上的展开系数向量y称作x的K-L变换。


小结一下:
k-l变换将均方误差转换成矩阵n-d个特征值最小也就是d个特征值最大这样的等价问题。
因此,可以将最大的d个特征值对应的特征向量构建成一个正交基,然后,对原数据进行变换,得到均方误差最小的降维表示。

2pca分析

主成分分析(PCA)的原理就是将一个高维向量x,通过一个特殊的特征向量矩阵U,投影到一个低维的向量空间中,表征为一个低维向量y,并且仅仅损失了一些次要信息。也就是说,通过低维表征的向量和特征向量矩阵,可以基本重构出所对应的原始高维向量。


参考
pca分析介绍

猜你喜欢

转载自blog.csdn.net/lvsehaiyang1993/article/details/80526362