1
模式识别与智能计算的MATLAB实现
1.7.2.1 5.2.1 主成分分析
5.2.1 主成分分析

主成分分析(Principal Component Analysis, PCA)是一种最古老的多元统计分析技术。Pearcon于1901年首次引入主成分分析的概念,Hotelling在20世纪30年代对主成分分析进行了发展。在计算机出现后,主成分分析得到广泛的应用。

主成分分析的中心思想是将数据降维,以排除信息共存中相互重叠的部分。它是将原变量进行转换,使少数几个新变量是原变量的线性组合,同时,这些变量要尽可能多地表征原变量的数据结构特征而不丢失信息。新变量互不相关,即正交。

在二维空间有一组数据点(x1i,y1i),这组数据在二维平面上的分布大致为一椭圆形。若拟将二维降为一维,实际上就是将二维空间的点投影到一维空间中的一条线上。如果没有约束条件,其投影方向将有无穷个。

主成分分析的基本思想是:在一维空间中的这条线必须包含原数据的最大方差。更准确地说,沿着这条线,使方差达到最大;其他方向,使方差达到最小。从几何学的观点看,这条线的方向应沿着椭圆的主轴;从代数学的观点看,这些点的分布可以表达成它们到其重心O距离的平方和

S2=|O12+|O22+…+|On2

其中,|Oi2为数据点重心到点i距离的平方。

现引入一直线L,6个数据在L上的投影分别为1′,2′,…,6′,如图5.2所示,那么|Oi2可以按下式分解

|Oi2=|Oi′2+|ii′|2

alt

图5.2 6个测试点在二维平面上的分布图

S2=|O1′2+|O2′2+…+|O6′2+|11′|2+|22′|2+…+|66′|2

其中,第一部分即为沿着直线方向的方差,必须使之达到最大;第二部分即为沿着其他方向的方差,必须使之达到最小。

为了标记方便,将原坐标原点放到重心O处,它可由一简单的转换来实现:

alt

为了实现上述思想,选定的第一个新变量μ1(主成分1)应沿着直线L方向,因为它可以表征最大的偏差量。第二个新变量μ2(主成分2)应与第一个新变量正交,即不相关。

在主成分算法中,将新变量表示为原变量的线性组合,同时二者必须正交。

alt

但是,由于a,b,c,d是任意常数,满足条件可有多组解,所以必须对其进行归一化处理,即a2+b2=1,c2+d2=1。

新坐标实际上是将原坐标旋转一个角度θ所得,因此

μ1=(cosθ)x1+(sinθ)x2

μ2=(-sinθ)x1+(cosθ)x2

用矩阵表示即为

alt

本征矢量(主成分1和主成分2)分别为

alt

而转换角度θ为

alt

其中,σi为方差。

类似地,对于m维空间中,可得m个新变量(主成分),它们是原变量的线性组合,且彼此正交。

alt

写成矩阵形式为

μ=Vx

对于某一主成分,相应本征矢量的值构成了组合式中原变量的系数。某一变量的载荷(loading)定义为该变量在组合式中的系数乘以相应于该主成分本征值的平方根。在实际中也称系数本身为载荷。载荷越大,说明此变量与那个主成分越“相同”,因而载荷可视为变量与主成分的相关性。试样相应于某主成分由组合式计算所得值称为得分(score)。

在m维空间中,可得m个主成分,在实际应用中一般可取前几个对偏差贡献大的主成分,这样可使高维空间的数据降到低维(如二维或三维)空间,非常利于数据的观察,同时损失的信息量还不会太大。取前P个主成分的依据根据下式确定

alt

一般推荐比率≥80%,并且当数据的来源不一及不同变量间的数值相差较大时,应作标准化处理,即变量与均值之差被标准差来除。