isomap降维算法--学习笔记

  1. 预备知识:
    1. 测地线与欧式距离:isomap降维算法--学习笔记_第1张图片蓝色虚线为两个点的欧式距离,蓝色实线为两个点的测地线距离。
    2. 测地线距离不好测量,因此采用另一种路径近似代表测地线距离。
      1. 两点相连:isomap降维算法--学习笔记_第2张图片
      2. 构建一个连通图,其中每个点只和距离这个点最近的k个点直接连接,和其他的点不直接连接。这样我们可以构建邻接矩阵,进而求出图中任意两个点的最短路径,代替测地线距离。
      3. 两点间的最短距离:isomap降维算法--学习笔记_第3张图片蓝色点代表两个点之间的测地线距离,红色线代表图中两点的最短路径,两者距离相近,因此我们使用后者替代前者。进而引出isomap算法。
  2. 流形:
    1. 传统欧式空间的度量难以用于真实世界的非线性数据,从而需要对数据的分布引入新的假设。流形学习假设所处理的数据点分布在嵌入于外维欧式空间的一个潜在的流形体上,或者说这些数据点可以构成这样一个潜在的流形体。
    2. 流形体实际上是一个二维分布的平面,在三维空间中流行体上点与点之间的距离不能使用传统的欧式空间的距离来计算,而应该用测地线距离代表这两个点的实际距离。
  3. isomap算法:
    1. 基于MDS算法,不同之处在于isomap用图中两点的最短路径距离替代了MDS中欧式空间的距离,这样能更好的拟合流行体数据。
    2. 算法流程
      1. 设置每个点最近邻点数k,构建连通图和邻接矩阵。
      2. 通过图的最短路径构建原始空间中的距离矩阵。
      3. 计算内积矩阵B。
      4. 对矩阵B进行特征值分解,获得特征值矩阵A和特征向量矩阵V 。
      5. 取特征值矩阵最大的前Z项及其对应的特征向量Z=(V_z A_z)^(1/2)。
    3. 高维空间的数据大多数都具有相同的特点,因此会嵌入到一个流行体中,而不是随机分散在高维空间中,高维数据相同特征的数目也就是流行体的维度,也就是我们降维的目标空间维数,这个维度需要一定的人为主观判断。同时,如果数据在高维空间中没有嵌入到一个流行体中。例如高维数据点分为10类,每一类都和其它类分散开,自己成为一簇,此时isomap算法就不太适合。如果数据是分类的,数据基本不会嵌入在一个流行体,isomap降维算法效果就比较差,但是数据是连续的,数据就很有可能嵌入在一个流行空间内,此时isomap算法的效果就会比较好。

你可能感兴趣的:(deeplearning,算法)