次元削減とクラスタリングを組み合わせるのはいつですか?


16

ドキュメントレベルのクラスタリングを実行しようとしています。用語ドキュメント頻度行列を作成し、k-meansを使用してこれらの高次元ベクトルをクラスタリングしようとしています。直接クラスタリングの代わりに、最初にLSA(潜在意味解析)特異ベクトル分解を適用してU、S、Vt行列を取得し、スクリープロットを使用して適切なしきい値を選択し、縮小行列(特にVtそれは私に良い結果を与えているように思えた概念ドキュメント情報を提供します)。

SVD(特異ベクトル分解)クラスタリング(コサイン類似性尺度などを使用)であり、SVDの出力にk-meansを適用できるかどうかわからないと言う人もいます。SVDは次元削減手法であり、多数の新しいベクトルを提供するため、論理的に正しいと考えました。一方、k-meansはクラスターの数を入力として受け取り、これらのベクトルを指定された数のクラスターに分割します。この手順に欠陥はありますか、これを改善できる方法はありますか?助言がありますか?


良い質問。個人的に私はこれらのものについて考えてきました。良い答えはありません。
-suncoolsu

1
次元削減とクラスタリングを同時に実行する方法があります。これらの方法は、クラスターの識別を容易にするために、最適に選択された低次元表現を探します。たとえば、Rのclustrdパッケージと関連参照を参照してください。
ナット

回答:


6

これは決して完全な答えではありません。あなたが尋ねるべき質問は、「次元削減を行うときにどのような距離が保持されるのか?」です。K-meansなどのクラスタリングアルゴリズムは距離でのみ動作するため、(理論的に)使用する適切な距離メトリックは、次元削減によって保持される距離メトリックです。このように、次元削減ステップは、低次元空間でデータをクラスタリングするための計算上のショートカットと見なすことができます。(局所的な最小値などを避けるためにも)

ここには多くの微妙な点がありますが、理解するふりをするつもりはありません(ローカル距離とグローバル距離、相対距離のゆがみなど)。これは理論的にこれらのことを考える正しい方向だと思います。


+1それは非常に興味深い質問です。その場合、ユークリッドはそのようなメトリックの1つと見なすことができますか?次元が小さくなると、ポイントはより低い次元の空間に投影されますが、距離の概念が失われる可能性があることを意味します。このような縮小を使用する場合、距離がどのように保持されるかを確認するのに苦労しています。
伝説

1
この答えは基本的に正しいと思います。距離を保持する小さなスペースにいくつかの埋め込みを見つける必要があります(距離の概念)。チェックアウトするのに適した 2つのアルゴリズムは、IsomapLocally-Linear Embeddingです。あなたの目標がクラスタ化である場合、「近傍保存」は良いアプローチのようです。
スタンピージョーピート

5

「次元削減とクラスタリングを組み合わせるのはいつですか?」というタイトルに応えて 完全な質問ではなく。考えられる理由の1つは明白です:アガイストの外れ値を保護したい場合。K-means algoは、初期中心のヒントがない場合、クラウド内のk個の最も離れた点を初期中心として取得します。PCAによる事前対応は、PCAに保持されている少数の上位コンポーネントにそれらを投影することにより、下位コンポーネントに沿った異常値を中和します。

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