word2vec を試す

数分で word2vec の凄さを体験できたので,その手順を残しておく.

導入

  • まず,GitHub から word2vec を clone する
    • dav/word2vec · GitHub
    • よくある手順だと GoogleCode から取得してるみたいだけど,GitHub にコピーがあったのでここから取得してみた
  • 次に demo-word.sh を流すと,Mac だと gzip でエラーが出るので,以下のように scripts/demo-word.sh を修正する.
#gzip -d $DATA_DIR/text8.gz -f
unzip $DATA_DIR/text8.gz -d $DATA_DIR

実行

あとはもう手順通りに cd scripts && sh demo-word.sh すれば word2vec できる.凄いぞ!

Enter word or sentence (EXIT to break): java python ruby

Word: java  Position in vocabulary: 2285

Word: python  Position in vocabulary: 4187

Word: ruby  Position in vocabulary: 7264

                                              Word       Cosine distance
------------------------------------------------------------------------
                                              perl      0.692035
                                               tcl      0.672917
                                        javascript      0.618628
                                         smalltalk      0.617047
                                           servlet      0.594731
                                            plugin      0.593933
                                            applet      0.588450
                                             monty      0.585339
                                           applets      0.585086
                                            widget      0.575702
                                         scripting      0.575238
                                           haskell      0.572876
                                              korn      0.572790
                                        javaserver      0.568392
                                               awk      0.567069
                                               php      0.566549
                                              rexx      0.557813
                                        stroustrup      0.557426
                                          bytecode      0.549844
                                              japh      0.549311
                                            oberon      0.548437
                                           borland      0.544814
                                           gosling      0.544445
                                             corba      0.542755
                                               rmi      0.541766
                                        ecmascript      0.537712
                                               apl      0.537155
                                               csh      0.536993
                                          intercal      0.534393
                                              bash      0.534277
                                           macsyma      0.531976
                                         assembler      0.531416
                                            bjarne      0.529391
                                           toolkit      0.526264
                                                vm      0.526097
                                              lint      0.523971
                                        animations      0.519276
                                               gdb      0.518982
                                        macromedia      0.518255
                                       programming      0.517671
Enter word or sentence (EXIT to break): EXIT

参考書

これ読んでいろいろ試してみようと思う.
O'Reilly Japan - word2vecによる自然言語処理