JavaScriptでK平均法の実演

概要
集合知プログラミング(ペンギンが表紙の本)を読みながら勉強中に書いたコードです。エラー処理とかはあまり入ってません。Firefox3.5, Chrome3.0, IE8で動作確認。


要素数   クラスタ数   X軸重み   Y軸重み    


使い方
小さい●が要素、大きい●が重心です。どちらも枠内にランダムに表示しています。

「実行」ボタンを押すと、重心の移動を1度行います。何度か「実行」ボタンを押すと、徐々にそれっぽいクラスタリングがされていくと思います。「実行」を押しても重心の位置が変わらなくなったら、終了です。

あまり思った通りの分け方がされなかった場合は、「重心のみ再配置」を押すと、重心の初期位置が再度ランダムで設定されます。「クラスタ数」を変更して「重心のみ再配置」をすると、重心の数を変更して再度クラスタリングを実行できます。

「再配置」を押すと、要素と重心の双方が再配置されます。「重み」の数値を増やすと、増やした軸の数値が重視されるようになります。

「要素数」は999が最大、「重心数」は9が最大です。
戻る    ご意見、ご要望