主要内容gydF4y2Ba

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。gydF4y2Ba

cmdscalegydF4y2Ba

古典的多次元尺度構成法gydF4y2Ba

構文gydF4y2Ba

Y = cmdscale(D)gydF4y2Ba
[Y,e] = cmdscale(D)gydF4y2Ba
[Y,e] = cmdscale(D,p)gydF4y2Ba

説明gydF4y2Ba

Y = cmdscale(D)gydF4y2Baは,gydF4y2BangydF4y2Ba行gydF4y2BangydF4y2Ba列の距離行列gydF4y2BaDgydF4y2Baを受け入れ,gydF4y2BangydF4y2Ba行gydF4y2BapgydF4y2Ba列の構成行列gydF4y2BaYgydF4y2Baを返します。gydF4y2BaYgydF4y2Baの行はgydF4y2BapgydF4y2Ba次元空間のgydF4y2BangydF4y2Ba個の点の座標で,gydF4y2BaP < ngydF4y2Baの場合もあります。gydF4y2BaDgydF4y2Baがユ,クリッド距離の場合,点間の距離はgydF4y2BaDgydF4y2Baで与えられます。gydF4y2BapgydF4y2Baは最小空間の次元で,この最小空間に点間距離がgydF4y2BaDgydF4y2Baで与えられるgydF4y2BangydF4y2Ba個の点を組み込むことができます。gydF4y2Ba

[Y,e] = cmdscale(D)gydF4y2BaはgydF4y2BaY * Y 'gydF4y2Baの固定値も返します。gydF4y2BaDgydF4y2Baがユ,クリッドの場合,gydF4y2BaegydF4y2Baの最初のgydF4y2BapgydF4y2Ba個の要素は正で,残りはゼロです。gydF4y2BaegydF4y2Baの最初のgydF4y2BakgydF4y2Ba個の要素が残りのgydF4y2Ba(n - k)gydF4y2Baよりさらに大きい場合,gydF4y2BaYgydF4y2Baの最初のgydF4y2BakgydF4y2Ba個の列を,その点間距離がgydF4y2BaDgydF4y2Baの近似になるgydF4y2BakgydF4y2Ba次元の点として扱うことができます。これによって可視化のために有効に次元を削減し,たとえばgydF4y2BaK = 2gydF4y2Baにすることもできます。gydF4y2Ba

DgydF4y2Baはユ,クリッド距離行列である必要はありません。これがユ,クリッドではない,またはより一般的な非類似度行列の場合は,gydF4y2BaegydF4y2Baの要素には負になるものもあり,gydF4y2BacmdscalegydF4y2BaはgydF4y2BapgydF4y2Baを正の固有値の数として選択します。この場合,gydF4y2BapgydF4y2Baへ低減する,または次元数を削減することは,gydF4y2BaegydF4y2Baの負の要素の絶対値が小さい場合に限り,gydF4y2BaDgydF4y2Baの合理的な近似になります。gydF4y2Ba

[Y,e] = cmdscale(D,p)gydF4y2Baは,1 ~gydF4y2BangydF4y2Baの範囲にある正の整数gydF4y2BapgydF4y2Baも受け入れます。gydF4y2BapgydF4y2Baでは,埋め込むgydF4y2BaYgydF4y2Baの次元を指定します。gydF4y2BapgydF4y2Ba次元の埋め込みが可能である場合,gydF4y2BaYgydF4y2Baのサ@ @ズはgydF4y2BangydF4y2Ba行gydF4y2BapgydF4y2Ba列に,gydF4y2BaegydF4y2Baのサ@ @ズはgydF4y2BapgydF4y2Ba行1列になります。gydF4y2BaQ < pgydF4y2BaであるgydF4y2Ba问gydF4y2Ba次元の埋め込みのみが可能である場合,gydF4y2BaYgydF4y2Baのサ@ @ズはgydF4y2BangydF4y2Ba行gydF4y2Ba问gydF4y2Ba列に,gydF4y2BaegydF4y2Baのサ@ @ズはgydF4y2BapgydF4y2Ba行1列になります。gydF4y2BangydF4y2Baが非常に大きい場合にgydF4y2BapgydF4y2Baを指定すると,計算負荷が軽減される可能性があります。gydF4y2Ba

