アルゴリズム (K-means法クラスター分析)
K-means法クラスター分析は最小二乗和を利用して観測グループに分類します。
欠損値がある観測データはK-means法クラスター分析を行う前に除外されます。
変数pでn個の観測点を持つ行列Xの場合、初期のクラスター中心はKxp行列により特定されるか、行列Xから既に定義されていたクラスター数より選ばれます。
- 観測データから初期クラスター中心を設定します
- 初めのK個の観測データはクラスター中心として割り振られています。
- 残りの観測データでループを行い、現在のクラスター中心を置き換えることができるか試します。
-
-
- もし観測点とそれに最も近いクラスター中心の距離が2つの直近のクラスター中心(クラスターiとクラスターj)よりも離れている場合、その観測点がクラスターiまたはjのうち、より近い方のクラスター中心を置き換えることになります。
- そうでないとき、もし観測点と2番目に近いクラスター中心の距離が2つの直近のクラスター中心(クラスターiとクラスターj)よりも離れている場合、観測点は最も近いクラスター中心を置き換えることになります。
-
- 観測点を最も近いクラスターに所属させます。
- 各観測値は最も近くにあるクラスターに分類され、その観測点とクラスター間の距離はその2点間のユークリッド距離で計算されています。
- i 番目の観測点がk番目のクラスターに置かれた場合、その観測点とk番目のクラスター間の距離は\(\bar{d}_{ik}=n_k/(n_k-1)d_{ik}\)のように修正されます。また、その観測点とほかのクラスターとの距離は、\(n_k\ \)と\(n_j\ \)がそれぞれk番目とj 番目のクラスターの観測数である場合、\(\bar{d}_{ij}=n_j/(n_j+1)d_{ij}\)のように修正されます。もし観測点とi 番目のクラスター間の修正距離が最小でかつ\(l \ne k\ \)である場合、その観測点はk番目のクラスターではなくi 番目のクラスターにおかれます。
- 各クラスター中心はそのクラスター内の観測点の平均に更新されます。
- クラスター内平方和は次のようになります。
- \[\sum_{k=1}^K \sum_{i\in S_k} \sum_{j=1}^{p} (x_{ij}-\bar{x}_{kj})^2\]
- ここで、\(S_k\ \)はk番目のクラスター内の観測点で、\(\bar{x}_{kj}\ \)はk番目のクラスターにあるクラスター中心のj 番目の変数に当たります。
- 更新されたクラスター中心を使うことでこの手順を繰り返し、各観測点をクラスターに所属させてクラスター中心も更新します。反復は最大反復数に到達するか、2回の連続した反復内でクラスター内二乗和がしきい値よりも小さくなった時に終了します。最後の反復の時に更新されたクラスター中心は最終クラスター中心と呼ばれます。
- Originのデフォルト最大反復数は10に設定されています。
- クラスターからの距離
- i 番目の観測とk番目のクラスター間の距離はユークリッド距離を使用して計算されています。
- \[S_k\ \]