(2)k-means法(k平均法)

クラスタを認識させるためにアルゴリズムが必要になる。

クラスタリングには、似ている組み合わせを順番にまとめていく階層的クラスタリングや、指定した距離内の密度が最大化するようにクラスタ数を求める密度ベースのクラスタリングなどがある。

代表的なアルゴリズムは、k-means法である。

k-means法は、クラスタの重心(セントロイドと呼ぶ)からの距離をベースに各データをk個のグループに分割する。

k個のグループに分けたいことを指定する。

k-means法のグルーピングするステップは以下の通り。

1.データの中からk個(ユーザ任意の数)の点をランダムに選出し、その点をセントロイドとする。

2.与えられた各データを、それぞれのデータから最も近いセントロイドと同じグループに振り分ける。その結果、全データがk個のグループに割り当てられる。

3.2の手順で生成したk個のグループそれぞれにグループ内のデータの重心を新しいセントロイドとする。

4.2~3の手順を繰り返す。繰り返し終了後、所属クラスタの変化がなくなるまで、最初に定義した回数だけ繰り返すなど

k-means++法は、初期のセントロイドを互いには荒田市に配置する手法で、インスタン作成時の引数initを、init=k-means++と指定するだけで使用することができる。