吴恩达《机器学习》第十四章:降维
十四、降维
14.1 应用一:数据压缩
本节问题:
- 降维是如何应用在数据压缩方面的?
~~~~~~ 数据投影,把三维数据降到二维,就是把它投影到一个z1,z2坐标的平面,用平面的点确定三位空间的点,即把三维坐标系的点用两个数字表示出来;
14.2 应用二:数据可视化
本节问题:
- 降维是如何对数据可视化起到作用的?
~~~~~~ 用一个不同的特征来表示它,加入这里有50个特征,我们用两个不同的特征来表示它们,相当于对于每个样本,我用2个数组表示50个数字;
对于降维在数据可视化中的应用,通常k选择2,3,从而方便画图展示;
14.3 主成分分析PCA
本节问题:
- 了解降维的一种核心方法——PCA;
- PCA的原理;
- PCA同线性回归的区别;
- 主成分分析的步骤;
~~~~~~
试图找一个投影(可以是平面可以是线)来把数据投影到上面,使投影误差(点到直线的距离)最小;
主成分分析降维的同时,也带来一定的误差,即与原始数据相比,数据可靠性降低;看取舍 ;
假设常数项为0,直线过原点更容易观察;
~~~~~~
向量;一个或者多个向量构成直线或者多维空间;找出若干向量,将数据投影到这k个向量展开的线性子空间上;k维平面,若是2维平面,距离就是原3维空间上的点到二维平面的距离;
PCA和线性回归的区别:
线性回归最小化的是实际y值到预测y值的平方差,而PCA最小化的是点到直线的距离的平方;
线性回归用一个x值来预测y值;
PCA将所有x值转换为别的值;
1、在进行PCA之前,先均值归一化和特征规范化;
2、数据预处理
3、特征缩放
4、主成分分析
协方差
正定矩阵
奇异值分解
7、用到的就是那个 U 矩阵,用于线性变换,得到向量z,z是k维向量,其实就是整个投影过程的变换;
14.4 重建的压缩表示
本节问题:
- 如何把降维后的数据恢复到以前维度;
原始数据的重构问题:
其实就是一个矩阵求逆的过程,不过求出来的Xapprox和以前的X会有一定的误差,因为存在投影误差;
而对于U矩阵,它是正交矩阵,转置等于逆,所以这里直接Xapprox=UreduceZ;
14.5 选择主成分的数量
本节问题:
- 如何选择主成分K的大小
K越大,Xapprox越接近原来的X,保留的方差性就越多;
方差被保留的百分比=>信息被保留的百分比;
使用SVD,能够避免反复大量计算;
14.6 主成分分析的应用建议
本节问题:
- PCA如何加快学习算法的执行效率;
在监督学习中对高维的样本使用主成分分析降维,比如10000维数据降到1000维,几乎不影响精确度,PCA后回归能够大幅度提高效率;
~~~~~~
**错误应用之一:使用PCA防止过拟合;**它可能效果会很好,但这不是解决过拟合的方式,因为它实际特征并没有减少(比如99%的方差被保留),还不如使用正则化;
建议:
- 不要一开始就使用PCA,最好先使用原始数据,只有当原始数据进行不下去了才考虑PCA;
- 与其考虑降低维度,不如想想如何优化算法;