ユークリッド距離が高次元で適切なメトリックではないのはなぜですか?


240

「ユークリッド距離は、高次元では良い距離ではない」と読みました。この声明は次元の呪いと関係があると思いますが、正確には何ですか?また、「高次元」とは何ですか?100個の特徴を持つユークリッド距離を使用して階層的クラスタリングを適用しています。このメトリックを使用しても「安全」な機能はいくつまでありますか?



5
これはおそらく基本的すぎるでしょう。ユークリッドメトリックのテーマに関する一連のブログ投稿を高次元で作成し、それが最も近い一致のベクトル空間の検索に与える影響について説明しました。blogs.msdn.com/b/ericlippert/archive/tags/…–
エリック

1
@HorstGrünbuschのリファレンスについては、以下の回答をご覧ください。距離の分散は、平均に比べて小さくなります。そのため、ある時点で、しきい値、重み、順序の選択に問題が生じます。また、数値精度の問題も発生する可能性があります。しかし、データがまばらである場合、それは本質的な次元がはるかに低い可能性があります。
アノニムース

3
「高次元」は誤解を招く用語のようです-一部の答えは9〜12を「高次元」として扱っていますが、他の分野では高次元とは数千または100万次元を意味します(たとえば、各次元は辞書内の単語の頻度です)、100次元は高ではなく低と呼ばれます。
ペテルス

2
この質問は実際に何らかのコンテキストで行うことができます。 何が良くない?
サボルチ

回答:


243

高次元での非直感的な結果の素晴らしい要約は、ワシントン大学のペドロ・ドミンゴスによる「機械学習について知っておくべきいくつかの有用なもの」から来ています。

[O] 3次元の世界に由来する直感は、高次元の世界には適用されないことがよくあります。高次元では、多変量ガウス分布の質量の大部分は平均に近くありませんが、その周囲のますます「シェル」にあります。高次元のオレンジの大部分は果肉ではなく皮膚にあります。高次元のハイパーキューブに一定数のサンプルが均一に分布している場合、いくつかの次元を超えると、ほとんどのサンプルは最も近いものよりもハイパーキューブの面に近くなります。そして、超立方体に内接することによって超球体を近似すると、高次元では、超立方体のほとんどすべての体積が超球体の外側にあります。これは機械学習にとって悪いニュースです。あるタイプの形状は、多くの場合、別のタイプの形状で近似されます。

この記事には、機械学習のための多くの知恵の真珠もたくさんあります。

機械学習以外のアプリケーションとして、最近傍検索があります。関心のある観測値が与えられると、その最近傍を検索します(これらはクエリポイントからの距離が最小であるという意味で)。しかし、高次元では、奇妙な現象が発生します。最も近いポイントと最も遠いポイントの比率は1に近づきます。つまり、ポイントは本質的に互いに均一に離れます。この現象は、さまざまな距離メトリックで観察できますが、ユークリッドメトリックでは、たとえばマンハッタン距離メトリックよりも顕著です。最近傍検索の前提は、「近い」ポイントは「遠い」ポイントよりも関連性が高いことですが、すべてのポイントが本質的に互いに均一に離れている場合、区別は意味がありません。

Charu C. Aggarwal、Alexander Hinneburg、Daniel A. Keim、「高次元空間における距離計量の驚くべき挙動について」より:

[ケビン・バイエル、ジョナサン・ゴールドスタイン、ラグー・ラマクリシュナン、ウリ・シャフト、「「最も近い隣人」が意味を持つのはいつか?」]では、データ分布に関する特定の合理的な仮定の下で、最も近い隣人と最も遠い隣人の距離の比さまざまなデータ分布と距離関数の場合、高次元空間の特定のターゲットへのほぼ1になります。このような場合、異なるデータポイントまでの距離のコントラストが存在しないため、最近傍の問題は不明確になります。このような場合、近接の概念でさえ定性的な観点からは意味がない場合があります。これは、高次元アルゴリズムのパフォーマンス低下よりもさらに根本的な問題です。

...多くの高次元インデックス構造およびアルゴリズムは、2次元または3次元空間アプリケーションでの従来の使用法の自然な拡張として[E]ユークリッド距離メトリックを使用します。...このペーパーでは、kの値に対するノルムの依存性を分析する際に、驚くべき理論的および実験的結果を提供します。より具体的には、クエリポイントまでの距離の相対コントラストが、使用されるL kメトリックに大きく依存することを示します。これは、kの値が大きいほど次元数が増加するにつれて、L kノルムの有意性がより速く悪化するというかなりの証拠を提供します。LkkLkLkk。したがって、次元固定(高い)値を持つ特定の問題では、kの低い値を使用することが望ましい場合があります。これは、L 1距離メトリック(マンハッタン距離メトリック)が高次元のアプリケーションに最も適していることを意味し、続いてユークリッドメトリック(L 2)があります。...dkL1L2

