目录
在介绍 流形学习(Manifold learning) 之前,首先需要理解一个假设,就是流形假设(Manifold Hypothesis)。
这个假设认为,高维数据很多都是低维流形嵌入(embedding)于高维空间当中,
比如说三维空间里的各种平面或者曲面,虽然这些平面或者曲面处于三维空间中,但是平面或者曲面上的任意一点用两个坐标来表示就行,
比如说经纬度。
而流形学习的目标就是将高维空间当中的流形映射回低维空间当中去,且映射后的结果需要达到一定的要求,想象一下地球仪展开成平面世界地图的过程。
线性:
在大多数情况下,低维流形向高维空间当中的嵌入并不是以线性的方式嵌入的,下图就是一个非线性嵌入很直观的例子:
在深度学习的场景下,我们的目标其实是通过损失函数来体现的。 也就是说,通过都损失函数进行设计,神经网络能拟合出符合我们目标的映射,将嵌入到高维空间 当中的低维流形映射回低维空间。 但是这种映射可以看作对数据的修改吗? 我个人觉得不是的, 数据一旦产生了, 不管你用不用它,它就在那儿,静静地呆在高维空间里面,通过损失函数迭代出来的 各层权重也没有对数据做出修改,所修改的仅仅是人作为一个观测者在高维空间中的观测者坐 标系而已,换句话说数据没变,变的是人观测数据的角度以及方式。
流形学习是一种机器学习方法,旨在从高维数据中提取低维表示。
它可以用于数据降维、可视化和特征提取等任务。
流形是指具有局部欧几里得结构的空间,即可以用欧几里得距离来测量邻域内的点之间的距离。
在流形学习中,我们假设数据分布在一个流形上,
而不是在高维空间中随机分布。
流形学习的目标是找到一个低维流形,使得在这个流形上的距离尽可能地保持原始数据的结构和信息。
常见的流形学习方法包括主成分分析(PCA)、局部线性嵌入(LLE)、等距映射(Isomap)和t-SNE等。
流形学习(manifold learning)是机器学习、模式识别中的一种方法,在维数约简方面具有广泛的应用。它的主要思想是将高维的数据映射到低维,使该低维的数据能够反映原高维数据的某些本质结构特征。流形学习的前提是有一种假设,即某些高维数据,实际是一种低维的流形结构嵌入在高维空间中。流形学习的目的是将其映射回低维空间中,揭示其本质。以下图为例[1],左边是一个三维数据的分布,右边是降低到二维后的结果。我们可以发现二维的数据更能直观地表示其流形结构。
通过流形学习来实现降维的方法有很多,其基本思想也类似:假设数据在高维具有某种结构特征,希望降到低维后,仍能保持该结构。