Rでのクラスター分析:必要になる完全なガイド[2022]
公開: 2021-01-04データサイエンスやPythonの世界に足を踏み入れたことがあれば、Rについて聞いたことがあるでしょう。
GNUプロジェクトとして開発されたRは、グラフィックスと統計計算のために設計された言語と環境の両方です。 これはS言語に似ているため、その実装と見なすことができます。
言語として、Rは非常に拡張性があります。 時系列分析、線形モデリング、非線形モデリング、クラスタリング、分類、古典的な統計テストなど、さまざまな統計的およびグラフィカルな手法を提供します。
これは、私たちがより深く探求するこれらの手法の1つであり、クラスタリングまたはクラスター分析です。
目次
クラスター分析とは何ですか?
簡単に言うと、クラスタリングとは、類似性に基づいてデータを複数のグループに分割するデータセグメンテーション手法です。
類似性はどのように評価されますか? 観測間距離測度に基づいて。 これらは、ユークリッドまたは相関ベースの距離測度のいずれかです。
クラスター分析は、最も人気があり、ある意味で直感的なデータ分析とデータマイニングの方法の1つです。 膨大なデータがあり、そこから洞察を抽出する必要がある場合に最適です。 この場合、バルクデータをより小さなサブセットまたはグループに分割できます。
データセット全体から形成および派生する小さなグループは、クラスターと呼ばれます。 これらは、1つ以上の統計操作を実行することによって取得されます。 各クラスターには異なる要素が含まれていますが、次のプロパティを共有しています。
- それらの番号は事前にはわかりません。
- それらは、統計演算を実行することによって取得されます。
- 各クラスターには、類似していて共通の特性を持つオブジェクトが含まれています。
クラスター分析の「ファンシー」な名前がなくても、同じことが日常生活でよく使用されます。
個人レベルでは、休暇に出かけるときに梱包する必要のあるもののクラスターを作成します。 最初に服、次にトイレタリー、次に本など。 カテゴリを作成し、個別に取り組みます。
企業は、メーリングリストでセグメンテーションを実行し、年齢、経済的背景、以前の購入行動などに基づいて顧客を分類するときにも、クラスター分析を使用します。
クラスター分析は、「教師なし機械学習」またはパターン認識とも呼ばれます。 特定のサンプルを特定のサンプルのみに分類することを目的としていないため、教師なし。 アルゴリズムはクラスター化の方法も学習するため、学習します。
クラスタリングの3つの方法
クラスタリングに最もよく使用される3つの方法があります。 これらは:
- 凝集型階層的クラスタリング
- リレーショナルクラスタリング/コンドルセット法
- k-クラスタリングを意味します
1.凝集型階層的クラスタリング
これは、最も一般的なタイプの階層的クラスタリングです。 AHCのアルゴリズムは、ボトムアップ方式で機能します。 まず、各データポイントをそれ自体がクラスター(リーフと呼ばれる)と見なします。
次に、最も類似している2つのクラスターを結合します。 これらの新しくて大きなクラスターはノードと呼ばれます。 グループ化は、データセット全体がルートと呼ばれる単一の大きなクラスターとしてまとめられるまで繰り返されます。
AHCプロセスの各ステップを視覚化して描画すると、樹状図と呼ばれるツリーが生成されます。
AHCプロセスを逆にすると、分割クラスタリングとクラスターの生成につながります。
樹状図は、次のように視覚化することもできます。
ソース
結論として、小さなクラスターの識別に優れたアルゴリズムが必要な場合は、AHCを選択してください。 大規模なクラスターの識別に優れたものが必要な場合は、分割クラスタリング手法を選択する必要があります。
2.リレーショナルクラスタリング/コンドルセット法
「類似性集約によるクラスタリング」は、このメソッドの別名です。 次のように機能します。
グローバルクラスタリングを構築するペアの個々のオブジェクトが比較されます。 ベクトルm(A、B)とd(A、B)には、個々の値(A、B)のペアが割り当てられます。 ベクトルb(A、B)では、AとBの両方の値が同じですが、ベクトルd(A、B)では、両方の値が異なります)。
AとBの2つの個別の値は、次のようにCondorcet基準に従うと言われています。
c(A、B)= m(A、B)-d(A、B)
Aのような個々の値とSと呼ばれるクラスターの場合、Condorcet基準は次のようになります。

