目录
一 降维
原因1:由于可能存在许多冗余的特征量,需要减少特征量的数量。
方法:找出两个高度相关的特征量,将其在坐标系中绘制出来,然后找一个直线,能够拟合这些特征量从而形成新的特征量z1。用新的特征量代替原来的两个特征量。(完成从2维到1维的映射)
同样,对3D特征也可以降低到2维上
原因2: 数据可视化
原因:由于维度太高的时候,很难在图中绘制出来,所以为了更好的展示一些数据,就需要将特征降低维度以便能够以图标的形式展现出来
比如一个50维的国家GDP指标,很难去可视化。
但是当转换成2维之后,就可以用图表的方式来展现
二 主成分分析(PCA)
对于2维数据来说,PCA的目标是找到一条直线,使所有的样本投影到直线上之后,样本到直线的垂直距离之和最小(如下图所示的红色直线),即降低投影误差。
从二维到一维,需要找到使其投影误差最小的一个方向。同理,从3维到2维,需要找到两条直线(两个方向)来使投影误差最小
推广到n维到k维,需要找到k个直线(k个方向向量)以使数据点投影上去的投影误差最小。
三 PCA与线性回归的关系
联系:两者的优化目标都是最小化一个误差
区别:线性回归的目标使最小化样本到直线的平方误差,即垂直距离,而PCA是最小化样本到直线的最短距离(正交距离)
四 如何找到PCA的低维平面
1. 对数据执行特征缩放或均值归一化
2.计算样本的协方差Conv
3.用SVD分解计算Conv的特征向量
4.得到U矩阵的前K列并计算z
五 选择PCA的k值
首先给出一个度量标准,按下图所示公式进行计算,如果样投影平方误差被总方差所除的结果比百分之一小,则符合要求(也就是基本上矩阵的性质都得到了保留,没有因为降维而损失太多矩阵的信息)
具体步骤如下:
一句话总结:k从1 开始尝试。计算上述公式是否满足条件,直至得到满足条件的K
六 PCA应用-压缩复原
如果用了PCA进行数据压缩,如何得到还原的数据?
直接根据公式反推就可以了。
七 PCA的使用建议
不要一开始就用PCA降维,应该先用原始数据来训练学习模型,只有在学习模型需要的内存或硬盘空间太大的时候才考虑去使用PCA.
一句话总结:PCA主要技术是用了SVD分解,其目的主要是加速学习算法的计算过程