提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
一、数据降维
研究大量高维数据时,需要从中提取出有意义的低维结构,便于进行进一步的数据分析,例如在日常生活中,人脑通过3000根听觉神经和10e6根视觉神经提取出少量与感知相关的特征。
之前常用的方法有PCA(Principal Component Analysis,主成分分析)和MDS(multidimensional scaling,多维尺度分析),但这些传统方法中的数据点和数据点之间的距离和映射函数都是定义在欧式空间中的,但实际上这些数据点可能不是分布在欧式空间中的,因此传统欧式空间的度量难以用于真实世界的非线性数据。
二、Isomap
Isomap(等距特征映射)方法是假设显示情况中非线性数据的分布位于内嵌欧式距离的流形体上,其中的关键在于数据点之间的距离用测地线距离来代替欧氏距离。
如下图所示两个用黑色圆圈表示的数据点,他们的欧式距离表示为虚线所示,测地线距离则为实曲线所示
三、构建Isomap的三个步骤
1.确定流形上的邻域
根据输入的数据点,对于某一点i,确定数据点集中的哪些点是其邻域点,有两个建档的方法,一个是确定邻域半径R,如果某一点j与i之间的距离度量(如欧式距离)小于R,则认为点j是i的邻域点,另一种方法是KNN,即找到k个与i点最近的点,即为i的邻域。这样,我们可以构建一个连通图,其中每个点只和距离这个点的邻域点直接连接,和其他的点不直接连接
2.构建距离矩阵
通过构建的Isomap图,求所有数据点之间的最短距离,可采用Dikstra算法或Floyd 算法,计算数据集中任意两点之间的距离,构建N×N的空间距离矩阵,第i行第j列代表第i个数据和第j个数据之间的距离
3.MDS算法
根据2中得到的空间距离矩阵,使用MDS算法得到最后的降维矩阵结果
总结
简单对Isomap算法进行了介绍,有兴趣可以看看Science源论文
参考论文
https://www.science.org/doi/abs/10.1126/science.290.5500.2319