MDS(多维尺度变换)降维算法

1.目标:

        将目标的(1\times m)维表示特征的向量降为(1 \times z)维,z<m

2.输入数据:

        \textbf{X}=[\textbf{x}_1^T,\textbf{x}_2^T,...,\textbf{x}_n^T],其中\textbf{x}_i为(1\times m)维表示第i个目标特征的向量,我们将每一个目标看作m维空间中的一个点,那么\textbf{x}_i为空间中第i个点的坐标。

3.输出数据:

        \textbf{Z}=[\textbf{z}_1^T,\textbf{z}_2^T,...,\textbf{z}_n^T],其中\textbf{z}_i为(1 \times z)维表示第i个目标降维后的特征向量。

4.基本思想

        将高维坐标中的点投影到低维空间中,保持点彼此之间的相似性尽可能不变。

5.方法

       5.1相似性定义

                在经典MDS降维算法中,点与点之间的相似性定义为两个点之间的欧几里得距离,在非经典MDS降维算法中,点与点之间的相似性定义为两个点之间的非欧几里得距离(其他距离),我们使用 ||\textbf{x}_i-\textbf{x}_j||^2   表示第i个点与第j个点在原高维空间上的欧式距离,||\textbf{z}_i-\textbf{z}_j||^2表示他们在低维空间上的距离。

       5.2推导降维后的特征矩阵\textbf{Z}

               (1)设降维后第i个点与第j个点的距离如公式(1):

                                 \begin{aligned} d_{ij}&= ||\textbf{z}_i-\textbf{z}_j||^2 \\&= ||\textbf{z}_i||^2+||\textbf{z}_j||^2-2\textbf{z}_i^T\textbf{z}_j \end{aligned}                                                        (1)

               (2)不失一般性,我们假设z维空间中的实例点是中心化(所有点在任意一维上的坐标和为0)的,即:

                                  \sum_{i=1}^{N} {z_i}=\textbf{0}                                                                                        (2)

                (3)公式(1)左右两边在i上求和:

                                 \begin{aligned} \sum_{i=1}^{N}d_{ij}&=\sum_{i=1}^{N} ||\textbf{z}_i||^2+N||\textbf{z}_j||^2-2\sum_{i=1}^{N}\textbf{z}_i^T\textbf{z}_j \\ &=\sum_{i=1}^{N} ||\textbf{z}_i||^2+N||\textbf{z}_j||^2-2\textbf{z}_j \sum_{i=1}^{N}\textbf{z}_i^T\\ &=\sum_{i=1}^{N} ||\textbf{z}_i||^2+N||\textbf{z}_j||^2 \end{aligned}                                (3)

                        同理,在j上求和

                                 \begin{aligned} \sum_{j=1}^{N}d_{ij}&=\sum_{j=1}^{N} ||\textbf{z}_j||^2+N||\textbf{z}_i||^2 \end{aligned}                                                        (4)

                 (4)公式(3)左右两边再在j上求和:

                                \begin{aligned} \sum_{i=1}^{N}\sum_{j=1}^{N}d_{ij}&=\sum_{i=1}^{N} \sum_{j=1}^{N}||\textbf{z}_i||^2+N\sum_{j=1}^{N}||\textbf{z}_j||^2 \\&= N\sum_{i=1}^{N}||\textbf{z}_i||^2+N\sum_{j=1}^{N}||\textbf{z}_j||^2 \\&= 2N\sum_{i=1}^{N}||\textbf{z}_i||^2 \end{aligned}                                        (5)

                (5)定义内积矩阵\textbf{B}=\textbf{Z}^T\textbf{Z},则b_{ij}=\textbf{z}_i^T\textbf{z}_j,根据公式(1)

                                \begin{aligned} &\textbf{z}_i^T\textbf{z}_j= -\frac{1}{2}({}d_{ij}-||\textbf{z}_i||^2-||\textbf{z}_j||^2)\end{aligned}                                                        (6)

                        根据公式(3)(4),

                                 \begin{aligned} ||\textbf{z}_i||^2 &=\frac{1}{N}\sum_{j=1}^{N}d_{ij}-\frac{1}{N}\sum_{j=1}^{N} ||\textbf{z}_j||^2\ \\||\textbf{z}_j||^2 &=\frac{1}{N}\sum_{i=1}^{N}d_{ij}-\frac{1}{N}\sum_{i=1}^{N} ||\textbf{z}_i||^2\end{aligned}                                                      (7)

                        所以,

                                \begin{aligned} \textbf{z}_i^T\textbf{z}_j&= -\frac{1}{2}({}d_{ij}-\frac{1}{N}\sum_{j=1}^{N}d_{ij}+\frac{1}{N}\sum_{j=1}^{N} ||\textbf{z}_j||^2-\frac{1}{N}\sum_{i=1}^{N}d_{ij}+\frac{1}{N}\sum_{i=1}^{N} ||\textbf{z}_i||^2)\\ &= -\frac{1}{2}({}d_{ij}-\frac{1}{N}\sum_{j=1}^{N}d_{ij}-\frac{1}{N}\sum_{i=1}^{N}d_{ij}+\frac{2}{N}\sum_{i=1}^{N} ||\textbf{z}_i||^2)\ \end{aligned}

                        根据公式(5)

                                \begin{aligned} \frac{2}{N}\sum_{i=1}^{N}||\textbf{z}_i||^2 =\frac{1}{N^2}\sum_{i=1}^{N}\sum_{j=1}^{N}d_{ij}\end{aligned}

                        所以

                                \begin{aligned} b_{ij}&=\textbf{z}_i^T\textbf{z}_j\\&= -\frac{1}{2}({}d_{ij}-\frac{1}{N}\sum_{j=1}^{N}d_{ij}-\frac{1}{N}\sum_{i=1}^{N}d_{ij}+\frac{1}{N^2}\sum_{i=1}^{N}\sum_{j=1}^{N}d_{ij}\)\ \end{aligned}

                (6)因为\textbf{B}是一个是对称矩阵,因此对矩阵\textbf{B}进行特征分解可以得到:

                                \textbf{B}=\textbf{V}\Lambda \textbf{V}^T

                         其中, \Lambda是的特征值矩阵, \textbf{V}是特征向量矩阵。所以

                                \textbf{Z}=\textbf{V}{\Lambda}^{\frac{1}{2}}

        5.3非经典MDS的求解方式 

                当距离标准是欧式距离的时候,可以直接求出解析解。但是当距离标准不是欧式距离的         时候,解析解不存在,需要采用优化算法的形式求解。我们的目标是使数据点在高维和低维            空间中的距离尽可能的相近,因此我们可以构造如下目标函数(损失函数):

                                J=\frac{1}{N^2}\sum_{i=1}^{N}\sum_{j=i+1}^{N}(||\textbf{z}_i-\textbf{z}_j||-d_{ij})

        通过最小化损失函数的值来求点在z维空间的分布。

6.MDS的优缺点

        6.1优点:

                (1) 不需要先验知识,计算简单

                (2) 保留了数据在原始空间的相对关系,可视化效果比较好

        6.2缺点:

                (1) 如果用户对观测对象有一定的先验知识,掌握了数据的一些特征,却无法通过参数化等方法对处理过程进行干预,可能会得不到预期的效果

                (2) 各个维度的地位相同,无法区分不同维度的重要性。

                   

                                

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值