k-meansクラスタリングには平均の正規化と特徴のスケーリングが必要ですか?


回答:


63

変数が比類のない単位の場合(たとえば、身長cmと体重kg)、変数を標準化する必要があります。変数の単位が同じでも、分散がまったく異なる場合でも、K-meansの前に標準化することをお勧めします。K平均クラスタリングは空間のすべての方向で「等方性」であるため、多かれ少なかれ丸い(細長い)クラスターを生成する傾向があります。この状況では、分散を等しくないままにすることは、より小さい分散を持つ変数により多くの重みを付けることと同等です。したがって、クラスターは、より大きい分散を持つ変数に沿って分離される傾向があります。

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

覚えておくべき別のことは、K-meansクラスタリングの結果は、データセット内のオブジェクトの順序に潜在的に敏感であることです。正当な方法は、分析を数回実行し、オブジェクトの順序をランダム化することです。次に、それらの実行のクラスター中心を平均し、分析の最終実行の最初の中心として入力します。1

以下は、クラスターまたはその他の多変量解析の機能を標準化する問題に関する一般的な理由です。


1具体的には、(1)センターの初期化のいくつかの方法は、大文字と小文字の順序に敏感です。(2)初期化方法が敏感ではない場合でも、結果は初期センターがプログラムに導入される順序に依存する場合があります(特に、データ内に同じ距離がある場合)。(3)k-meansアルゴリズムのいわゆる実行手段バージョンは、ケースの順序に自然に敏感です(このバージョンでは、オンラインクラスタリング以外ではあまり使用されません-個々のケースが再割り当てされた後に、重心の再計算が行われます別のクラスター)。


2
ランダム化、再実行、平均化、最終実行は非常に良いアドバイスです。ありがとう
-pedrosaurio

1
k-meansは注文にどのように敏感ですか?
SmallChess

1
@StudentT、そのための脚注を追加しました。ありがとうございました。
ttnphns

1
@ttnphnsは、変数が「まったく異なる分散」を持っていることをどのように定量的に判断するのですか?
ハーマン歯磨き

1
@camillejr、このQ:stats.stackexchange.com/q/418427/3277を確認することから始めてください。
ttnphns

4

あなたのデータに依存すると思います。データの傾向を規模に関係なくクラスター化する場合は、集中する必要があります。例えば。何らかの遺伝子発現プロファイルがあり、遺伝子発現の傾向を確認したい場合、平均的なセンタリングなしで、低発現遺伝子は傾向に関係なく一緒にクラスター化し、高発現遺伝子から離れます。センタリングにより、同様の発現パターンを持つ遺伝子(高発現と低発現の両方)がクラスター化されます。


私は実際に、独自のスケールを持つさまざまな機能を比較しています。たとえば、0.3〜0.5の範囲のGCコンテンツを比較していますが、これは小さいように見えますが、違いは非常に重要です。他の機能にはより広い範囲があり、他の機能は非常に小さなスケールで範囲が異なります。
ペドロサウリオ

だから、あなたはさまざまな要因をクラスタリングしていますか?何らかの重みまたは値の変換を使用できます。
ナイトライター

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