主要内容

应用于非空间距离的经典多维尺度

方法执行经典的多维缩放cmdscale函数的统计和机器学习工具箱™。经典的多维尺度变换,也称为主坐标分析,取点间距离的矩阵,并创建点的配置。理想情况下,这些点可以在二维或三维空间中构建,它们之间的欧氏距离近似地再现了原始距离矩阵。因此,这些点的散点图提供了原始距离的视觉表示。

这个例子说明了多维尺度在空间距离以外的不同度量中的应用,并展示了如何构造点的配置来可视化这些不同。

这个例子描述了经典的多维尺度。的mdscale函数执行非经典MDS,有时比经典方法更灵活。非经典MDS描述在模多维标度的例子。

从非空间距离重建空间位置

假设你已经测量了一个动物物种的一些地方亚种群之间的遗传“距离”,或不同。你也知道他们的地理位置,想知道他们的基因和空间距离有多接近。如果它们这样做了,那就证明了亚种群间的杂交受地理位置的影响。

下面是各亚居群的空间位置,以及遗传距离矩阵的上三角,用同样的矢量格式生成pdist

X = [39.1 18.7;40.7 - 21.2;41.5 - 21.5;39.2 - 21.8;38.7 - 20.6;41.7 - 20.1;40.1 - 22.1;39.2 - 21.6);D = [4.69 6.79 3.50 3.11 4.46 5.57 3.00 ....2.10 2.27 2.65 2.36 1.99 1.74...3.78 4.53 2.83 2.44 3.79...1.98 4.35 2.07 0.53...3.80 3.31 1.47...4.35 - 3.82...2.57);

虽然这个矢量格式D是节省空间的,如果将距离重新格式化为方阵,通常更容易看到距离关系。

squareform (D)
ans =8×80 4.6900 6.7900 3.5000 3.1100 4.4600 5.5700 3.0000 4.6900 2.1000 2.2700 2.6500 2.3600 1.9900 1.7400 6.7900 2.1000 3.7800 4.5300 2.8300 2.4400 3.7900 3.5000 2.2700 3.7800 0 0 1.9800 4.3500 2.0700 0.5300 3.1100 2.6500 4.5300 1.9800 3.8000 3.3100 1.4700 4.4600 2.3600 2.8300 4.3500 3.8000 4.3500 3.8200 5.5700 1.9900 2.4400 2.0700 3.3100 4.3500 02.5700 3.0000 1.7400 3.7900 0.5300 1.4700 3.8200 2.5700 0

cmdscale识别两种格式中的任何一种。

[Y, eigvals] = cmdscale (D);

cmdscale的第一个输出,Y,是一个点的矩阵,创建的点之间的距离,复制的距离D.有8个物种,点(行Y)可能有多达8个维度(列Y).遗传距离的可视化依赖于仅仅使用二维或三维的点。幸运的是,cmdscale的第二个输出,eigvals,是一组已排序的特征值,其相对大小表明有多少维可以安全地使用。如果只有前两个或三个特征值是大的,那么只有这些点的坐标Y是需要精确复制的吗D.如果超过三个特征值是大的,那么就不可能找到一个好的低维的点配置,它也不容易形象化的距离。

[eigvals eigvals / max (abs (eigvals)))
ans =8×229.0371 1.0000 13.5746 0.4675 2.0987 0.0723 0.7418 0.0255 0.3403 0.0117 0.0000 0.4542 -0.0156 -3.1755 -0.1094

注意到只有两个大的正特征值,所以点的位型是由cmdscale可以在二维空间中绘制。这两个负特征值表明遗传距离不是欧几里得的,也就是说,没有配置的点可以复制D完全正确。幸运的是,负的特征值相对于最大的正的特征值来说是很小的,并且简化到的前两列Y应该相当准确。你可以通过观察二维构型和原始距离之间的距离误差来验证。

maxrelerr = max (abs (D - pdist (Y (: 1:2)))) / max (D)
maxrelerr = 0.1335

现在你可以比较由cmdscale到实际的地理位置。因为返回的配置cmdscale只有在平移、旋转和反射时是唯一的,基因位置可能与地理位置不匹配。它们的规模也将是错误的。但是你可以用普罗克汝斯忒斯命令匹配两组点在最小二乘意义上最好。

