PCA(principal compoment analysis)主成分分析,主要用在数据降维上,当数据的维数非常大的时候,无论是计算还是存储都是十分耗时的。因此,需要对数据进行降维处理,同时保持降维后的数据对于问题的描述能力。
一、主成分分析的引入
考虑一个简单的模型:
该实验的目的是记录绑在弹簧上的红色小球的运动轨迹,对于有先验知识的实验者来说,这个实验是非常容易的,因为球的运动轨迹只在x轴上发生,因此只需要在垂直于xy平面上架设摄像机即可。但是,在真实世界或者没有实验经验的人来说,是不可能这样假设的。一般来说,就需要记录下球的三维位置(X0,Y0,Z0)。可以通过不同角度的放置三个摄像机来实现(如图所示)。但是由于实验的限制,这三台摄像机的角度可能比较任意,并不是正交的。事实上,在真实世界中也并没有所谓的{x,y,z}轴,每个摄像机记录下的都是一幅二维图像,有其自己的空间坐标系,球的空间位置是由一组二维坐标记录的:[(xa,ya),(xb,yb),(xc,yc)]。经过一段时间后会产生非常多的数据,怎么样从这些数据中找到能够很好的描述球是沿着某个X轴运动的规律呢?怎么样将试验数据中的冗余变量剔除,划归到这个潜在的X轴上呢?同时数据中可能含有一定的噪音,比如摄像机的误差、弹簧的寿命等均会对数据产生影响。
PCA就是这样的一种有利工具。
二、PCA的数学推导过程
从线形代数的角度来看,PCA的目标就是使用另一组基去重新描述得到的数据空间。而新的基要能尽量揭示原有的数据间的关系。在这个例子中,沿着某轴上的运动是最重要的。这个维度即最重要的“主元”。PCA的目标就是找到这样的“主元”,最大程度的去除冗余和噪音的干扰。
1)标准正交基
为了引入推导,需要将上文的数据进行明确的定义。在上面描述的实验过程中,在每一个采样时间点上,每个摄像机记录了一组二维坐标(Xa,Ya),综合三台摄像机数据,在每一个时间点上得到的位置数据对应于一个六维列向量。