2017-08-07 16 views
-3

をK平均I持って次の入力整数ベクトル(例):Javaは - クラスタリング

4 138 233 461 610 621 669 742 814 827 
89 138 334 656 697 810 
138 
138 196 738 
659 738 
4 461 
138 337 756 810 
8 138 196 337 468 663 664 756 809 810 

彼らはすべての整数値[1から850]を含む、すべてのCSVファイルに格納されています。

ベクトルの類似性に基づいてそれらを複数のクラスターに分割したいと思いますが、javaの入力データに対してk-meansアルゴリズムをどの程度正確に実装するのか混乱しています。誰でもチップやコードを手助けしてくれるでしょうか?

ありがとうございます。

+0

をチェックアウト私たちはあなたを助けることができます。私たちはあなたのためのコードをウィットしません。 –

+0

具体的な質問がありますか?お手伝いすることはあまりにも広すぎます。 – Cedias

+0

Ehm、検索エンジンを使用することはできませんか? – AKSW

答えて

0

k平均クラスタリングのための擬似コード

あなたは(あなたのケースベクトルで)入力オブジェクトを比較することができメトリック(のは、このMを呼びましょう)と出力類似性の尺度を持っていると仮定。入力のコレクションの平均値を算出することが可能である

と機能が(のは、このAを呼びましょう)

  1. オブジェクトをランダムデータセットからN項目を選択します。それらはクラスタの新しい中心です(セントロイドと呼ばれます)。
  2. 重心ではない各項目Xについて、各重心までの距離を(Mを使用して)計算し、XとCの間の距離(Mを使用する)が最も小さい重心Cに属するものとしてマークします。
  3. 各項目はセントロイドに割り当てられました。
  4. どちら新しい重心として直接の出力を使用し、または(用いM)の出力
  5. リピートに最も近い実際のアイテムを見つける新しい重心を計算するために平均化関数(A)を使用し手順あなたが実際にコードを持っている場合は、収束までの5まで2(または、あなたの計算の予算が費やされてしまうまで)

またhttps://en.wikipedia.org/wiki/K-means_clustering

関連する問題