DgydF4y2Baは,完全非類似度行列として,またはgydF4y2BapdistgydF4y2Baで出力されるような上三角ベクトル形式で指定することができます。完全非類似度行列は,実数,対称で,対角成分がゼロで,その他の要素がすべて正値でなければなりません上三角形式の非類似度行列の要素は,実数で,正値でなけれなりません。gydF4y2BaDgydF4y2Baを対角成分が1,その他の成分が1より小さい要素の完全類似度行列として指定することもできます。gydF4y2BacmdscalegydF4y2BaはgydF4y2BaYgydF4y2Baに返される点間の距離がgydF4y2Basqrt(一维)gydF4y2Baに等しいかまたは近くなるように,類似度行列を非類似度行列に変換します。別の変換を使用する場合は,gydF4y2BacmdscalegydF4y2Baの呼び出しの前に類似度を変換しなければなりません。gydF4y2Ba

例gydF4y2Ba

すべて折りたたむgydF4y2Ba

この例では,gydF4y2BacmdscalegydF4y2Baを使用して,米国の10都市間の距離に基づく地図を作成する方法を示します。gydF4y2Ba

最初に,距離行列を作成し,gydF4y2BacmdscalegydF4y2Baに渡します。この例では,gydF4y2BaDgydF4y2Baは,完全な距離行列です。すなわ,これは,対称な正方行列であり,非対角要素が正で,対角要素はゼロです。gydF4y2Ba

城市=gydF4y2Ba...gydF4y2Ba{gydF4y2Ba“Atl”gydF4y2Ba,gydF4y2Ba“气”gydF4y2Ba,gydF4y2Ba“窝”gydF4y2Ba,gydF4y2Ba“侯”gydF4y2Ba,gydF4y2Ba“拉”gydF4y2Ba,gydF4y2Ba“米娅”gydF4y2Ba,gydF4y2Ba“纽约”gydF4y2Ba,gydF4y2Ba“科幻小说”gydF4y2Ba,gydF4y2Ba“海”gydF4y2Ba,gydF4y2Ba“WDC”gydF4y2Ba};D = [0 587 1212 701 1936 604 748 2139 2182 543;587 0 920 940 1745 1188 713 1858 1737 597;1212 920 0 879 831 1726 1631 949 1021 1494;701 940 879 0 1374 968 1420 1645 1891 1220;1936 1745 831 1374 0 2339 2451 347 959 2300;604 1188 1726 968 2339 0 1092 2594 2734 923;748 713 1631 1420 2451 1092 0 2571 2408 205;2139 1858 949 1645 347 2594 2571 0 678 2442;2182 1737 1021 1891 959 2734 2408 678 0 2329; 543 597 1494 1220 2300 923 205 2442 2329 0]; [Y,eigvals] = cmdscale(D);

次に,gydF4y2BacmdscalegydF4y2Baによって返された固有値を見てください。これらのうのいくかは負で,オリジナルの距離がユクリッドではないことを示します。これは,地球の曲率のためです。gydF4y2Ba

格式gydF4y2Ba短gydF4y2BaggydF4y2Ba[eigvals eigvals / max (abs (eigvals)))gydF4y2Ba
ans =gydF4y2Ba10×2gydF4y2Ba9.5821e+06 1 1.6868e+06 0.17604 8157.3 0.0008513 1432.9 0.00014954 508.67 5.3085e-05 25.143 2.624e-06 4.617e-10 4.8184e-17 -897.7 -9.3685e-05 -5467.6 -0.0005706 -35479 -0.0037026gydF4y2Ba

