次元性と多様体


13

教師なし機械学習でよく聞かれる文章は

高次元の入力は通常、低次元の多様体の上または近くに存在します

ディメンションとは何ですか?マニホールドとは何ですか?違いはなんですか?

両方を説明する例を挙げられますか?

ウィキペディアのマニホールド

数学では、多様体は各点の近くのユークリッド空間に似たトポロジー空間です。より正確には、n次元多様体の各点には、n次元のユークリッド空間に同型の近傍があります。

ウィキペディアのディメンション

物理学と数学では、数学的な空間(またはオブジェクト)の次元は、その内部の任意の点を指定するために必要な座標の最小数として非公式に定義されます。

ウィキペディアは素人の言葉で何を意味していますか?ほとんどの機械学習の定義のような奇妙な定義のように聞こえますか?

どちらも空間です。ユークリッド空間(つまり、多様体)と次元空間(つまり、特徴に基づく)の違いは何ですか。


1
インターネット検索を試しましたか?それで十分でしょう。
Aleksandr Blekh 2015年

1
はい、私はグーグルを持っていました、しかしそれは確かに十分ではありません、更新された質問を見てください。
alvas、2015年

1
複雑な機械学習の概念を「平易な言葉で」説明するのは、いい考えだとは思いません。また、ウィキペディアだけでなく検索範囲を広げる必要があります。
Aleksandr Blekh 2015年

回答:


29

ディメンションとは何ですか?

簡単に言うと、m行n列の表形式のデータセットがある場合、データの次元数はnです。

マニホールドとは何ですか?

最も単純な例は私たちの惑星地球です。私たちにとっては平らに見えますが、実際には球体です。つまり、3D空間に埋め込まれた2Dマニホールドのようなものです。

違いはなんですか?

この質問に答えるために、多様体の別の例を考えてみましょう:

ここに画像の説明を入力してください

これは、いわゆる「スイスロール」です。データポイントは3dですが、すべて2d多様体上にあるため、多様体の次元数は2であり、入力空間の次元数は3です。

これらの多様体を「アンラップ」する多くの手法があります。それらの1つはLocally Linear Embeddingと呼ばれ、次のようになります。

ここに画像の説明を入力してください

これを行うためのscikit-learnスニペットを次に示します。

from sklearn.manifold import LocallyLinearEmbedding

lle = LocallyLinearEmbedding(n_neighbors=k, n_components=2)
X_lle = lle.fit_transform(data)
plt.scatter(X_lle[:, 0], X_lle[:, 1], c=color)
plt.show()

6

データセットの次元数は、データセットを表すために使用される変数の数です。たとえば、人を身長と体重の観点から説明することに関心がある場合、「人」のデータセットは2次元になります。代わりに、画像のデータセットがあり、各画像が100万ピクセルである場合、データセットの次元は100万になります。実際、最新の多くの機械学習アプリケーションでは、データセットの次元が膨大になる可能性があります。

次元が非常に大きい(データセット内のサンプル数よりも大きい)場合、いくつかの深刻な問題が発生する可能性があります。サンプルxが点在するときに、1つのクラスに負の数を与え、別のクラスに正の数を与えるような重みのセットwを見つけようとする単純な分類アルゴリズムを考えてみましょう。wの長さはデータの次元と等しいため、データセット全体のサンプルよりも多くのパラメーターが含まれます。つまり、学習者はデータを過剰に適合させることができるため、トレーニング中に見えない他のサンプルにうまく一般化できません。

多様体は、いくつかの高次元空間に埋め込まれた次元dのオブジェクトです。紙の上の一連の点を想像してみてください。紙にしわを寄せると、ポイントは3次元になります。多くの多様な学習アルゴリズムは、データを2次元に戻すために紙のシートを「縮ませる」ことを目指しています。モデルの過剰適合に関心がない場合でも、非線形多様体学習器は、分類と回帰の問題を容易にする空間を生成できます。


高い次元性が多様体に縮まらないケースはありますか?
alvas、2015年

絶対に!時々、データはすでにその本質的な空間にあります。その場合、次元数を削減しようとすることは、分類パフォーマンスにとっておそらく有害です。このような場合、使用しているデータセットの特徴は、統計的に互いに独立していることがわかります。
ジョーダンA

1

