目的
- Data Compression(数据压缩):减少内存所需空间 / 加快算法速度
- Data Visualization(数据可视化) (一般通过压缩至2个或3个特征)
Principal Component Analysis(PCA:主成分分析)
- PCA算法简介
寻找一个低维平面对数据进行投影,使得其投影误差最小。
- 对比线性回归
两者完全是不同的算法,线性回归目的是预测y,而PCA目的是降维,完全不考虑y
线性回归(左图):求得是垂直距离
PCA(右图):求的是正交距离
- Data preprocessing(数据加工)
- PCA算法
Σ(sigma):此处表示协方差矩阵
svd():奇异值分解
-
Reconstruction from compressed representation(压缩重现)
压缩数据 z = U_reduce^T *x
重现数据 x_approx = U_reduce * z (近似 x) -
选择主成分数量 k
方法一:
方法二:
7. Advices
- 仅需要在训练集上运行PCA完成映射,该映射可以直接应用到验证集和测试集
- 不能运用于防止过拟合(在变量保留99%或者很高的情况下可以使用,但不建议,因为PCA算法完全不考虑 y)
3 . 在实现PCA之前,先考虑你想通过数据x^(i)得到什么,如果它完全得不到你所需要的,再考虑运用PCA算法。