Windowsで英文形態素解析ツールTreeTaggerを使う

日本語の形態素解析ツールといえばMeCabが有名だが、英文を形態素解析する場合はTreeTaggerというツールを使うのがメジャーなようだ。

TreeTagger
http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/

手元の環境がWindowsなので、今回はWindowsにTreeTaggerを導入する手順を書く。次回はPythonから使う方法を書く予定。

ActivePerlをインストール

https://www.activestate.com/activeperl/downloads

TreeTagger本体を導入

公式サイトからTreeTaggerをダウンロード

http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/

インストール手順は同梱のINSTALL.txtに書かれているので参照する。

TreeTaggerディレクトリをC:\直下に置く。他のディレクトリに置く場合はtag-*.batファイルの最初にあるpathを書き換えれば動く。

辞書データをダウンロード

公式サイトのChunker parameter files for PC の部分から必要なパラメータファイルをダウンロードして解凍する。

今回は英文を対象としたいので、Englihs chunker parameter fileをダウンロード。

解凍するとenglish-chunker.parというファイルが入っているので、これをenglish-utf8.parにリネームして、TreeTagger/libに保存する。

実行

C:\TreeTagger\bin に移動して、テスト用テキストtest.txtを作成する。

今回は、インストール手順書の中の文、「This is the Windows distribution of the TreeTagger.」を書いてみた

コマンドプロンプトを開き、以下のバッチファイルを実行すると形態素解析結果が表示される。

PS C:\TreeTagger\bin> .\tag-english.bat test.txt
reading parameters ...
tagging ...
This NN/B-NC This
is NN/B-NC is
the NN/B-NC the
Windows NN/B-NC Windows
distribution NN/B-NC distribution
of NN/B-NC of
the NN/B-NC the
TreeTagger NN/B-NC TreeTagger
. NN/B-NC .
finished.

結果の見方

形態素解析の結果については、以下のページが詳しい。

http://computer-technology.hateblo.jp/entry/20150824/p1

 

今後

次回はPythonから使う方法を見ていきたい。

コンピュータサイエンスの論文を毎日紹介するブログ the morning paper

タイトルの通り、コンピュータサイエンス関連の論文を毎日(平日)紹介するブログを見つけた。
the morning paper

基本的に論文のメインとなるところを抜粋しつつ意見を書いているので、アカデミックばりばりでは無いけどもアカデミックな世界でどのようなトレンドがあるのかを押さえておきたいエンジニアに最適だと思う。

一つ一つの記事の分量は少ないので、英語の練習にも使えると思う。
こういった紹介ブログで概要を把握してからの方が、論文も読みやすいのでかなりオススメできる。

Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems を読んだ

前回に引き続き、機械学習関係の本を読んだ。

2つのパートに分かれている本で、前半はScikit-learnを使って線形回帰、SVM、決定木、ランダムフォレストなどの手法が書かれている。
後半のパートはニューラルネットワークとDeep LearningについてをTensorflowで学ぶ形になっている。
Deep Learningの内容はCNN, RNN, Autoencoder, 強化学習、などを2015年くらいまでの論文を参照しながら書かれていてとても参考になった。
そのうちきっと翻訳が出ると思うが、そのころにはこの分野はかなり進んでしまっているかと思うので、読みやすい英語版を今のうちに読んでみることをお勧めする。

それにしても、Scikit-learnとTensorflowはとてもよく出来たフレームワークで、機械学習に挑戦するには良い時代だなぁとつくづく思わされた。

An Introduction to Statistical Learning を読んだ

機械学習について勉強しているのですが、基礎を固めるのに何か一冊良さそうな本を探して、以下の本が評判が良かったので読んでみた。

結論から言うと、これはものすごく分かりやすい。
数学的な内容が多いのだが、説明が上手く、なおかつ詳細は深く追わないという著者の姿勢によって、統計的学習に必要な手法がざっくりどのようなことをしていて、どういう風に使えば良いかが理解できる。

また、Youtubeには著者による解説動画もあるので、本を読んでわからなかった部分を復習するのにとても役立った。
ちなみにPDF版が著者のページに公開されているので、やる気さえあればタダで勉強できます。
(私は無料だと結局やらないので、物理本を買って常に近くに置いておくことでプレッシャーをかけて読み終えました)

通称カステラ本をいきなり読む前にこちらで概要を理解してからの方が、初心者には易しいかと思います。
オススメです。

The Nix

洋書の小説でこれはすごい小説だ、という話を聞いて「The Nix」を購入した。

600ページもある小説なので、最後まで読み通せるか不安ではあったが、読んでみると引き込まれる物語だった。
登場人物はみんなどこかしら壊れており、複数の物語が流れており、時代は前後して、一体この物語はどこへ向かうのだろう?と読みながら気になっていたが、ラストに向けて確かに物語は上手く収束して、これで良かったんだろうと思わせる不思議な力がある。

そのうち翻訳も出るだろうから、ぜひとも読んでもらいたい。

MacをEl CapitanにアップグレードしたらHomebrewが上手くいかなくなった

ふと気が向いてEl CapitanにアップグレードしたらHomebrewが上手くいかなくなった。
どうやら新たに入ったSIPという機能により/usr以下のフォルダの権限を制限しているらしい
以下のコマンドで権限を付与すれば良い。 sudo chown -R $(whoami):admin /usr/local なにやら定期的に権限が書き換わってしまうこともあるそうなので、その場合には定期的に上記のコマンドを実行するなどする必要がありそう。
ちなみにHomebrewの開発チームでも/usr/local以下に置くことを見直そうか検討されているそうです。

Soft Skillsを読み始めた

以下の記事を読んで気になっていたSoft Skillsという本を冬休みで暇なので読み始めた。
プログラマ向けに書かれた「Soft Skills」という本がすごいという話 – サンフランシスコではたらくソフトウェアエンジニア

まだ20章くらいを読んでいる状態だけども、確かに面白い。
プログラマのための自己啓発書といった感じであり、有用な内容も多い。
例えば、フリーランスで働くべきかといったところでは、デメリットも強調して書かれていたり、最初のスタートアップはほぼ失敗するといったことが書かれており、そういうことで悩んでいるのなら一読の価値はある。
目次をパラパラみると最後の方には健康についての記事もあり、今後読んでいくのが楽しみ。
間違いなく近いうちに日本語訳が出ると思うが、英語もかなり平易なので英語の勉強も兼ねて読んでみるのも良いかと思います。

Why I read a book a day (and why you should too): the law of 33% | Tai L…

Youtubeで見たTED「Why I read a book a day」が面白かった。
メンターを見つけることの重要性や、本を1日1冊読むことによる効果など分かっているけど実践できないことの大切さを説いている。
動画の中でも言われていたが、意思を強く持って自分に厳しく生きることは大切なのだな。