「驚くべき行動」論文の著者は、k < 1のノルムを使用することを提案しています。それらは、これらの「分数基準」が最も遠い点と最も近い点の間のコントラストを増加させる特性を示すことを示すいくつかの結果を生み出します。これはいくつかの状況では有用かもしれませんが、警告があります。これらの「分数基準」は三角形の不等式に違反するため、適切な距離メトリックではありません。三角形の不等式が研究で重要な品質である場合、分数メトリックスは非常に有用ではありません。Lkk<1


7
この参照は素晴らしいです
アントワーヌ

1
もう一度読んで...美しい...
リチャード・ハーディ

113

ユークリッド距離の概念は、ユークリッドによって研究された2次元および3次元の世界でうまく機能しますが、2次元および3次元からの外挿でもある私たちの(おそらく私の)幾何学的直観に反する高次元の特性があります次元。

± 2 ± 2 )に頂点がある正方形を考えます。± 1 ± 1 を中心とする4つの単位半径の円を描きます。これらは正方形を「塗りつぶし」、各円は2点で正方形の側面に接触し、各円はその2つの隣接点に接触します。例えば、を中心とする円 1 1 で、正方形の辺に接触2 1 及び1 2 4×4±2±2±1±1112112で、その隣接円及び0 1 。次に、4つすべての円に接する原点中心とした小さな円描きます。端点が2つの接触円の中心である線分が接触点を通過するため、小さな円の半径がr 2 = であることを簡単に確認できます。1001 およびそれが接触することは±r2/で4つの大きな円に接触しますr2=21。小さな円は4つの大きな円に「完全に囲まれている」ことに注意してください。したがって、正方形の内部にも完全に収まります。ポイントことにも留意されたいR20小円上にあります。また、その原点からの通知、一つの点を「見る」ことができない200視線がosculationの点を通過するため、正方形のエッジ100を中心と二つの円ので111(±r2/2±r2/2r20(2,0,0)(1,0,0)(1,1)。軸が正方形のエッジを通過する他のポイントへの視線についても同じです。(1,1)

次に、頂点が± 2 ± 2 ± 2 )の立方体を 考えます。± 1 ± 1 ± 1 を中心とする8個の接触単位半径球体を充填し、原点を中心とするより小さな接触球体を配置します。小さな球の半径はr 3 = √であることに注意してください。4×4×4(±2,±2,±2)8(±1,±1,±1) と点R300小球体の表面上にあります。しかし、また、その三次元における通知は、一つができる点を「見る」 200の原点から、2次元で起こるような、ビューをブロックする大きな大きな球はありません。原点から立方体の表面を通る軸までのこれらの明確な視線は、すべてのより大きな次元でも発生します。r3=31<1(r3,0,0)(2,0,0)

一般化して、サイド4の次元の超立方体を 考慮し、± 1 ± 1 ± 1 を中心とする2 n個の接触単位半径超球で埋め、次に半径rの「より小さい」接触球を置くことができます n = n42n±1±1±1原点で n1。ポイントRnは00...0 、この"小さい"球体上にあります。しかし、からの通知1すなわち、N=4RN=1及びので、「小さい」の球部半径を有し、したがって、実際には、「より小さい」のsoubriquetに値しないN4

(1)rn=n1
rn0001n=4rn=1n4。実際、「より大きな球体」または単に「中央球体」と呼んだ方が良いでしょう。最後の段落で述べたように、原点からハイパーキューブの表面を軸が通る点までの明確な視線があります。さらに悪いことに、ときに、我々はから持って1 すなわち、R N > 2、ひいてはポイント R nは0 0 ... 0 中央球面上 側の超立方体の外側にある4n>91rn>2rn0004 ハイパーキューブを「充填」する単位半径の超球体によって「完全に囲まれ」ている場合でも(パッキングの意味で)。 中央の球体は、高次元空間でハイパーキューブの外側に「膨らみます」。私がよく知っている2空間と3空間から開発した幾何学的直観を使用して、ユークリッド距離の高次元への概念の私の精神的な翻訳は、高次元の空間。

OPの質問に対する私の答えは、「さらに、「高次元」とは何ですか?」されているn9



9
@ stackoverflowuser2010:この答えが完全に理解できない場合、元の質問に対処するか、対処しようとするかをどのように判断できますか?より建設的なアプローチは、すべてを手に負えずに却下するのではなく、不明な点を解明するよう求めることです。
スコルチ

