1降维的目的
降维是第二种机器学习算法。降维可以进行数据压缩,因而使用较少的计算机内存或磁盘空间。可以是让我们的机器学习算法运行速度变快。什么是降维?就是将数据降低维度,2维的变为1维,机器学习中有些数据集的数据的特征数量为1000多个,那么可以使用降维将数据的特征数目降低,从而使机器学习算法运行速度加快。举个例子我们收集的数据集,有很多特征
假设有两个位置额特征: 为长度单位为厘米,
用英寸表示为同一物体的长度。这两个特征是二维的,我们可以使用降维降成一维,如下所示
将数据从三维降为二维:那么就是将三维空间的点降至一个二维的特征向量。过程与上面是类似的,将三维向量投射到二维的平面上,使得所有数据都在一个平面上。如下所示
这样的处理过程可以被用于把任何维度的数据降到任何想要的维度,例如将1000维的特征降至100维。
此外,降维可以使数据可视化。在数据集中往往有很多数据,并且大多数数据都有很多的特征值,很难可视化,可视化可以帮我们更好的寻找一个解决方案。例如一个数据集每个实例都有50个特征,那么将该数据集可视化是不可能的,但是我们可以使用降维的方法使其降至二维。这样就可以进行可视化了。
2主成分分析算法
主成分分析(PCA)是最常见的降维算法。在PCA中,我们要做的是找到一个方向向量(Vector direction),当我们把所有的数据都投射到该向量上时,我们希望投射平均均方误差能尽可能地小。方向向量是一个经过原点的向量,而投射误差是从特征向量向该方向向量作垂线的长度。如下所示