久しぶりにPythonで機械学習的なことをやってみました.今回は教師なし学習としてクラスター分析のソースコードを書いてみて色々試しました.
ソースコード
こんな感じで書いてみました.
上のソースコードはファイル出力とか省いていますが,省かないで実際に使ったデータセットなども含めた版はこちらです.(自分用)
実際にやってみる
次のような明らかに3分割されたデータを使って,3つのクラスターに分けてみました.
クラスターに分類た結果は次のとおりです.それぞれのクラスターに,赤,青,緑で色を付けています.
まぁ,これは簡単だから出来て当たり前ですね.
こんなデータはどうだろうか?
次に,こんな風に円状の塊のそとにデータ群が囲っている状況を考えます.これを2つのクラスターに分けるとどうなるのでしょうか?
下が,分けた結果です.真ん中と外で別れるものかと思ったらそうではないですね.
実はこの円形のデータセットは,ネットでKmeans法を調べると例題としてよく乗っているやつです.なんでもカーネル法を使うと上手く分けられるそうな.また後日試してみます.
参考
検索してすぐ出てきたやつを参考にしました