8
@ stackoverflowuser2010この回答には多数の賛成票があるため、多くの人がそれが合理的に理解可能であり、質問に受け入れられる方法で応答していると感じているようです。おそらく、あなたはより建設的な批判を試みることができます-どのように、具体的にはこの答えが改善されると思いますか?含まれていないことは何を含めるべきですか?
-Glen_b

1
@Scortchi:期待しすぎかもしれませんが、この質問に対する明確な答えは、「<X>のため、ユークリッド距離は良い指標ではありません」というようなものになります。
stackoverflowuser2010

7
@ stackoverflow2010 <事はif-then文よりもはるかに複雑である> ので、そのような「良い」答えを見ることはありません。簡単な答えが必要な場合は、ほとんどの場合間違っています。いまいましいBrexitの嘘つきのように、彼らは簡単な答えを提供するのが得意でした(偽ですが、簡単です)。
アノニムース

42

それはS / Nの問題です。2乗項によるユークリッド距離は、ノイズに特に敏感です。しかし、マンハッタン距離と「分数」(非メトリック)距離でも問題があります。

この記事の研究は非常に啓発的なものでした。

Zimek、A.、Schubert、E。およびKriegel、H.-P。(2012)、
高次元数値データにおける教師なし異常値検出に関する調査。
統計分析データマイニング、5:363–387。土井:10.1002 / sam.11161

@Patが言及したAggarwal、Hinneburg、およびKeimによる、例えば、高次元空間における距離メトリックの驚くべき挙動について行われた観察を再訪します。しかし、合成実験がどのように誤解を招くか、そして実際に高次元データより簡単になる可能性があることも示しています。多くの(冗長な)信号があり、新しい次元がノイズをほとんど追加しない場合。

重複ディメンションを検討する場合、最後の主張はおそらく最も明白です。データセットは代表的な次元を増加させますが、ユークリッド距離が失敗することはありません。(参照:固有の次元バツyバツyバツyバツyバツyバツy

したがって、最終的にはデータに依存します。役に立たない属性がたくさんある場合、ユークリッド距離は役に立たなくなります。低次元のデータ空間にデータを簡単に埋め込むことができれば、ユークリッド距離も全次元の空間で機能するはずです。特に、テキストからのTFベクトルなどのスパースデータの場合、これは、データがベクトル空間モデルが示唆するよりもはるかに低い次元である場合のようです。

一部の人々は、高次元データではコサイン距離がユークリッドよりも優れていると考えています。余弦距離とユークリッド距離は密接に関連しています。そのため、同じ問題に苦しむことを期待する必要があります。ただし、コサインが一般的なテキストデータは通常スパースでスパースデータではコサインの方が高速です。したがって、スパースデータの場合、コサインを使用する十分な理由があります。また、データがスパースであるため、固有の次元はベクトル空間の次元よりもはるかに小さくなります。

以前の質問に答えたこの返信も参照してください:https : //stats.stackexchange.com/a/29647/7828


[11]nn

そして、それから何が結論になりますか?[-1; 1] ^ dでは、0で定義されておらず、平均は呪いについて何も伝えず、均一なデータは非現実的であるため、コサインを使用しないでください。
アノニムース

今までは試していませんでしたが、実際のデータの角度は似ていると思います。0で定義されていないという事実は、単一のポイントであるため、実際には重要ではありません。私の結論はあなたのものに似ています:コサイン距離は高次元の空間にはあまり適していません(ドメインはまだ機能しているかもしれませんが)
Martin Thoma

より現実的なシナリオは、非負の単位球上の点です。そして、関心の尺度はおそらく平均ではなく分散でしょう。
アノニムース

非負単位球に取得するにはあなただけ... 2により+1と除算を追加する必要があります
マーティン・トーマ

34

開始するのに最適な場所は、Aggarwal、Hinneburg、Keimによる「高次元空間での距離メトリックの驚くべき動作について」を読むことです。ここに現在機能しているリンク(pdf)がありますが、それが壊れた場合は非常にグーグルに対応できるはずです。要するに、次元の数が増えると、セット内のポイントとその最も近い隣人の間、およびそのポイントと最も遠くの隣人の間のユークリッド距離は、いくつかの非自明な方法で変化します。これが結果に悪影響を与えるかどうかは、達成しようとしていることとデータの種類に大きく依存します。


6

ユークリッド距離は、機械学習で選択するのに適した距離になることはめったにありません。これは、高次元でより明らかになります。これは、ほとんどの場合、機械学習ではユークリッドメトリック空間ではなく確率的メトリック空間を扱っているため、エントロピーベースなどの確率的および情報理論的な距離関数を使用する必要があるためです。

ユークリッド空間は、概念化が容易であるために人間が好みます。さらに、線形代数を適用できることを意味する線形特性のために数学的にも簡単です。たとえば、Kullback-Leibler Divergenceで距離を定義すると、数学的に視覚化して操作するのが難しくなります。


2
KL Divergenceはメトリックではないため、問題が生じる可能性があります。:-)
アガリー

