MDS多维缩放详解

MDS(多维缩放)是一种经典的降维方法,旨在保持原始空间中样本之间的距离。通过特征值分解和选取最大的特征值,实现从高维到低维的转换。尽管MDS不能完全还原原始空间,但在数据降维和距离保持上有其价值。适用于某些流形空间的降维,但对于非欧几里得空间,如Swiss Roll,可能需要如Isomap等优化方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
一开始先上两幅图是因为通过上图我们可以对降维有一个直观形象的了解。降维亦称“维数约简”,是经过某种数学变换将原始高维属性空间变为一个低维“子空间”。在这个子空间中样本密度大幅度提高,距离计算也变得更为容易。为什么能进行降维?因为在很多时候,人们观测或收集到的数据样本虽是高维的,但是与学习任务密切相关的也许仅是某个低维分布,即高维空间中的一个低维嵌入。上图给出了一个直观的例子,原是高维空间中的样本点,在这个低维嵌入子空间中更容易进行学习。

这篇我们讲的是MDS(Mutiple Dimensional Scaling)多维缩放这样一种经典的降维方法,该方法的核心便是要求原始空间中样本之间的距离在低维空间中得以保持。怎么理解这句话呢,举个简单的例子:就比如说我们要画一张地图,现实中的地球是三维立体的,那么计算现实中个位置间的距离需在三维坐标下进行,但是现在我们要画一张二维的平面地图,当然我们保持其二维坐标中各个位置间的距离要和在三维坐标系下的一致,这就是高维距离与低维距离的一致性。接下的公式推导会让我们对该方法的核心有更深刻的理解。

我们先假定一个样本数量为n,特征维数为m的样本空间D∈Rn×mD \in R^{n \times m}DRn×m,这n个样本在原始空间中的距离矩阵为Dist∈Rn×nD i s t \in R^{n \times n}DistRn×n,其中第i行j列的元素distijd i s t_{i j}distij为样本xi到xj的距离。我们的目标是获得样本在d’维空间的表示Z∈Rn×d′Z \in R^{n \times d^{\prime}}ZRn×d,d’≤\leqd,且任意两个样本在d’空间中的欧式距离等于原始空间中的距离。那么,我们设定等式:
∥zi−zj∥=distij\left\|z_{i}-z_{j}\right\|=d i s t_{i j}zizj=distij在此基础上求得降维后的样本空间Z。

现在我们已知的信息或者说是整个MDS算法的输入是原始的距离矩阵Dist,约束条件是∥zi−zj∥=distij\left\|z_{i}-z_{j}\right\|=d i s t_{i j}zizj=distij,接下要做的就是如何通过已知输入和约束条件求得Z。
首先,我们计算一个降维后样本的内积矩阵B,令B=ZZT∈Rn×nB=Z Z^{T} \in R^{n \times n}B=ZZTRn×n,B中每个元素的值为:bij=∑k=1d′zikzjk b_{i j}=\sum_{k=1}^{d'} z_{i k} z_{j k} bij=k=1dzikzjk接着我们计算一个降维后关于样本空间的距离矩阵D:
        dij2=(zi−zj)2=∑k=1d′(zik−zjk)2=∑k=1d′zik2+zjk2−2zikzjk=bii+bjj−2bij   (1) \begin{aligned}         d_{i j}^{2} &=\left(z_{i}-z_{j}\right)^{2} \\ &=\sum_{k=1}^{d'}\left(z_{i k}-z_{j k}\right)^{2} \\ &=\sum_{k=1}^{d'} z_{i k}^{2}+z_{j k}^{2}-2 z_{i k} z_{j k} \\ &=b_{i i}+b_{j j}-2 b_{i j}   (1) \end{aligned}         dij2=(zizj)2=k=1d(zikzjk)2=k=1dzik2+zjk22zikzjk=bii+bjj2bij   而根据我们的约束条件,有dij2=distij2    (2)d_{ij}^{2}=dist_{ij}^{2}    (2)dij2=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值