Machine-learning-with-python-clustering-algorithms-overview

提供:Dev Guides
移動先:案内検索

クラスタリングアルゴリズム-概要

クラスタリングの概要

クラスタリング手法は、最も有用な教師なしML手法の1つです。 これらの方法を使用して、データサンプル間の類似性と関係パターンを検出し、それらのサンプルを特徴に基づいて類似性を持つグループにクラスター化します。

クラスタリングは、現在のラベル付けされていないデータ間の固有のグループ化を決定するため重要です。 基本的には、データポイントについていくつかの仮定を行い、それらの類似性を構成します。 各仮定は、異なるが同等に有効なクラスターを構築します。

たとえば、以下は、異なるクラスタ内の同様の種類のデータをグループ化したクラスタリングシステムを示す図です-

クラスタリングシステム

クラスター形成方法

クラスターが球状に形成される必要はありません。 以下は、いくつかの他のクラスター形成方法です-

密度ベース

これらの方法では、クラスターは密な領域として形成されます。 これらの方法の利点は、2つのクラスターをマージするための優れた精度と優れた能力を備えていることです。 Ex. ノイズを伴うアプリケーションの密度ベースの空間クラスタリング(DBSCAN)、クラスタリング構造を識別するための順序点(OPTICS)など

階層ベース

これらの方法では、クラスターは階層に基づいたツリー型構造として形成されます。 彼らは2つのカテゴリ、すなわち凝集(ボトムアップアプローチ)と分裂(トップダウンアプローチ)があります。 Ex. 代表を使用したクラスタリング(CURE)、階層を使用したバランスの取れた反復削減クラスタリング(BIRCH)など

パーティショニング

これらの方法では、オブジェクトをk個のクラスターに分割することによりクラスターが形成されます。 クラスターの数は、パーティションの数に等しくなります。 Ex. K-means、ランダム化検索に基づいた大規模アプリケーションのクラスタリング(CLARANS)。

Grid

これらの方法では、クラスターはグリッド状の構造として形成されます。 これらの方法の利点は、これらのグリッドで行われるすべてのクラスタリング操作が高速で、データオブジェクトの数に依存しないことです。 Ex. 統計情報グリッド(STING)、クエストのクラスタリング(CLIQUE)。

クラスタリングパフォーマンスの測定

MLモデルに関する最も重要な考慮事項の1つは、そのパフォーマンスを評価すること、またはモデルの品質を言うことです。 教師あり学習アルゴリズムの場合、すべての例のラベルがすでにあるため、モデルの品質の評価は簡単です。

一方、教師なし学習アルゴリズムの場合、ラベル付けされていないデータを扱うため、それほど恵まれていません。 しかし、まだアルゴリズムに応じてクラスターの変化の発生についての実務者に洞察を与えるいくつかのメトリックがあります。

このような指標を詳しく検討する前に、これらの指標がモデルの予測の妥当性を測定するのではなく、モデルの相互の比較パフォーマンスのみを評価することを理解する必要があります。 以下は、モデルの品質を測定するためにクラスタリングアルゴリズムに展開できるメトリックの一部です-

シルエット分析

クラスター間の距離を測定することにより、クラスタリングモデルの品質を確認するために使用されるシルエット分析。 基本的に、*シルエットスコア*を使用して、クラスター数などのパラメーターを評価する方法を提供します。 このスコアは、1つのクラスター内の各ポイントが隣接クラスター内のポイントにどれだけ近いかを測定します。

シルエットスコアの分析

  • link:/machine_learning_with_python/machine_learning_with_python_analysis_of_silhouette_score [シルエットスコアの分析]-*シルエットスコア*の範囲は[-1、1]です。

MLクラスタリングアルゴリズムのタイプ

以下は、最も重要で便利なMLクラスタリングアルゴリズムです-

K平均クラスタリング

このクラスタリングアルゴリズムは、重心を計算し、最適な重心が見つかるまで繰り返します。 クラスターの数はすでにわかっていると想定しています。 また、 flat clustering アルゴリズムとも呼ばれます。 アルゴリズムによってデータから識別されたクラスターの数は、K-meansの「K」で表されます。

平均シフトアルゴリズム

これは、教師なし学習で使用される別の強力なクラスタリングアルゴリズムです。 K平均クラスタリングとは異なり、仮定を行わないため、ノンパラメトリックアルゴリズムです。

階層的クラスタリング

同様の特性を持つラベルなしデータポイントをグループ化するために使用されるもう1つの教師なし学習アルゴリズムです。

これらのすべてのアルゴリズムについては、今後の章で詳しく説明します。

クラスタリングの応用

私たちは、次の分野でクラスタリングが役立つことがわかります-

データの要約と圧縮-クラスタリングは、データの要約、圧縮、削減も必要な分野で広く使用されています。 例は、画像処理とベクトル量子化です。

共同システムと顧客のセグメンテーション-クラスタリングは、類似の製品または同じ種類のユーザーを見つけるために使用できるため、共同システムと顧客のセグメンテーションの領域で使用できます。

他のデータマイニングタスクの主要な中間ステップとして機能-クラスター分析は、分類、テスト、仮説生成のためのデータのコンパクトな要約を生成できます。したがって、他のデータマイニングタスクの主要な中間ステップとしても機能します。

動的データの傾向検出-クラスタリングは、同様の傾向のさまざまなクラスターを作成することにより、動的データの傾向検出にも使用できます。

ソーシャルネットワーク分析-クラスタリングはソーシャルネットワーク分析で使用できます。 例は、画像、ビデオ、または音声でシーケンスを生成しています。

生物学的データ分析-クラスタリングは、画像、ビデオのクラスターを作成するためにも使用できるため、生物学的データ分析で正常に使用できます。