2008-11-14から1日間の記事一覧

3章 おまけ2 日本語blogの階層的クラスタリング修正、できたクラスタを見てみる

return list.uniqだった所を修正 http://www.bitbucket.org/shokai/collective-intelligence-study/src/tip/03/generatefeedvector-jp.rb def getWordsByKind(node, kind) list = Array.new while node do f = node.feature.split(/,/) if /#{kind}/ =~ f[0]…

3章 おまけ 日本語blogの階層的クラスタリング

日本語データを扱うなら、テキストファイルじゃなくてちゃんとRDBに保存した方が良いですね。区切り文字とかが面倒をかけてきて、今回はクロールしてきたデータの一部を手動で修正してしまった。 できた。→大きいサイズ http://www.flickr.com/photos/shokai…

3章 その15 K平均法でblogをクラスタリング

データ群をK個のクラスタに分けるために、「いちばんしっくり来るK個の重心」を再帰で見つけるK平均法を使う。 このページのインデントわかりづらくてイライラした。 このアルゴリズムは階層的クラスタリングより全然速い。 p.47~48より clusters.rbにkclust…

配列の初期化と参照

p.47でK平均法をやっていて、2次元配列(配列の配列)が必要になった。 ループで空の配列を作っているが bestmatches = [[] for i in range(4)] Rubyだと、Array.newの引数で要素数と初期値を指定できる >> arr = Array.new(3, 10) # 要素数3で初期値10の配…