次元削減を行う1つの方法は、特徴ハッシュを行うことです。これは1960年代に知られていました。したがって、たとえば、データが3次元(x、y、z)の点のスパースセットである場合、(良い)ハッシュ関数h(x、y、z)を作成します。もちろん、ハッシュテーブルやブルームフィルターのルックアップに使用できます。これは、データ圧縮の適切な形式です。AIコミュニティがなぜそれを使用しないのか、私にはわかりません。それはニューラルネットよりもはるかに重要です。


1
次元削減は多様体とどのように関連していますか?
alvas、2015年

これは、多様体上のすべてを選択し、その他すべてを除外する方法です。
SeanOCVN

@alvasはここでポイントを持っていると思います。これが多様体と次元の説明に関する元の質問にどのように関係するかはすぐにはわかりません。
ライアンJ.スミス

SeanOCVNの回答とalvasコメントのミッシングリンクを解決するには:(トポロジー空間の)多様体は、埋め込み空間で入力データを使用して(またはa)ローカル線形埋め込みアルゴリズムを実行した出力です。その結果、入力データディメンションの数量が出力データディメンションの数量よりも多くなります。新しいデータ表現(元のデータ表現にマッピング可能)の抽出は、「特徴抽出」と呼ばれます。これは「次元削減」のサブタイプです。
pds

0

@Alexey Grigorevはすでに非常に良い答えを出していますが、次の2つを追加すると役立つと思います。

  • マニホールドの重要性を直感的に理解するのに役立つ例を提供したいと思います。
  • その点について、「ユークリッド空間に似ている」ことを少し明確にしたいと思います。

直感的な例

(白黒)HDready画像(1280 * 720ピクセル)のコレクションで作業するとします。これらの写真は921,600次元の世界に住んでいます。すべての画像は、ピクセルの個々の値によって定義されます。

ここで、256面のサイコロを転がして各ピクセルを順番に塗りつぶして、これらの画像を作成するとします。

結果の画像は、おそらく次のようになります。

ここに画像の説明を入力してください

あまり面白くありませんが、保持したい何かにぶつかるまでそれを続けることができます。非常に疲れますが、Pythonの数行でこれを自動化できます。

意味のある(現実的なものは言うまでもなく)画像の空間が、特徴空間全体と同じくらい離れた場所にさえあるとしたら、すぐに興味深いものが見られます。多分私たちはあなたの赤ちゃんの写真や別のタイムラインからのニュース記事を見るでしょう。ねえ、どうやって時間コンポーネントを追加すれば、ラッキーになって、別のエンディングでBack to th Futureを生成することもできます

実際、以前はこれを正確に行うマシンを使用していました。正しく調整されていない古いテレビです。今、私はそれらを見たのを覚えており、構造さえ持っていたものを見たことがない。

なぜこれが起こるのですか?まあ:私たちが興味深いと思う画像は、実際には現象の高解像度の投影であり、はるかに高次元ではないものによって支配されています。たとえば、この場合、1次元の現象に近いシーンの明るさがほぼ100万次元を占めます。

これは、この場合(定義ごとではなく)サブスペース(多様体)があり、非表示の変数によって制御されており、対象のインスタンスが含まれていることを意味します

ユークリッド地方の行動

ユークリッド動作とは、動作に幾何学的な特性があることを意味します。非常に明白な明るさの場合:「それの軸」に沿ってそれを増やすと、結果の画像は連続的に明るくなります。

しかし、ここが興味深いところです。そのユークリッド動作は、マニホールド空間のより抽象的な次元でも機能します。Goodfellow、Bengio、Courvilleによるディープラーニングからこの例を検討してください

左:フレイ面多様体の2次元マップ。 発見された1つの次元(水平)は主に顔の回転に対応し、もう1つの次元(垂直)は感情的な表現に対応します。 右:MNISTマニホールドの2次元マップ

左:フレイ面多様体の2次元マップ。発見された1つの次元(水平)は主に顔の回転に対応し、もう1つの次元(垂直)は感情的な表現に対応します。右:MNISTマニホールドの2次元マップ

画像を含むアプリケーションでディープラーニングが非常に成功する理由の1つは、非常に効率的な形式の多様体学習が組み込まれているためです。これが、画像認識、圧縮、および画像操作に適用できる理由の1つです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.