word2vecでパズドラのキャラを足し引きする(途中)
word2vecでパズドラのキャラを足し引きする(途中)
word2vecの記事呼んでたら楽しそうだったので、自分でも動かしてみようと思いました。 まだ途中です。
簡単。OSX marvericksでやっています。
svn co http://word2vec.googlecode.com/svn/trunk/ word2vec cd word2vec make fatal error: 'malloc.h' file not found
となるので、各インクルード箇所を以下のように変更しました。
#ifndef __APPLE__ #include <malloc.h> #endif
をすると何やらリモードからデータをダウンロードする模様。 その様子が文字化けだらけでビビる。 http://i.gyazo.com/2de48e515b351c5ff436cec7f21d7346.png
Starting training using file text8 ERROR: training data file not found!
と出て、止まる。ダウンロードしてきたファイルはtext8.gzなので、それの解凍に失敗したってことなのかな。
./demo-word.sh ./demo-phrases.sh
./demo-analogy.sh paris france berlin
と出てくる。これが パリ - フランス + ベルリン = ドイツ ってこと?なんか学習データが微妙なのか、いくつか試したけど、そんなに笑える結果は出なかった。
ここからはあんちべさんの記事 をまるパクリしました。
まず2chからのデータの取得ですが、あんちべさんのスクリプトまんま走らせたら文字コードまわりでうまく動かなかったので、 心を無にして動くまで適当にいじりました。 ソースはこちら
python kankore.py http://anago.2ch.net/ iPhone/ パズドラ > pazudora.txt
パズドラ用の辞書をまだ作っていないので、今日はここまで。 一応ipadicで最後まで試してはみた↓
>>> s(['サタン'],[],10) 順位 キャラ名 類似度 1 バステト 0.697723865509 2 ラー 0.648896217346 3 麒麟 0.647670984268 4 ホルス 0.627628624439 5 鉄板 0.622311532497 6 クシナダ 0.616151452065 7 イザ 0.60861903429 8 アヌビス 0.590011835098 9 ゼウス 0.573283433914 10 キルア 0.572768509388
うむ・・・人気のリーダーが並んだというかんじだな。。