PCA学习过程(一、原理)

从SVM过来发现在选择特征的时候需要用到PCA,这样选的特征就有很好的区分度,更容易进行预测工作。
摸索了好几天,其实是拖延了好几天。
终于认为我行了。。写一下理解后的心得
首先膜拜下大神,看一下这个链接
https://zhuanlan.zhihu.com/p/77151308
上面写的很全面了,从基变换到协方差矩阵对角化说的很清楚。
我再捋一遍PCA求解步骤:
设有 m 条 n 维数据。
1、将原始数据按列组成 n 行 m 列矩阵 X;
2、将 X 的每一行进行零均值化,即减去这一行的均值;
3、求出协方差矩阵 C=1mXXTC=\frac{1}{m}XX^T
4、求出协方差矩阵的特征值及对应的特征向量;
5、将特征向量按对应特征值大小从上到下按行排列成矩阵,取前 k 行组成矩阵 P;
6、 Y=PX即为降维到 k 维后的数据。

反思几个问题:
1、为什么用协方差矩阵的特征向量来做投影矩阵?
这样可以使投影后的向量方差最大,协方差小。能保证投影后的向量协方差矩阵就是原向量协方差矩阵的对角化。这时候投影后向量协方差为0,方差都集中在对角线上。
2、为什么去均值。
去均值后才能保证协方差矩阵的元素等于向量的协方差和方差。

现在发现数学才是王道!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章