python图像处理之PCA主成分分析

相关知识

参考链接
介绍一个PCA的教程:A tutorial on Principal Components Analysis ——Lindsay I Smith

1.协方差 Covariance

变量X和变量Y的协方差公式如下,协方差是描述不同变量之间的相关关系,协方差>0时说明 X和 Y是正相关关系,协方差<0时 X和Y是负相关关系,协方差为0时 X和Y相互独立。

在这里插入图片描述

协方差的计算是针对两维的,对于n维的数据集,可以计算C(n,2)种协方差。 n维数据的协方差矩阵的定义如下:
  在这里插入图片描述

Dim(x)表示第x维。

对于三维(x,y,z),其协方差矩阵如下,可看出协方差矩阵是一个对称矩阵(symmetrical),其对角线元素为每一维的方差:
 
在这里插入图片描述

2.特征向量和特征值

若有数λ和非零n维向量X,使得n×n的方阵A

AX = λX,即(λI-AX = 0时

则称λ是A的特征值,XA对应于λ的特征向量。可以这样理解:矩阵A作用在它的特征向量X上,仅仅使得X的长度发生了变化,缩放比例就是相应的特征值。特征向量只能在方阵中找到,而且并不是所有的方阵都有特征向量,并且如果一个n*n的方阵有特征向量,那么就有n个特征向量。一个矩阵的所有特征向量是正交的,即特征向量之间的点积为0,一般情况下,会将特征向量归一化,即向量长度为1。

3.PCA过程

第一步,获取数据,下图中的Data为原始数据,一共有两个维度,可看出二维平面上的点。

在这里插入图片描述

下图是Data在二维坐标平面上的散点图:
在这里插入图片描述

第二步,减去平均值,对于Data中的每一维数据分别求平均值,并减去平均值,得到DataAdjust数据。这里的DataAdjust其实就相当于协方差公式中的(Xi-X均)和(Yi-Y均)

第三步,计算DataAdjust的协方差矩阵

在这里插入图片描述

第四步,计算协方差矩阵的特征向量和特征值,选取特征向量
  在这里插入图片描述
在这里插入图片描述

特征值0.490833989对应的特征向量是(-0.735178656, 0.677873399),这里的特征向量是正交的、归一化的,即长度为1。

下图展示DataAdjust数据和特征向量的关系:

在这里插入图片描述

正号表示预处理后的样本点,斜着的两条线就分别是正交的特征向量(由于协方差矩阵是对称的,因此其特征向量正交),特征值较大的那个特征向量是这个数据集的主要成分(principle component)。通常来说,当从协方差矩阵计算出特征向量之后,下一步就是通过特征值,对特征向量进行从大到小的排序,这将给出成分意义的顺序。成分的特征值越小,其包含的信息量也就越少,因此可以适当选择。

如果数据中有n维,计算出n个特征向量和特征值,选择前k个特征向量,然后最终的数据集合只有k维,取的特征向量命名为FeatureVector。

在这里插入图片描述

这里特征值只有两个,我们选择其中最大的那个,1.28402771,对应的特征向量是

第五步,将样本点投影到选取的特征向量上,得到新的数据集

假设样例数为m,特征数为n,减去均值后的样本矩阵为DataAdjust(m×n),协方差矩阵是n×n,选取的k个特征向量组成的矩阵为EigenVectors(n × k)。那么投影后的数据FinalData为

在这里插入图片描述

这里是FinalData(10 × 1) = DataAdjust(10 × 2矩阵)×特征向量在这里插入图片描述

得到结果为

在这里插入图片描述

下图是FinalData根据最大特征值对应的特征向量转化回去后的数据集形式,可看出是将DataAdjust样本点分别往特征向量对应的轴上做投影:

在这里插入图片描述

如果取的k=2,那么结果是
在这里插入图片描述

可见,若使用了所有特征向量得到的新的数据集,转化回去之后,与原来的数据集完全一样(只是坐标轴旋转)。

  • PCA (Principal Component Analysis),是一种掌握事物主要矛盾的统计分析方法,它可以从多元事物中解析出主要影响因素,揭示事物的本质,简化复杂的问题。
  • 它可以用于图像矩阵降维,以降维后的矩阵为基础提取图像特征。当提取的图像特征维度比较高时,为了简化计算量以及存储空间,需要对这些高维数据进行一种程度的降维,并尽量保证数据不失真。
  • 此外,PCA算法还可应用于图像矩阵,便于后期识别算法并进一步加工,因为图像特征组含有的不明显的特征值会影响识别的精度。
  • 对于高维的向量,PCA方法求得一个k维特征的投影矩阵,这个投影矩阵可以将特征从高维降到低维。投影矩阵民可以叫作变化矩阵。新的低维特征必须每个维都正交,特征向量都是正交的。
    通过求样本矩阵的协方差矩阵,然后注出协方差矩阵的特征向量,这些特征向量就可以构成这个投影矩阵了。特征向量的选择取决于协方差矩阵的特征值大小。

——摘自百度百科

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值