しかし,この場合,2 .の最大の正の固有値は,大きさにおいて,残りの固有値よりはるかに大きいです。したがって,負の固有値があるにもかかわらず,gydF4y2BaYgydF4y2Baの最初の2の座標はgydF4y2BaDgydF4y2Baの合理的な再生に十分です。gydF4y2Ba

Dtriu = D(find(tril(ones(10),-1)))';maxrelerr = max (abs (Dtriu-pdist (Y(: 1:2))))。/ max (Dtriu)gydF4y2Ba
Maxrelerr = 0.0075371gydF4y2Ba

ここに,地図として再構成された都市の位置のプロットがあります。構成の方位は任意です。gydF4y2Ba

情节(Y (: 1), Y (:, 2),gydF4y2Ba“。”gydF4y2Ba) text(Y(:,1)+25,Y(:,2),cities) xlabel(gydF4y2Ba“英里”gydF4y2Ba) ylabel (gydF4y2Ba“英里”gydF4y2Ba)gydF4y2Ba

图中包含一个轴对象。axis对象包含11个类型为line, text的对象。gydF4y2Ba

異なる尺度を使用することにより距離に対して点を次元削減すると再構成の品質がどのように変化するかを調べます。gydF4y2Ba

3次元空間に近い4次元空間の点を10個生成します。座標軸には沿っていない3次元部分空間に変換後の値が近づくように,点を線形変換します。gydF4y2Ba

rnggydF4y2Ba默认的gydF4y2Ba设置种子的重现性gydF4y2BaA = [normrnd(0,1,10,3) normrnd(0,0.1,10,1)];B = randn(4,4);X = a * b;gydF4y2Ba

ユ,クリッド尺度を使用して,距離に対してgydF4y2BaXgydF4y2Ba内の点を次元削減します。点間の距離を使用して,構成gydF4y2BaYgydF4y2Baを求めます。gydF4y2Ba

D = pdist(X,gydF4y2Ba“欧几里得”gydF4y2Ba);Y = cmdscale(D);gydF4y2Ba

2、3または4次元を使用した場合にいて,再構成の品質を比較します。gydF4y2Bamaxerr3gydF4y2Baの値が小さいので,はじめの3の次元により適切な再構成が行われることがわかります。gydF4y2Ba

maxerr2 = max(abs(pdist(X)-pdist(Y(:,1:2))))gydF4y2Ba
Maxerr2 = 0.1631gydF4y2Ba
maxerr3 = max(abs(pdist(X)-pdist(Y(:,1:3))))gydF4y2Ba
Maxerr3 = 0.0187gydF4y2Ba
maxerr4 = max(abs(pdist(X)-pdist(Y)))gydF4y2Ba
Maxerr4 = 9.6589e-15gydF4y2Ba

“cityblock”gydF4y2Ba尺度を使用して,距離に対してgydF4y2BaXgydF4y2Ba内の点を次元削減します。点間の距離を使用して,構成gydF4y2BaYgydF4y2Baを求めます。gydF4y2Ba

D = pdist(X,gydF4y2Ba“cityblock”gydF4y2Ba);[Y,e] = cmdscale(D);gydF4y2Ba

再構成の品質を評価します。gydF4y2BaegydF4y2Baには大きい絶対値の負の要素が少なくとも1つ含まれているので,再構成の品質は低い可能性があります。gydF4y2Ba

max(pdist(X)-pdist(Y)))gydF4y2Ba
Maxerr = 9.0488gydF4y2Ba
分钟(e)gydF4y2Ba
Ans = -5.6586gydF4y2Ba

参考文献gydF4y2Ba

[1] Seber, g.a.f.多元观测。霍博肯,新泽西州:约翰·威利父子公司,1984年。gydF4y2Ba

バ,ジョン履歴gydF4y2Ba

R2006aより前に導入gydF4y2Ba