莆田网站建设外贸,清苑区建设网站找那家公司,部门子网站建设方案,WordPress实现登陆提醒一、动机一#xff1a;数据压缩 这节我将开始谈论第二种类型的无监督学习问题#xff0c;称为降维。有几个原因使我们可能想要做降维#xff0c;其一是数据压缩#xff0c;它不仅允许我们压缩数据使用较少的计算机内存或磁盘空间#xff0c;而且它可以加快我们的学习算法。…一、动机一数据压缩 这节我将开始谈论第二种类型的无监督学习问题称为降维。有几个原因使我们可能想要做降维其一是数据压缩它不仅允许我们压缩数据使用较少的计算机内存或磁盘空间而且它可以加快我们的学习算法。首先让我们知道降维是什么 假设我们有两个未知的特征长度用厘米表示用英寸表示同一物体的长度所以这明显是高度冗余因而我们希望将这个二维的数据降至一维如下图 下面的这个例子中 我们要将一个三维的特征向量降至成一个二维的特征向量过程与上面是类似的我们将三维向量投射到一个二维的平面上 这样的处理过程可以被用于把任何维度的数据降到任何想要的维度例如将1000维的特征降至100维
二、动机二数据可视化 在许多机器学习问题中如果我们能将数据可视化我们便能寻找到一个更好的解决方案降维可以帮助我们。 假使我们有许多不同国家的数据每一个特征向量都有50个特征如GDP人均GDP平均寿命等。如果要将这个50维的数据可视化是不可能的使用降维的方法将其降至2维我们便可以将其可视化了。 这样做的问题在于降维的算法只负责减少维数新产生的特征的意义就必须由我们自己去定义了
三、 主成分分析问题 主成分分析PCA是最常见的降维算法在PCA中我们要做的是找到一个方向向量Vector direction当我们把所有的数据都投射到该向量上时我们希望投射误差尽可能地小。方向向量是一个经过原点的向量而投射误差是从特征向量向该方向向量作垂线的长度 主成分分析问题的描述要将n维数据降至k维目标是找到向量使得总的投射误差最小
主成分分析与线性回归的比较
①主成分分析最小化的是投射误差Projected Error而线性回归最小化的是预测误差
②线性回归的目的是预测结果而主成分分析不作任何预测 左边的是线性回归的误差垂直于横轴投影右边是主成分分析的误差垂直于红线投影 PCA将n个特征降维到k个可以用来进行数据压缩如果100维的向量最后可以用10维来表示那么压缩率为90%但PCA 要保证降维还要保证数据的特性损失最小 PCA技术的一大好处是对数据进行降维的处理我们可以对新求出的主元向量的重要性进行排序根据需要取前面最重要的部分将后面的维数省去可以达到降维从而简化模型或是对数据进行压缩的效果同时最大程度的保持了原有数据的信息 PCA技术另一个很大的优点是它是完全无参数限制的在PCA的计算过程中完全不需要人为的设定参数或是根据任何经验模型对计算进行干预最后的结果只与数据相关与用户是独立的。但是这一点同时也可以看作是缺点如果用户对观测对象有一定的先验知识掌握了数据的一些特征却无法通过参数化等方法对处理过程 进行干预可能会得不到预期的效果效率也不高。
四、主成分分析算法
数据预处理 PCA 从n维减少到k维 第一步是均值归一化如上图所示 第二步是计算协方差矩阵covariance matrixΣ 第三步是计算协方差矩阵Σ的特征向量eigenvectors: 在 Octave 里我们可以利用奇异值分解singular value decomposition来求解[U, S, V] svd(sigma) 对于一个 n×n维度的矩阵上式中的U是一个具有与数据之间最小投射误差的方向向量构成的矩阵。如果我们希望将数据从n维降至k维我们只需要从U中选取前k个向量获得一个n×k维度的矩阵我们用表示然后通过如下计算获得要求的新特征向量
其中x是n×1维的因此结果为k×1维度
注我们不对方差特征进行处理
五、选择主成分的数量
主要成分分析是减少投射的平均均方误差
训练集的总方差为
我们希望在平均均方误差与训练集总方差的比例尽可能小的情况下选择尽可能小的k值
如果我们希望这个比例小于1%就意味着原本数据的偏差有99%都保留下来了如果我们能够保留95%的偏差便能非常显著地降低模型中特征的维度了
我们可以先令k1然后进行主要成分分析获得和然后计算比例是否小于1%。如果不是的话再令k2依此类推直到找到可以使得比例小于1%的最小k 值原因是各个特征之间通常情况存在某种相关性
还有一些更好的方式来选择k当我们在Octave中调用svd函数的时候我们可以获得三个参数[U, S, V] svd(sigma) 其中的S是一个n×n的矩阵只有对角线上有值而其它单元都是0我们可以使用这个矩阵来计算平均均方误差与训练集总方差的比例 也就是
六、重建的压缩表示 在前面的内容中我们讲到利用PCA算法可以把1000维的数据压缩100维特征所以如果这是一个压缩算法那么按理说应该可以回到原有的高维数据的一种近似所以给定的是100维怎么回到原来的1000维的呢 PCA算法做的事情如图中样本我们把这些样本投射到图中这个一维平面那么给定一个点我们怎么能回去到这个原始的二维空间呢x为2维z为1维相反的方程为。如图 七、主成分分析法的应用建议
假使我们正在对一张100×100像素的图片进行某个计算机视觉的机器学习即总共有10000 个特征 第一步运用主成分分析将数据压缩至1000个特征 第二步对训练集运行学习算法 第三步在预测时采用之前学习而来的将输入的特征x转换成特征 z然后再预测 注如果我们有交叉验证集和测试集也采用对训练集学习而来的。
错误的主成分分析情况
①将其用于减少过拟合减少了特征的数量这样做非常不好不如尝试正则化处理。原因在于主要成分分析只是近似地丢弃掉一些特征它并不考虑任何与结果变量有关的信息因此可能会丢失非常重要的特征然而当我们进行正则化处理时会考虑到结果变量不会丢掉重要的数据。
②默认地将主成分分析作为学习过程中的一部分这虽然很多时候有效果最好还是从所有原始特征开始只在有必要的时候算法运行太慢或者占用太多内存才考虑采用主要成分分析。