c(A、S)=Σic ( A、B i )
全体の合計はBi∈Sです。
上記の条件が満たされると、c(A、S)の形式のクラスターが構築されます。 Aは、最小値0を持つことができ、クラスター内のすべてのデータポイントの中で最大です。
最後に、グローバルコンドルセット基準が計算されます。 これは、 Aに存在する個々のデータポイントとそれらを含むクラスターSAの合計を実行することによって行われます。
上記の手順は、グローバルなコンドルセット基準が改善されないか、最大反復回数に達するまで繰り返されます。
3.k-meansクラスタリング
これは、最も一般的なパーティショニングアルゴリズムの1つです。 利用可能なすべてのデータ(データポイント/観測とも呼ばれる)は、これらのクラスターのみにグループ化されます。 アルゴリズムの進行状況の内訳は次のとおりです。
- k個のクラスターをランダムに選択します。 これらのk行は、各クラスターのk重心を見つけることも意味します。
- 次に、各データポイントは、それに最も近い重心に割り当てられます。
- 割り当てられるデータポイントが増えると、追加されたすべてのデータポイントの平均として重心が再計算されます。
- 必要に応じて、データポイントの割り当てと図心のシフトを続行します。
- データポイントがクラスターを変更しなくなるまで、手順3と4を繰り返します。
データポイントと図心の間の距離は、次のいずれかの方法を使用して計算されます。
- ユークリッド距離
- マンハッタン距離
- ミンロウスキー距離
これらの中で最も人気のある-ユークリッド距離-は次のように計算されます。
アルゴリズムが実行されるたびに、結果として異なるグループが返されます。 変数kへの最初の割り当ては完全にランダムです。 これにより、k-meansは最初の選択に非常に敏感になります。 その結果、グループの数と全体的な観測値が少なくない限り、同じクラスタリングを取得することはほとんど不可能になります。
kに値を割り当てる方法は?
最初に、結果が向かう方向を決定する値をkにランダムに割り当てます。最良の選択が行われるようにするには、次の式を覚えておくと役立ちます。
ここで、 nはデータセット内のデータポイントの数です。
数式の存在に関係なく、クラスターの数はデータセットの性質、データセットが属する業界やビジネスなどに大きく依存します。したがって、自分の経験や直感にも注意を払うことをお勧めします。
クラスターサイズが間違っていると、グループ化が効果的でなく、過剰適合につながる可能性があります。 過剰適合のために、アルゴリズムが細部を探し出し、すべての一般化が失われるため、新しいデータポイントがクラスター内の場所を見つけることができない場合があります。
クラスター分析の応用
では、強力なクラスタリング手法はどこで使用されているのでしょうか。 上記のいくつかの例を大まかに述べました。 以下にいくつかの例を示します。
医学と健康
患者の年齢と遺伝子構成に基づいて、医師はより良い診断を提供することができます。 これは最終的に、より有益で整合性のある治療につながります。 この方法で新薬も発見できます。 医学におけるクラスタリングは、疾病分類学と呼ばれます。
社会学
社会的領域では、人口統計、年齢、職業、居住地などに基づいて人々をクラスター化することは、政府が法律を施行し、多様なグループに適した政策を形成するのに役立ちます。
マーケティング
マーケティングでは、クラスタリングという用語はセグメンテーション/類型分析に置き換えられます。 これは、特定の製品の潜在的な購入者を調査および選択するために使用されます。 次に、企業は各クラスターの要素をテストして、どの顧客が保持促進行動を示しているかを確認します。
サイバープロファイリング
ここで実装するクラスタリングアルゴリズムの入力として、ユーザーがアクセスした過去のWebページを入力します。 これらのWebページはクラスター化されます。 最後に、ブラウジングアクティビティに基づいて、ユーザーのプロファイルが生成されます。 パーソナライズからサイバーセーフティまで、この結果はどこでも活用できます。
小売り
アウトレットは、年齢、色の好み、スタイルの好み、過去の購入などに基づいて顧客をクラスター化することからも恩恵を受けます。これは、小売業者がカスタマイズされたエクスペリエンスを作成し、顧客の要望に合わせて将来の製品を計画するのに役立ちます。
結論
明らかなように、クラスター分析は、実装されている言語や環境に関係なく、非常に価値のある方法です。洞察を導き出したり、パターンを作成したり、プロファイルを作成したりする場合でも、クラスター分析は非常に便利なツールであり、次のような結果が得られます。実際に実装されます。 さまざまなクラスタリングアルゴリズムの操作に習熟していると、正確で真に価値のあるデータ分析を実行できます。
世界のトップ大学からデータサイエンスコースを学びましょう。 エグゼクティブPGプログラム、高度な証明書プログラム、または修士プログラムを取得して、キャリアを早急に進めましょう。