クラスタリング基準の有害な結果


8

座標点(経度、緯度)のクラスタリングを実行しましたが、最適なクラスタ数のクラスタリング基準からの驚くべき、不利な結果が見つかりました。基準はclusterCrit()パッケージから取得されます。プロット上でクラスター化しようとしているポイント(データセットの地理的特性がはっきりと見えます):

すべての観測のプロット

完全な手順は次のとおりです。

  1. 10kポイントで階層的クラスタリングを実行し、2:150クラスターのmedoidを保存しました。
  2. (1)のmedoidを163k観測のkmeansクラスタリングのシードとして取得しました。
  3. 最適なクラスター数について、6つの異なるクラスター化基準を確認しました。

2つのクラスタリング基準のみが、私にとって意味のある結果をもたらしました-SilhouetteとDavies-Bouldin基準。どちらの場合も、プロット上で最大値を探す必要があります。どちらも「22クラスタは適切な数です」という答えを与えるようです。以下のグラフの場合:x軸はクラスターの数、y軸は基準の値です。画像の説明が間違っているため、申し訳ありません。SilhouetteとDavies-Bouldin:

Silhoette基準プロット Davies-Bouldin基準プロット

次に、Calinski-HarabaszとLog_SSの値を見てみましょう。最大値はプロット上にあります。グラフは、値が高いほどクラスタリングが優れていることを示しています。このような着実な成長は驚くべきことです。150個のクラスターはすでにかなりの数になっていると思います。それぞれCalinski-HarabaszとLog_SSの値のプロットの下。

Calinski-Harabasz基準プロット Log_SS基準プロット

次に、最も驚くべき部分について、最後の2つの基準について説明します。Ball-Hallの場合、2つのクラスタリング間の最大の差が望ましく、Ratkowsky-Lanceの場合は最大です。Ball-HallとRatkowsky-Lanceのプロット:

ボールホール基準プロット ラトコフランス基準のプロット

最後の2つの基準は、3番目と4番目の基準よりも完全に不利な回答を示します(クラスターの数が少ないほど良い)。そんなことがあるものか?私にとっては、最初の2つの基準だけがクラスタリングを理解できたようです。0.6前後のシルエット幅はそれほど悪くありません。奇妙な答えを出す指標をスキップして、合理的な答えを与える指標を信じるべきでしょうか?

編集:22クラスターのプロット22クラスタソリューション


編集する

データが22のグループに非常にうまくクラスター化されていることがわかります。そのため、2つのクラスターを選択する必要があることを示す基準には弱点があるように見え、ヒューリスティックが適切に機能していません。データをプロットできる場合、またはデータを4つ未満の主成分にパックしてプロットできる場合は問題ありません。しかしそうでなければ?基準を使用する以外の方法でクラスターの数を選択するにはどうすればよいですか?CalinskiとRatkowskyが非常に良い基準であることを示すテストを見たことがありますが、それでも一見簡単なデータセットに対しては不利な結果が得られます。したがって、「なぜ結果が異なるのか」ではなく、「これらの基準をどれだけ信頼できるか」という質問ではないでしょうか。

ユークリッドメトリックが適切でないのはなぜですか?それらの間の実際の正確な距離にはあまり興味がありません。私は真の距離が球形であることを理解していますが、すべての点A、B、C、Dについて、Spheric(A、B)> Spheric(C、D)の場合は、Euclidian(A、B)> Euclidian(C、D)よりもクラスタリングメトリックには十分です。

これらのポイントをクラスター化したいのはなぜですか?予測モデルを構築したいのですが、各観測の場所に多くの情報が含まれています。それぞれの観測について、都市と地域も持っています。しかし、都市が多すぎて、たとえば5000の因子変数を作成したくありません。したがって、座標でクラスタリングすることを考えました。異なる領域の密度が異なり、アルゴリズムがそれを見つけたので、それはかなりうまくいきました、22の因子変数は大丈夫でしょう。予測モデルの結果によってクラスタリングの良さを判断することもできますが、これが計算上賢明かどうかはわかりません。新しいアルゴリズムのおかげで、巨大なデータセットで高速に動作する場合は、間違いなく試してみるつもりです。


