博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
机器学习降维算法一:PCA(主成分分析算法)
阅读量:4287 次
发布时间:2019-05-27

本文共 1364 字,大约阅读时间需要 4 分钟。

引言:

领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达形式。 y是数据点映射后的低维向量表达,通常y的维度小于x的维度(当然提高维度也是可以的)。f可能是显式的或隐式的、线性的或非线性的。

目前大部分降维处理向量表达的数据,也有一些降维算法处理高阶张量表达的数据。之所以使用降维后的数据表示是因为在原始的高维空间中,包含有冗余信息以及噪音信息,在实际应用例如图像识别中造成了误差,降低了准确率;而通过降维,我们希望减少所造成的误差,提高识别(或其他应用)的精度。又或者希望通过降维算法来寻找数据内部的本质结构特征。

在很多算法中,降维算法成为了数据预处理的一部分,如PCA。事实上,有一些算法如果没有降维预处理,其实是很难得到很好的效果的。

 

:我写的东西有一些口语化,而且受限于网页blog的编辑功能,很多地方可能有一些简单。

主成分分析算法(PCA)

Principal Component Analysis(PCA)是最常用的线性降维方法,它的目标是通过某种线性投影,将高维的数据映射到低维的空间中表示,并期望在所投影的维度上数据的方差最大,以此使用较少的数据维度,同时保留住较多的原数据点的特性。

通俗的理解,如果把所有的点都映射到一起,那么几乎所有的信息(如点和点之间的距离关系)都丢失了,而如果映射后方差尽可能的大,那么数据点则会分散开来,以此来保留更多的信息。可以证明,PCA是丢失原始数据信息最少的一种线性降维方式。(实际上就是最接近原始数据,但是PCA并不试图去探索数据内在结构)

n维向量w为目标子空间的一个坐标轴方向(称为映射向量),最大化数据映射后的方差,有:

其中m是数据实例的个数, xi是数据实例i的向量表达, x拔是所有数据实例的平均向量。定义W为包含所有映射向量为列向量的矩阵,经过线性代数变换,可以得到如下优化目标函数:

 

 

 其中tr表示矩阵的迹,A是数据协方差矩阵。

容易得到最优的W是由数据协方差矩阵前k个最大的特征值对应的特征向量作为列向量构成的。这些特征向量形成一组正交基并且最好地保留了数据中的信息。

PCA的输出就是Y = W‘X,由X的原始维度降低到了k维。

 

PCA追求的是在降维之后能够最大化保持数据的内在信息,并通过衡量在投影方向上的数据方差的大小来衡量该方向的重要性。但是这样投影以后对数据的区分作用并不大,反而可能使得数据点揉杂在一起无法区分。这也是PCA存在的最大一个问题,这导致使用PCA在很多情况下的分类效果并不好。具体可以看下图所示,若使用PCA将数据点投影至一维空间上时,PCA会选择2轴,这使得原本很容易区分的两簇点被揉杂在一起变得无法区分;而这时若选择1轴将会得到很好的区分结果。

 

Discriminant Analysis所追求的目标与PCA不同,不是希望保持数据最多的信息,而是希望数据在降维后能够很容易地被区分开来。后面会介绍LDA的方法,是另一种常见的线性降维方法。另外一些非线性的降维方法利用数据点的局部性质,也可以做到比较好地区分结果,例如LLE,Laplacian Eigenmap等。以后会介绍。

 

引用请注明: 

转载地址:http://qqxgi.baihongyu.com/

你可能感兴趣的文章
【性感玫瑰&热门Win7主题】
查看>>
【秋色动人xp情侣主题】
查看>>
【Win7英文系统显示中文乱码】
查看>>
【IE10打开链接的默认启动方式】
查看>>
【等爱的女孩win7热门主题】
查看>>
【php:根据中文裁减字符串函数方法】
查看>>
【重装xp系统必然要知道的五个设置】
查看>>
【林间美女XP热门主题】
查看>>
【4招搞定注册表键值快速定位】
查看>>
【唯美童话森林xp主题】
查看>>
【Win7系统的电源设置功能】
查看>>
【了解Linux系统中U盘挂载或卸载的知识】
查看>>
【Tenda腾达路由器限速图解教程】
查看>>
【梦幻童年win7热门主题】
查看>>
【巧破网络限制 重享网络自由】
查看>>
【win7小技巧让你的声音设置随个性】
查看>>
【AngelaBaby杨颖性感公主XP主题】
查看>>
【解决不能在Win8中添加功能的方法】
查看>>
【解决Win8系统下无法彻底关机的问题】
查看>>
【清纯可爱女孩win7主题】
查看>>