流形学习里面的等度量映射
-------------------------------2020.10.12更新-------------------------------
论文题目:非线性降维技术与可视化应用 —— 杜杰
-------------------------------2020.10.12更新-------------------------------
首先,流形学习解决的也是数据分布非线性的情况,而且要求数据的分布是流形,至于什么是流形呢,可以展开成一个平面的形体就是流形,具体定义可以看 维基百科 和 百度百科
其实非流形不常见,想举个例子还不好找,找了很久有个例子说的是 两个正方体共一条棱 这样的形体就是非流形,因为你不能把他展开成一个平面
讲上面的意思呢是说,非流形不常见,我们处理数据分布是非线性的情况,基本都可以把他看成是流形
流形学习有哪些新颖的点呢?
答:其实就只是在多维缩放(MDS)的基础上改了两个样本的距离度量,MDS用的是欧式距离,流形学习用的是测地距离,看流形学习的伪代码就看得出来这一点
上面讲了测地距离,什么是测地距离呀
答:下图的红线就是测地距离,黑线是我们熟悉的欧式距离,测地距离是以直代曲(微元)的思想,在宏观来看我是曲线,但是我缩小到很小的距离看就是直线,一截一截很短很短的直线连在一块形成一条曲线。
测地距离这个名字的来源,看我们的地球,我们日常生活中测我和你的距离都是直接欧氏距离拉一条直线是吧。那么我们测南北极点的距离还能拉一条直线吗,显然不能对吧。我们怎么做呢?是从极点开始找一个近的点拉直线测距离,继续从这个近的点拉直线,测距离,一直到另一个极点。所以叫做测地距离
我们会实现的时候也是 找到离当前点的最近邻点,以这两点的直线距离代替这两点的曲线距离。更新当前点,不断循环,直到走到目的点。
什么是多维缩放(MDS)?
答:他是一种降维方法,他的想法呢就是,我保证降维前后的两个样本空间,任意两个样本的距离保持不变(变化很小),那么我就认为我降维损失的信息很少。这儿距离度量用的是欧氏距离
大概的一个流程是:首先是想从原来的样本空间得到降维后的一个样本空间(原来是d×m,变到d1×m,d1<d),然后原来的样本集合有一个距离矩阵D。从这个距离矩阵D可以得到降维后的样本集合矩阵的內积B,知道了內积,那么对其对特征值分解加一些矩阵操作就可以得到我们想要的降维后的样本集合
至于这里面的距离矩阵D怎么算,如何从D得到B,怎么特征值分解呢,推导和公式自己看周志华的那本《机器学习》
总之一句话,多维缩放(MDS)就是一种通过原始样本距离矩阵 D 计算出降维后的样本矩阵內积B,通过对 B 进行特征值分解得到特征值和对应的特征向量,再利用特征值和特征向量计算出降维后样本的低维坐标
流形学习里面的等度量映射干了啥呢,就是在计算原始样本距离矩阵 D 上面做了点文章,原来你用欧氏距离度量,欧氏距离度量在非线性分布的数据上是不可靠的,那么我用在非线性分布的数据上可靠的测地距离不就解决了距离度量不准的问题。