コマンド ラインで ELKI k-means クラスタリングを実行するのが好きです。
Rプログラミングに比べて実行時間が短すぎるようです。R で k-means クラスタリングを実行しようとしましたが、約 100 秒かかりました。また、k=5、k=10 などでも変化はありません。
file.tsv
60,000 行 25 列あります。
START=$(date +%s)
k=5
java -jar elki.jar KDDCLIApplication \
-dbc.in "file.tsv" \
-dbc.parser NumberVectorLabelParser \
-parser.colsep "\t" \
-algorithm clustering.kmeans.KMeansLloyd \
-kmeans.k $k \
-kmeans.initialization KMeansPlusPlusInitialMeans \
-kmeans.maxiter 9999 \
-resulthandler ResultWriter -out.gzip false \
-out output/k-$k \
END=$(date +%s)
DIFF=$(( $END - $START ))
echo "It took $DIFF seconds"
出力は"It took 5 seconds"
START=$(date +%s)
k=10
java -jar elki.jar ...
...
END=$(date +%s)
DIFF=$(( $END - $START ))
echo "It took $DIFF seconds"
このケースk=10
も"It took 5 seconds"
です。
クラスタ サイズに変化がないのはなぜですか? コードに問題はありますか?