目录
一、算法概述
1.1算法简介
主成分分析(PCA)作为一种常用的数据降维技术,其主要目的是通过线性变换,将原始数据投影到一个新的坐标系中,使得数据在新坐标系中的方差尽可能大,从而减少数据的维度。即找到数据中方差最大的方向,将数据映射到这个方向上,形成第一个主成分。然后,在与第一个主成分正交的方向上找到第二大方差的方向,形成第二个主成分,依此类推。通过选择最大方差的前几个主成分,就可以实现对数据维度的降低。进行降维时,我们希望损失尽可能小,即我们希望降维的标准为:样本点到这个超平面的距离足够近,或者说样本点在这个超平面上的投影能尽可能的分开。
1.2算法涉及的相关知识
(1)向量的内积
A·B=|A||B|cos(a),即A向量在B向量的方向上的投影的长度
(2)散度
我们需要找到的超平面需满足最大可分性:样本点在这个超平面上的投影能尽可能分开,这个分开的程度我们称之为散度,散度可以采用方差或协方差来衡量(在机器学中,样本的方差较大时,对最终的结果影响会优于方差较小的样本)
(3)方差/协方差
方差用来形容单个维度的样本的波动程度,协方差指多个维度的样本数据的相关性,协方差公式为
其中Cov(X,Y)∈R,绝对值越大说明相关性越高。PCA的首要目标是让投影后的散度最大,因此我们要对所有的超平面的投影都做一次散度的计算,并找到最大散度的超平面。
1.3算法流程
输入: