mixi の fujisawa さんによる、C++ で書かれたクラスタリングツール bayon がシンプルイナフで猛烈に素晴らしくてクールです。
- 軽量データクラスタリングツールbayon (mixi Engineers' Blog)
http://alpha.mixi.co.jp/blog/?p=1049
- チュートリアル(Tutorial_ja - bayon)
http://code.google.com/p/bayon/wiki/Tutorial_ja
詳細は上記URLを見てもらうとして、
たまたま手元に250万件のデータ(ラベル+特徴語リスト)があったのでさっそく試してみました。
ドキュメント数250万件。
各ドキュメントの特徴を現すキーの平均は3.29個。
実行結果(実行時間)はこんな感じでした。
最後の「250万件 to 10万クラスタ」の実行時間(※)だけは、出力後暴走してしまったので、出力ファイルのタイムスタンプからの推測ですが、どれも高速です(まあ、メモリは7GBくらい食いますが)。
CGMがらみのデータだったらほとんどのタスクはこの bayon で十分なのではないでしょうか。
すばらしすぎます!
これからもこのようなシンプルで「使える」ツールを作っていって欲しいです!
そういえば、bayon の読みは「バヨーン」かと思ってたけど「バイヨン」みたいです。
■Toby Segaran (著), 當山仁健, 鴨澤眞夫 (訳) / 集合知プログラミング
■集合知イン・アクション
- 軽量データクラスタリングツールbayon (mixi Engineers' Blog)
http://alpha.mixi.co.jp/blog/?p=1049
- チュートリアル(Tutorial_ja - bayon)
http://code.google.com/p/bayon/wiki/Tutorial_ja
詳細は上記URLを見てもらうとして、
たまたま手元に250万件のデータ(ラベル+特徴語リスト)があったのでさっそく試してみました。
ドキュメント数250万件。
各ドキュメントの特徴を現すキーの平均は3.29個。
実行結果(実行時間)はこんな感じでした。
使ったデータ数 | クラスタ数 | 実行時間 |
---|---|---|
50万 | 1万 | 約5分 |
100万 | 1万 | 約12分 |
250万 | 1万 | 約37分 |
250万 | 10万 | 約40-50分(※) |
最後の「250万件 to 10万クラスタ」の実行時間(※)だけは、出力後暴走してしまったので、出力ファイルのタイムスタンプからの推測ですが、どれも高速です(まあ、メモリは7GBくらい食いますが)。
CGMがらみのデータだったらほとんどのタスクはこの bayon で十分なのではないでしょうか。
すばらしすぎます!
これからもこのようなシンプルで「使える」ツールを作っていって欲しいです!
そういえば、bayon の読みは「バヨーン」かと思ってたけど「バイヨン」みたいです。
■Toby Segaran (著), 當山仁健, 鴨澤眞夫 (訳) / 集合知プログラミング
■集合知イン・アクション