2
対称性が必要な場合、相互情報を使用できます。これは、ヒントとしてKLで定義できます。
サムテベスト

3

類推として、原点を中心とした円を想像してください。ポイントは均等に分配されます。ランダムに選択されたポイントが(x1、x2)にあるとします。原点からのユークリッド距離は((x1)^ 2 +(x2)^ 2)^ 0.5

ここで、球に均等に分布する点を想像してください。同じポイント(x1、x2)は(x1、x2、x3)になります。偶数の分布では、座標の1つがゼロである点はごくわずかであるため、ランダムに選択された均一に分布した点について[x3!= 0]と仮定します。したがって、ランダムポイントは(x1、x2、0)ではなく(x1、x2、x3)である可能性が最も高くなります。

これの効果は次のとおりです。任意のランダムポイントは、3D球体の原点から((x1)^ 2 +(x2)^ 2 +(x3)^ 2)^ 0.5の距離になります。この距離は、2D円の原点に近いランダムポイントの距離よりも大きくなります。この問題は、高次元では悪化します。そのため、高次元で機能するためにユークリッド次元以外のメトリックを選択します。

編集:私が今思い出すことわざがあります:「高次元のオレンジの質量の大部分は果肉ではなく皮膚にあります」、つまり高次元で均等に分布した点は境界により近い(ユークリッド距離)ます起源より。

サイドノート:ユークリッド距離は、「不均一性の祝福」のために実世界の問題にとってそれほど悪くはありません。これは基本的に、実データの場合、データは高次元空間に均等に分散されないことを示しますが、スペースの小さな包含サブセットを占有します。これは直感的に理にかなっています:身長、体重など人間について100個の量を測定している場合、次元空間の均等な分布は意味をなしません。たとえば、(身長= 65インチ、体重= 150 lbs、avg_calorie_intakeの人= 4000)これは現実の世界では不可能です。


将来の読者が「オレンジ/パルプ」の引用、または「不均一性の祝福」の発言に興味がある場合は、どちらも「機械学習について学ぶためのいくつかの有用なもの」に表示されます。糸。
Sycorax

1

この質問のもう1つの側面は次のとおりです。

(機械学習/統計)問題の高次元は、機能が過剰に制約された結果であることが非常に多くあります。

次元の意味は独立ではありません(または無相関)が、ユークリッドメトリックは(少なくとも)無相関を想定しているため、最良の結果が得られない可能性があります

したがって、あなたの質問に答えるために、「高次元」の数は、相互依存、冗長、または過度に制約されている機能の数に関連しています

さらに:特徴が特定の形式である場合、ユークリッドメトリックが推論の「自然な」候補であるということは、Csiszar(他)による定理です。


3
ユークリッドメトリックは「...無相関」とは見なしません。ユークリッド距離は、相関関係のない変数を使用した高次元で最悪に機能します。極端なケースを考えてみましょう。非常に多くの次元があり、それらはすべて完全に相関しています。r= 1で、データは実際には一次元であり、ユークリッド距離は一次元データでうまく機能します。
グン

私はそうは思わない、定義によるユークリッド距離は非相関データを想定している(相関行列で一般化ユークリッド距離を使用する場合を除く)
ニコス

全相関(r = 1)の特徴は些細な例であり、「些細な相関行列」に相当しますが、多分間違っています
ニコスM.

@gungユークリッド損失は、固定単位等方性分散行列を持つガウス分布のクロスエントロピー損失として解釈できます。これは良い点だと思いますが、もっとうまく説明できます。
ニールG

1
0011dE=jバツ2jバツ1j22バツ1=バツ212corバツ1バツ2=02

0

このホワイトペーパーでは、訪問するあなたも「平方根コサイン類似性測定の改善」に役立つかもしれhttps://journalofbigdata.springeropen.com/articles/10.1186/s40537-017-0083-6を ユークリッド距離が高次元で良いメトリックない理由本稿では説明してデータと、高次元データのユークリッド距離の最適な代替は何ですか。ユークリッド距離はL2ノルムであり、Lkノルムのkの値を小さくすることにより、高次元データの距離の問題を軽減できます。この資料にも参考文献があります。


2
サイトへようこそ。私たちは質の高い統計情報の永続的なリポジトリを質問と回答の形で構築しようとしています。したがって、linkrotによるリンクのみの回答には注意が必要です。完全な引用と情報の要約をリンクに投稿できますか?
グン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.