22クラスタでのクラスタリング結果を視覚化できますか?
QUITあり--Anony-Mousse 2013

階層的クラスタリングにはどの方法を使用しましたか?それはあなたが得る結果に実質的に影響を与えますか?
Hong Ooi

Helo Hong、私は「ダイアナ」法を使用しました。ユークリッド距離は座標として妥当な距離であるべきです。また、プロットされた22クラスターソリューションは、私にはかなり合理的に見えます。
Karol Przybylak 2013

あなたの答えとあなたのアドバイスであるAnony-Mousseに感謝します。私の編集を参照してください。
Karol Przybylak 2013

さて、あなたはあなたの質問を更新することができます。agnesが15クラスター、agnesが30クラスターの結果を比較します。クルーザーは凸型ですが、これが「素敵な」クラスターを作るために必要なすべてだとは思いません。クラスタリングの結果はいつが良いですか?何百万もの凸結果が可能です。
QUITあり-Anony-Mousse 2013年

回答:


6

あなた自身を尋ねるべき質問はこれです:あなたがしたいです何を達成します

これらの基準はすべて、ヒューリスティックにすぎません。1つの数学的最適化手法の結果をさらに別の数学的関数で判断します。これは実際に結果が良いかどうかを測定するのではなく、データが特定の仮定に適合しているかどうかを測定するだけです。

これで、緯度と経度のユークリッド距離でグローバルデータセットを取得したので、実際にはすでに適切な選択ではありません。ただし、これらの基準とアルゴリズム(k-means…)の一部では、この不適切な距離関数が必要です。

あなたが試すべきいくつかのこと:

  • より良いアルゴリズム。DBSCANOPTICSを試してください。どちらもクラスターの数を指定する必要はありません。これらには他のパラメーターがありますが、たとえば、距離最小ポイント数は、このデータセットに設定する方がはるかに簡単です。
  • 視覚化。いくつかの数学的測定値の統計を見る代わりに、目視検査で最良の結果を選択してください!したがって、まず最初に、クラスター視覚化して、結果がまったく意味を成しているかどうかを確認します。
  • あなたが見つけたいものを考えてください。あなたが大陸を分ければ、数学的な基準は幸せです。しかし、これを行うためのアルゴリズムは必要ありません。大陸はすでに非常によく知られています!だから何、あなたは発見したいですか?
  • 外れ値を削除します。どちらのK-手段と階層的クラスタリングはそれほど外れ値好きではない、とあなたは見つけるために、クラスタの数を増やす必要があるかもしれませんデータ内の外れ値の数(DBSCANと光学系は、上述のあるはるかに堅牢外れ値に向かって)。
  • より適切な距離関数。地球はほぼ球形です。ユークリッド距離の代わりに大圏距離を使用してください。
  • ユークリッド距離を使用する必要がある場合は、データを3D ECEF座標系に変換してみてください。これにより、地表の下にあるクラスターの中心が生成されますが、アラスカのクラスター化が可能になり、ユークリッド距離は少なくとも実際の表面距離の下限になります。

Stackoverflowでこの関連する質問/回答などを見てください。


0

経度と緯度は球体上のポイントを定義する角度であるため、おそらくユークリッド距離ではなく、大円の距離またはポイント間の他の測地線距離を見る必要があります。

また、前述したように、混合モデルなどの明示的にモデルベースのクラスタリングアルゴリズムや、K平均などの暗黙的にモデルベースのアルゴリズムは、クラスターの形状とサイズについて仮定を行います。この状況では、データが基になるモデルに適合することを期待していますか?そうでない場合は、クラスターの形状/サイズについての仮定を行わない密度ベースの方法がより適切かもしれません。

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