PCA主成分分析法原理

本文来源于李政轩老师的视频,这是一篇笔记,原视频在https://www.youtube.com/watch?v=G2NRnh7W4NQ

PCA算法,一个非常经典的数据降维算法,其思想是将高维数据投影至低维空间,并尽可能的不重复,尽量分散。



假设空间中有数据X[x1,x2,,,,,,,,xn],且服从zero mean,(即x中心为0,若不服从zero mean,取X-均值即可。)以二维为例,我们想要把全部的点投影到一条“直线”上,这样数据可以一维表示,我们有无数个直线方案可以选择,如图所示。

PCA主成分分析法原理_第1张图片 图1

 那么,到底该选择哪条直线呢?

我们想要尽量多的点可以不重复的投影到直线上,故想要更广阔的投影效果,因此用方差来衡量投影的效果,首先需要知道点投影至直线的距0点的长度(坐标)。

如图2所示,选取一个点X_{j}来分析其投影至直线v上的情况,投影至v上的向量可以用如下公式表示。

若取v为单位向量即||v||=1,那么投影下来的向量可以表示为\left \langle X_{j} ,v\right \rangleV,其中\left \langle X_{j} ,v\right \rangle既是向量的系数,又是投影至v上其距0点的长度。将长度公式整理一下,如最后一个公式所示。

PCA主成分分析法原理_第2张图片 图2

 

我们用方差来衡量长度(距离)的状况,公式如图3所示。经过化简,可以发现,C越大,方差越大,投影效果越好,于是,问题成了求C的最值。

PCA主成分分析法原理_第3张图片 图3

 

由于此公式建立在||v||=1的约束上,很容易想到用拉格朗日约束来求解C的最值,其中约束条件为||v||-0=0。于是有如下公式:

PCA主成分分析法原理_第4张图片 图4

 

突然看到了熟悉的公式,不难联想到特征值和特征向量。

于是有以下关于方差的推导,可以看到,方差的大小与C的特征值成正比,特征值越大,方差越大,投影至v的点越分散,因此选取C的若干个较大的特征值对应的特征向量,即为求得的主成分v。回忆以下,v就是一开始我们要找的最合适的那条“直线”。

(至此,你可能已经忘记C是谁了,它是图3的XX^{T}

 

 PCA主成分分析法原理_第5张图片

 最后,可以得到PCA求解的步骤。

(1)处理数据,将数据表示成m*n的矩阵;用原始数据减去均值,得到数据矩阵X;

(2)求^{}XX^{T}的特征向量和特征值。

你可能感兴趣的:(算法,机器学习)