次元削減としてのクラスタリング


10

私はNick Pentreathの本「Machine learning with Spark」を読んでいます。224〜225ページで、著者は次元削減の形式としてK平均法を使用することについて説明しています。

この種の次元削減は見たことがありません。名前が付いている、データの特定の形状に役立ちますか?

アルゴリズムを説明した本を引用します。

kクラスターのK平均クラスタリングモデルを使用して高次元の特徴ベクトルをクラスター化するとします。結果は、k個のクラスター中心のセットです。

元のデータポイントのそれぞれを、これらの各クラスター中心からの距離で表すことができます。つまり、各クラスターの中心までのデータポイントの距離を計算できます。結果は、各データポイントのk距離のセットです。

これらのkの距離は、次元kの新しいベクトルを形成できます。これで、元のデータを、元のフィーチャの次元と比較して、より低い次元の新しいベクトルとして表すことができます。

著者はガウス距離を示唆している。

2次元データの2つのクラスターで、私は次のようにしています:

K平均:

2つのクラスターを持つK平均

ノルム2でアルゴリズムを適用する:

規範2

ガウス距離でアルゴリズムを適用(dnorm(abs(z)を適用):

ガウス

前の写真のRコード:

set.seed(1)
N1 = 1000
N2 = 500
z1 = rnorm(N1) + 1i * rnorm(N1)
z2 = rnorm(N2, 2, 0.5) + 1i * rnorm(N2, 2, 2)
z = c(z1, z2)

cl = kmeans(cbind(Re(z), Im(z)), centers = 2)

plot(z, col = cl$cluster)

z_center = function(k, cl) {
  return(cl$centers[k,1] + 1i * cl$centers[k,2])
}

xlab = "distance to cluster center 1"
ylab = "distance to cluster center 2"

out_dist = cbind(abs(z - z_center(1, cl)), abs(z - z_center(2, cl)))
plot(out_dist, col = cl$cluster, xlab = xlab, ylab = ylab)
abline(a=0, b=1, col = "blue")

out_dist = cbind(dnorm(abs(z - z_center(1, cl))), dnorm(abs(z - z_center(2, cl))))
plot(out_dist, col = cl$cluster, xlab = xlab, ylab = ylab)
abline(a=0, b=1, col = "blue")

1
この例では、最初はデータが2次元だったため、次元の削減は行われず、2つの新しい次元(2つのクラスターそれぞれの距離)にマッピングしていることに注意してください。データの次元数を減らすには、データの元の次元数よりも少ないクラスターを使用する必要があります。
Ruben van Bergen

はい、私はこれをすべて2Dで行って、最初の画像をプロットし、すべての人に変形を見せました。したがって、その場合は次元の削減ではありません。3Dと2つのクラスターで同様にサンプリングされたデータの出力形状は類似しています。
ahstat 2017

4
クラスター中心からの距離を強調している点が気に入っています。データアナリストが多すぎると、データを離散化し、データを「異なる」クラスターにグループ化することによって情報を失います。
フランクハレル2017

回答:


6

これは、Park、Jeon、Rosenによって記述された「セントロイド法」(または密接に関連する「セントロイドQR」法)だと思います。ムン・ジョンジョンの論文の要約から

Centroidメソッドは、完全な次元のデータをクラスの重心空間に投影します。これにより、次元が大幅に削減され、元のクラス構造を改善しながら、次元数がクラス数に削減されます。その興味深い特性の1つは、2つの異なる類似性測定値を使用した場合でも、セントロイドに基づく分類を適用した場合、セントロイドによって形成される完全次元空間と縮小次元空間の分類結果が同じになることです。CentroidQRと呼ばれる2番目の方法は、セントロイド法の変形であり、図心行列のQR分解から直交行列Qのk列を射影空間として使用します。

また、これはFactor Analysisの「複数グループ」法と同等のようです。


3

ピボットベースのインデックスに関するすべての文献をご覧ください。

しかし、k-meansを使用してもほとんど利益がありません。通常、ランダムなポイントをピボットとして使用できます。あなたが十分に選択した場合、それらはすべて類似しているわけではありません。


「k-meansを使用してもほとんど利益がない」理由を詳しく説明していただけますか?ありがとう
Tagar

結果は、ランダムピボットよりも優れているように見えないためです。
QUITあり--Anony-Mousse

ありがとう!「ピボットベースのインデックス作成」手法へのリンクで応答を更新できますか?これは「ランダムなポイントをピボットとして使用する」と同じだと思います。私はグーグルしようとしました、しかし私が得ているものがQで概説されているこのK-meansアプローチに直接関連しているかどうかはわかりません
Tagar

2

次元削減としてクラスタリングを使用する方法はいくつかあります。K-meansの場合は、中心によって生成されたベクトル(またはアフィン)空間に点を(直交的に)投影することもできます。

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