嵌牛IT观察

数据降维方法介绍(三)

2022-03-27  本文已影响0人  科技小白不能再白了

数据降维方法介绍:

第一种方法:多维尺度分析算法(三)

姓名:何源   学号:21011210073  学院:通信工程学院

【嵌牛导读】多维尺度分析算法数学推导过程

【嵌牛提问】数学推导过程应用哪些和矩阵论有关的知识?

【嵌牛正文】

当我们已知美国十个城市'Atl','Chi','Den','Hou','LA','Mia','NYC','SF','Sea','WDC'之间的距离时,如下图所示

图1-美国十个城市之间的距离(单位:公里)

根据距离信息构建距离矩阵:D=[d_{ij} ]_{N\times N}

假设所有城市的相对坐标为Z=[z_{1}^T, z_{2}^T...z_{N}^T ]_{N\times 2}^T 且令,即相对坐标系的中心为坐标原点。

B=ZZ^T=[b_{ij}]_{N\times N}=[z_iz_{j}^T ]_{N\times N},称B为内积矩阵,则满足

\sum_{i=1}^N b_{i j}=\sum_{ =1}^N z_i z_{j}^T=(\sum_{i=1}^N z_i) z_{j}^T=0,\sum_{i=1}^N b_{i j}=\sum_{ =1}^N z_i z_{j}^T=z_i(\sum_{i=1}^N z_{j}^T)=0,

已知d_{ij}=||z_j-z_i||,两边平方得到

d_{ij}^2=||z_j-z_i||^2=||z_j||^2+||z_i||^2-2z_iz_{j}^T         (1)

b_{ij}=z_iz_{j}^T,则式(1)可以表示为

d_{ij}^2=b_{jj}+b_{ii}-2b_{ij}       (2)

对式(2)左边对i求和得

\sum_{i=1}^N d_{ij}^2=\sum_{i=1}^N b_{jj}+\sum_{i=1}^N b_{ii}-2\sum_{i=1}^N b_{ij}=Nb_{jj}+tr(B) (3)

对式(2)左边j求和得

\sum_{j=1}^N d_{ij}^2=\sum_{j=1}^N b_{jj}+\sum_{j=1}^N b_{ii}-2\sum_{j=1}^N b_{ij}=Nb_{ii}+tr(B) (4)

对式(2)左边ij求和得

\sum_{i=1}^N \sum_{j=1}^Nd_{ij}^2=\sum_{i=1}^N \sum_{j=1}^Nb_{jj}+\sum_{i=1}^N \sum_{j=1}^N b_{ii}-2\sum_{i=1}^N \sum_{j=1}^N b_{ij}=2Ntr(B) (5)

其中tr(B)=\sum_{i=1}^N b_{ii} =\sum_{j=1}^N b_{jj}表示矩阵的迹

由式(5)可得

tr(B)=\frac{1}{2N} \sum_{i=1}^N\sum_{j=1}^Nd_{ij}^2 (6)

将式(6)代入式(3)和式(4)计算

b_{ii}=\frac{1}{N}\sum_{j=1}^N d_{ij}^2-\frac{1}{2N^2}\sum_{i=1}^N \sum_{j=1}^N d_{ij}^2,b_{jj}=\frac{1}{N}\sum_{i=1}^N d_{ij}^2-\frac{1}{2N^2}\sum_{i=1}^N \sum_{j=1}^N d_{ij}^2 (7)

将式(7)代入式(2)得

b_{ij}=-\frac{1}{2}(d_{ij}^2-\frac{1}{N}\sum_{i=1}^Nd_{ij}^2--\frac{1}{N}\sum_{j=1}^Nd_{ij}^2+\frac{1}{N}\sum_{i=1}^N\sum_{j=1}^Nd_{ij}^2) (8)

通过距离矩阵D构建内积矩阵B

对内积矩阵B进行特征值分解,即

B=ZZ^T=Q\Lambda Q^T=Q\Lambda ^{\frac{1}{2}}\Lambda ^{\frac{1}{2}}Q^T=(Q\Lambda ^{\frac{1}{2}})(Q\Lambda ^{\frac{1}{2}})^T (9)

考虑到二维环境场景,通常选择最大的两个特征值构成新的对角矩阵\Lambda _{2}=diag(\lambda _1,\lambda _2),令Q_2表示相对应的特征向量矩阵,矩阵Z

可以表示为Z=Q_2\Lambda _2^{\frac{1}{2}} (10)

由此可以得到所有节点的相对坐标。

图2-十个城市相对坐标

通过MDS算法推导的公式得到所有节点的相对位置,通过仿真得以验证。

上一篇 下一篇

猜你喜欢

热点阅读