PCAがt-SNEよりも適している場合はありますか?


39

テキスト修正動作の7つの測定(テキストの修正に費やした時間、キーストロークの回数など)が互いにどのように関連するかを確認したいと思います。メジャーは相関しています。PCAを実行して、メジャーがPC1とPC2にどのように投影されるかを確認しました。これにより、メジャー間で個別の双方向相関テストを実行する重複を回避できました。

いくつかのメジャー間の関係が非線形になる可能性があるため、t-SNEを使用しない理由を尋ねられました。

非線形性を許容することでこれがどのように改善されるかはわかりますが、t-SNEではなくこの場合にPCAを使用する正当な理由があるのでしょうか?メジャーとの関係に従ってテキストをクラスタリングするのではなく、メジャー自体の関係に興味があります。

(EFAはより良い/別のアプローチかもしれませんが、それは別の議論です。)他の方法と比較して、t-SNEに関する投稿はここにほとんどないので、質問する価値があるようです。


3
t-SNEはデータセットのサイズに応じて適切にスケーリングしませんが、PCAはスケーリングします。これは、scikit-learn実装を使用して、両方を大規模なデータセットで実行した経験から来ています。
マイ

@Maiはおそらく大規模なデータセットに主に適用されますか?私のデータセットは小さい側(数百のデータポイント)にあります。
user3744206

回答:


65

-SNEは優れた機械学習ですが、PCAの代わりにPCAを使用する多くの理由を見つけることができます。私の頭の中で、5つについて言及します。使用されているほとんどの他の計算方法としては、トンの -SNEはnoです特効薬、それいくつかのケースでは、次善の選択肢となってかなりの数の理由があります。いくつかのポイントについて簡単に言及させてください。tt

  1. 最終解の確率論。PCAは決定論的です。 -SNEはそうではありません。一つは、素敵なビジュアライゼーションを取得し、良く見えるとの差があればどのその後、彼女の同僚が別のビジュアライゼーションを取得し、彼らは芸術の取得、0.03 K L P | | Q 発散は意味がある...でPCA 正しい答え提起された質問は保証されています。t -SNEには、異なるソリューションにつながる可能性のある複数の最小値がある場合があります。これには複数の実行が必要であるだけでなく、結果の再現性に関する疑問が生じます。t0.03KLP||Qt

  2. マッピングの解釈可能性。これは上記のポイントに関連していますが、チームが特定のランダムシード/ランで合意したと仮定しましょう。質問はこれが示すものになります... -SNEはローカル/ネイバーのみを正しくマップしようとするため、その埋め込みからの洞察は非常に慎重でなければなりません。グローバルな傾向は正確に表されていません(そして、それは視覚化にとって潜在的に素晴らしいことです)。一方、PCAは初期共分散行列の対角回転であり、固有ベクトルは元のデータが広がる空間内の新しい軸系を表します。特定のPCAの機能を直接説明できます。t

  3. 新規/不可視データへの適用 -SNEは、元の空間から新しい(低次元の)空間への関数を学習していないため、問題になります。その点で、t -SNEはノンパラメトリック学習アルゴリズムであるため、パラメトリックアルゴリズムでの近似は不適切な問題です。埋め込みは、低次元の空間全体にデータを直接移動することにより学習されます。これは、新しいデータで使用する固有ベクトルまたは同様の構造を取得しないことを意味します。対照的に、PCAを使用すると、固有ベクトルは、新しいデータを投影するために直接使用できる新しい軸システムを提供します。[どうやら1は、学ぶために深いネットワークを訓練しようとすることができトンをttt-SNEマッピング(このビデオの〜46 'で、ファンデルマーテン博士がこの線に沿って何かを示唆しているのを聞くことができます)

  4. ttt

  5. k ttkkk説明された分散の観点から最良の線形結合。(この点の概要を最初に説明しようとしたときに混乱してしまったことに気付いて@amoebaに感謝します。)

t

ttt


tk=234

@amoeba:言及してくれてありがとう。それに応じて回答を更新しました。
usεr11852は回復モニック氏は述べています

3
あなたのポイント#3に関して:パラメトリックt- sne lvdmaaten.github.io/publications/papers/AISTATS_2009.pdfに関する2009年の論文です。実際にはうまくいきませんでした(元のt-sne論文よりも25倍少ない引用があります)が、実際には、今日のテクノロジー/ライブラリーを使用して実装するのは非常に簡単です。Kerasで実行しています。私はこの数週間、それを調査(そして可能性としては拡張)に取り組んでいます。
アメーバは、モニカを復活させる

クール!(+1)arXivプレプリントフローティングを入手した場合は、ここ(または10倍)でお知らせください。結果について非常に興味があります。はい、私はこの答えを書いている時点でその紙を見たことがあります(実際には私が言う有名な紙です)が、あなたが言ったように、それは取り上げられていないようでした。また、ポイント#3は完全に有効なままです。PCNが提供する何かを単一のマトリックスのクロス積で取得するには、DNNを構築する必要があります。
usεr11852は回復モニック言う

12

https://stats.stackexchange.com/a/249520/7828

優れた一般的な答えです。

あなたの問題にもう少し焦点を当てたいと思います。明らかに、7つの入力変数に関してサンプルがどのように関係しているを確認したいはずです。それはt-SNEがしないことです。SNEとt-SNEのアイデアは、グローバル構造を(ほぼ)完全に無視して、近隣を互いに近づけることです。

これは視覚化に優れています。類似したアイテムを隣り合わせにプロットできるためです(混雑を避けるために、互いの上にではありません)。

これは、さらなる分析には適していません。グローバル構造は失われ、一部のオブジェクトは隣接するオブジェクトへの移動がブロックされている可能性があり、異なるグループ間の分離は定量的に保持されていません。これが主な理由です。たとえば、投影でのクラスタリングは通常、あまりうまく機能しません。

PCAは正反対です。グローバルプロパティ(高分散の固有ベクトル)を保持しようとしますが、近傍間の低分散偏差を失う可能性があります。


ああ、それはまさに私が想定したことです。データポイントが空間にどのように配置されているかではなく、メジャー自体がどのように相互に関連しているかに興味があります。もちろん、これら2つのことは結びついていますが、これらの関係を視覚化して解釈するという点では、PCAだけが私が望んでいることをしていると思います。たとえば、メジャー間には正と負の両方の関係があり、本当に興味があるのは関連付けの絶対値です。これも、PCAを使用するかどうかを解釈/確認する方が簡単だと思います。
user3744206 16

1
そのユースケースでは、相関行列自体を見る方が良い場合があります。つまり、ペアごとの比較のみを行います。次に、スピアマン相関を使用するなどして、非線形性を処理することもできます。
アノニムース

クラスタの問題にT-SNEを使用できますか?私が理解している限り、私たちは新しい来るべきポイントを投影し、より低い次元でクラスター化を試みることができますか?出来ますか ?
Catbuilts

いいえ。tSNEは線形ではないため、新しいデータに対して計算することはできません(上記を参照)。また、予測されたデータをクラスター化することは誤解を招く可能性があるという合法的な議論がありました。
アノニムース

1

1つの適用角度を与えるために、PCAとt-SNEは相互に排他的ではありません。生物学の一部の分野では、t-SNEが単にスケーリングしない高次元のデータ(たとえばscRNA-seqは数千の次元)を扱っています。したがって、まずPCAを使用してデータの次元を削減し、次に主要な主成分を取得して、近傍グラフを計算し、t-SNE(または同様の非線形次元削減アプローチを使用して2次元にグラフを埋め込みます) UMAPなど)を使用してデータを視覚化します。

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