BellCurve 統計WEB

  • Step2. 中級編
  • 7. 多変量解析

7-6. 非階層型クラスター分析

次に、非階層型(的)クラスター分析の1つであるk-means法について説明します。k-means法はサンプルサイズの大きな標本を分類するときに適した方法です。

■解析の流れ

次のようなデータを考えます。k-means法を使ってこのデータを3つのクラスターに分けてみます。

  1. データをランダムに分類する
  2. 各データを3つのクラスター(赤、青、緑)にランダムに分類します。

  3. クラスターごとに重心を計算する
  4. 各クラスターに属するデータを使って重心(濃い赤、濃い青、濃い緑)を計算します。

  5. 各データを最も距離が近い重心のクラスターに分類し直す
  6. ランダムにクラスターに分類されたデータを、重心までの距離が最も近いクラスターに分類し直します(=所属するクラスターを変更します)。

  7. 再度、クラスターごとに重心を計算する
  8. 各クラスターに属するデータを使って重心(濃い赤、濃い青、濃い緑)を計算します。

  9. 再度、各データを最も距離が近い重心のクラスターに分類し直す
  10. ランダムにクラスターに分類されたデータを、重心までの距離が最も近いクラスターに分類し直します(=所属するクラスターを変更します)。

  11. 重心の計算と、各クラスターへの分類を繰り返す
  12. 「新しいクラスターに分類し直したデータを使った重心の計算」と「重心に基づく各クラスターへのデータ再分類」を繰り返し、データの動きがなくなったら計算終了です。

■損失関数

k-means法では、n 個のデータ \boldsymbol{x} = (\boldsymbol{x_1}, \boldsymbol{x_2}, \cdots, \boldsymbol{x_n}) に対して、次の式で表される損失関数 J を最小にするようにクラスタリングが行われます。

 \displaystyle J = \sum^{K}_{k=1} \sum^{n}_{\boldsymbol{x_i} \in C_k} d(\boldsymbol{x_i},\ \bar{\boldsymbol{x}}_k)

ここで、K はクラスター数を、C_kk 番目のクラスターを表します。また、d(\boldsymbol{x_i},\ \bar{\boldsymbol{x}}_k) は各クラスターに所属するデータとそのクラスターの重心との距離を表します。

最終的には、\bar{\boldsymbol{x}}_k の動きがなくなるまで計算を繰り返します。このときの値を \boldsymbol{\mu}_k とすると、最も重心までの距離が近いクラスターへの再分類は次の式で表すことができます。

 \displaystyle C_k = \{ \boldsymbol{x_i}\ |\ k = arg\ min_{\boldsymbol{\mu}_k} d(\boldsymbol{x_i},\ \boldsymbol{\mu}_k) \}

■k-means法の使い方

    <メリット>

  • k-means法は階層型クラスター分析よりも計算量が少なく、サンプルサイズが比較的大きなデータを分類するのに適している
  • 
    

    <デメリット>

  • 解析前に、分類するクラスター数を決める必要がある
  • 分類するクラスター数を決めるための明確なルールがない
  • はじめに所属するクラスターをランダムに決めるため、同じデータに対してk-means法を行うたびに最終結果が異なる場合がある
  • 重心の計算を行う際に、外れ値の影響を受けやすい

7. 多変量解析


統計学やデータ分析を学ぶなら、大人のための統計教室 和(なごみ) [業務提携]


【BellCurve監修】統計検定®2級対策に最適な模擬問題集1~3を各500円(税込)にて販売中!

Kindleストアで配信中

統計検定®2級 模擬問題集1

500円(税込)

統計検定®2級 模擬問題集2

500円(税込)

統計検定®2級 模擬問題集3

500円(税込)