普罗克汝斯忒斯[D、Z] = (X, Y (: 1:2));情节(X (: 1) X (:, 2),“波”Z(: 1)、Z (:, 2),“路”);标签= num2str ((1:8) ');文本(X(: 1) + 0。,X(:, 2),标签,“颜色”“b”);文本(Z(: 1) + 0。,Z(:, 2),标签,“颜色”“r”);包含(“参考点以东的距离(公里)”);ylabel (“参考点以北的距离(公里)”);传奇({的空间位置构建基因位置的},“位置”“本身”);

图中包含一个坐标轴。轴包含18个类型为line, text的对象。这些对象代表空间位置,构造的遗传位置。

这个图显示了与实际空间位置在同一坐标下的重建点的最佳匹配。显然,遗传距离确实与亚种群之间的空间距离有密切的联系。

使用多维尺度来可视化相关矩阵

假设您已经为一组10个变量计算了以下相关矩阵。很明显,这些变量都是正相关的,有一些很强的两两相关。但有了这么多变量,要想对这10个变量之间的关系有个好的感觉并不容易。

ρ=...[1 0.3906 0.3746 0.3318 0.4141 0.4279 0.4216 0.4703 0.4362 0.2066;0.3906 1 0.3200 0.3629 0.2211 0.9520 0.9811 0.9052 0.4567 0;0.3746 0.3200 1 0.8993 0.7999 0.3589 0.3460 0.3333 0.8639 0.6527;0.3318 0.3629 0.8993 1 0.7125 0.3959 0.3663 0.3394 0.8719 0.5726;0.4141 0.2211 0.7999 0.7125 1 0.2374 0.2079 0.2335 0.7050 0.7469;0.4279 0.9520 0.3589 0.3959 0.2374 1 0.9657 0.9363 0.4791 0.0254;0.4216 0.9811 0.3460 0.3663 0.2079 0.9657 1 0.9123 0.4554 0.0011;0.4703 0.9052 0.3333 0.3394 0.2335 0.9363 0.9123 1 0.4418 0.0099;0.4362 0.4567 0.8639 0.8719 0.7050 0.4791 0.4554 0.4418 1 0.5272;0.2066 0 0.6527 0.5726 0.7469 0.0254 0.0011 0.0099 0.5272 1];

多维尺度通常被认为是一种仅使用成对距离(重新)构造点的方法。但它也可以用于比距离更一般的不同度量,以在空间上形象化通常意义上不是“空间点”的事物。由描述的变量是一个例子,你可以使用cmdscale绘制它们相互依赖关系的可视化表示。

相关性实际上是衡量相似性的,但它很容易转化为衡量不同。因为这里所有的相关性都是正的,你可以简单地使用

D = 1 -;

尽管其他选择也可能有意义。如果ρ如果包含负相关性,您将不得不决定,例如,-1的相关性是否比0的相关性表示更多或更少的不相似性,并相应地选择一个变换。

决定相关矩阵中的信息是否可以可视化是很重要的,也就是说,维数是否可以从10个减少到2个或3个。返回的特征值cmdscale给你一个决定的方法。在这种情况下,这些特征值的碎石图表明二维足以表示变量。(请注意,下图中的一些特征值是负的,但相对于前两个特征值较小。)

[Y, eigvals] = cmdscale (D);阴谋(1:长度(eigvals) eigvals,“bo - - - - - -”);线([1,长度(eigvals)], [0 0),“线型”':'“XLimInclude”“关闭”...“颜色”,(。)轴([1,length(eigvals),min(eigvals),max(eigvals)*1.1]);包含(的特征值数量);ylabel (“特征值”);

图中包含一个坐标轴。轴线包含2个线型对象。

在一组更独立的变量中,可能需要更多的维度。如果需要三个以上的变量,那么可视化就不是那么有用了。

返回的二维结构图cmdscale表示有两个相互关联最密切的变量子集,加上一个或多或少独立的变量。其中一个集群比较紧凑,而另一个相对松散。

标签= {' 1 '' 2 '“3”“4”“5”“6”“7”“8”“9”“十”};情节(Y (: 1), Y (:, 2),“软”);轴(max (max (abs (Y))) * (-1.1, 1.1, -1.1, 1.1));轴(“广场”);文本(Y (: 1), Y(:, 2),标签,“HorizontalAlignment”“左”);线([1],[0 0),“XLimInclude”“关闭”“颜色”,(。[0 0],[-1,1],“YLimInclude”“关闭”“颜色”,(。7 7 7])

图中包含一个坐标轴。轴包含13个类型为line, text的对象。

另一方面,结果是cmdscale下面的相关矩阵显示了一个非常不同的结构:在变量之间没有真正的组。相反,这是一种“循环”依赖性,每个变量都有一对“最近的邻居”,但与其余变量的相关性较差。

ρ=...[1 0.7946 0.1760 0.2560 0.7818 0.4496 0.2732 0.3995 0.5305 0.2827;0.7946 1 0.1626 0.4227 0.5674 0.6183 0.4004 0.2283 0.3495 0.2777;0.1760 0.1626 1 0.2644 0.1864 0.1859 0.4330 0.4656 0.3947 0.8057;0.2560 0.4227 0.2644 1 0.1017 0.7426 0.8340 0 0.0499 0.4853;0.7818 0.5674 0.1864 0.1017 1 0.2733 0.1484 0.4890 0.6138 0.2025;0.4496 0.6183 0.1859 0.7426 0.2733 1 0.6303 0.0648 0.1035 0.3242;0.2732 0.4004 0.4330 0.8340 0.1484 0.6303 1 0.1444 0.1357 0.6291;0.3995 0.2283 0.4656 0 0.4890 0.0648 0.1444 1 0.8599 0.3948;0.5305 0.3495 0.3947 0.0499 0.6138 0.1035 0.1357 0.8599 1 0.3100;0.2827 0.2777 0.8057 0.4853 0.2025 0.3242 0.6291 0.3948 0.3100 1]; [Y,eigvals] = cmdscale(1-Rho); [eigvals eigvals./max(abs(eigvals))]
ans =10×21.1416 1.0000 0.7742 0.6782 0.0335 0.0294 0.0280 0.0245 0.0239 0.0210 0.0075 0.0066 0.0046 0.0040 -0.0000 -0.0000 -0.0151 -0.0132 -0.0472 -0.0413
情节(Y (: 1), Y (:, 2),“软”);轴(max (max (abs (Y))) * (-1.1, 1.1, -1.1, 1.1));轴(“广场”);文本(Y (: 1), Y(:, 2),标签,“HorizontalAlignment”“左”);线([0 0],[1],“XLimInclude”“关闭”“颜色”,(。[-1,1],[0 0],“YLimInclude”“关闭”“颜色”,(。7 7 7])

图中包含一个坐标轴。轴包含13个类型为line, text的对象。

主成分分析与经典多维尺度的比较

当只有距离或不同之处可用时,多维尺度最常用于可视化数据。然而,当原始数据可用时,多维缩放也可以用作降维方法,通过将数据降为距离矩阵,使用创建新的点配置cmdscale,只保留这些点的前几个维度。这种多维尺度的应用很像主成分分析,实际上,当你调用cmdscale使用点之间的欧几里得距离,结果是相同的PCA,直到符号的变化。

n = 10;m = 5;X = randn (n, m);D = pdist (X,“欧几里得”);[Y, eigvals] = cmdscale (D);(电脑,分数,潜在的)= pca (X);Y
Y =10×5-1.4505 0.6602 0.8106 0.5834 0.5952 2.6140 -1.0513 -1.1962 0.7221 -0.2299 -2.2399 -1.6699 -0.7881 -0.6659 0.0398 -0.4956 0.2265 1.2682 -0.5123 -0.5702 0.1004 -2.3659 1.2672 0.4837 -0.2888 -2.5996 1.0635 -0.8532 0.1392 -0.1216 -1.5565 0.4215 -0.0931 0.2863 0.0299 0.4656 -0.6250 -0.7608 -0.3233 0.2786 2.3961 2.6933 -0.2020 -0.2572 -0.4374 2.7660-0.3529 0.5474 -0.4560 0.7044
分数
分数=10×5-1.4505 1.6602 -0.8106 -0.5834 -0.5952 2.6140 -1.0513 1.1962 -0.7221 0.2299 -2.2399 -1.6699 0.7881 0.6659 -0.0398 -0.4956 0.2265 -1.2682 0.5123 0.5702 0.1004 -2.3659 -1.2672 0.1337 0.2888 -2.5996 1.0635 0.8532 -0.1392 0.1216 -1.5565 0.4215 0.0931 -0.2863 -0.0299 0.4656 -0.6250 0.3233 -0.2786 2.3961 2.6933 0.2020 0.2572 0.47660 -0.3529-0.5474 0.4560 -0.7044

甚至非零特征值在比例因子下也是相同的。

[eigvals (1: m) (n - 1) *潜伏]
ans =5×236.9993 36.9993 21.3766 21.3766 7.5792 7.5792 2.2815 2.2815 1.5981 1.5981