前回は、筆者が本格的にMosesに取り組むことになったときのお話をしました。今回は、いきなり遭遇した最初の壁のお話です。
Linuxかぁ
とりあえずの目標は、2010年10月末までに、Mosesが動く環境をセットアップすることです。
第1回でお話したとおり、MosesはLinuxじゃないと使い物にならないというのは、既にわかっていました。筆者は、新人時代(1990年代半ば)に商用UNIXのサーバー管理者をした経験があるので、全くわからないわけではありませんが、Linux自体はほとんど触ったことがありませんし、UNIXの知識もすっかり錆び付いています。そんなわけで、まずは近所の本屋で初心者向けのLinuxの本を買い、通勤途中に読むところから始めました。「あー、あった、あった」とか「へぇ、最近はそーなんだ」とか、完全に浦島太郎状態です。
筆者とは違い、同僚のFさんは比較的Linuxに詳しいので、Fさんが先行してセットアップを行ない、そこでわかった手順どおりにセットアップを進めることにしました。しかし、セットアップを始める前に、まず、数あるLinuxの中から、どのディストリビューションのどのバージョンにするのかを決めなければいけません。ディストリビューションって何だ? という筆者にとっては、この時点で挫折しそうです。。
Fさんが2010年3月にMosesをセットアップした際、奈良先端科学技術大学院大学から提供されていた各種ツールがそのまま使えるという理由で、Ubuntuを使ったのですが、それも踏まえて、今回もUbuntuでセットアップすることにしました。バージョンは、最新版で、かつ、サポートが長そうな10.04LTSに決定。
これで、ようやくOSをインストールできるわけですが、UbuntuのJapanese Teamが日本語化したインストーラーは32bit版しかありません。4GB以上のメモリを使いたかったので、64bit版を動かしたいのですが、素の英語版をインストールし、あとから日本語化する必要があります。Ubuntuのインストール自体は、大したオプションもなく、割とすんなりできましたが、それでも、調査を含めると、Ubuntuのインストールだけで軽く数日が過ぎていきました。
コンパイルが必要なの?
次は、Mosesと各種ツールのインストールです。Mosesには、いくつかの補助的なツールが含まれていますが、それ以外にも自然言語処理系のツールを組み合わせないと、動かないようです。でも、この時点では、何が必要なのかがわかっていませんでした。
先行してセットアップしていたFさんは、奈良先端科学技術大学院大学のThe Ubuntu NLP Repositoryというところから、Ubuntu 10.04LTS用のものを全て指定し、エラーでうまく動かないものを片っ端から調べてくれていました。
Linux素人の筆者は、てっきり、ボタンを順番にクリックしていけば、自動でインストールされるくらいに思っていたのですが、Fさんの説明を聞いて驚愕です。単にソースファイルが提供されているだけで、自分でコンパイルするんですね。。コンパイルなんて、新人研修以来です。例の初心者向けのLinuxの本を片手に、どうにかコンパイルしては、エラーが出るたびに自分である程度は調べるものの、最後はいつもFさんに見てもらう。そんなことを繰り返す日々が続きました。
救世主
あぁ、Linuxって使いにくい。。と、苦戦していた10月下旬のある日、同じ部署のマネージャーであるSさんから、こんなメールが届きました。
Ubuntuって言ってましたよね? こんなの有るみたいですよ。
すみません! ちょっと疲れたんで休憩してたんです。すみませんすみません!
実は、Ubuntuの見た目をMacっぽくするMacbuntuというフリーウェアでした。筆者は、Mac暦20年の筋金入りのApple教信者なのですが、とにかく、Macと対極に位置するとも言えるLinuxの文化に、かなり参ってました。せめて見た目だけでもという軽い気持ちでMacbuntuを入れてみたのですが、この日を境に操作性が激変しました。Fさんは軽い冗談で紹介してくれたようなのですが、少なくとも操作で迷うことはなくなり、生産性も劇的に向上したとお礼を言ったら、かなり恐縮されてしまいましたが、Linuxに対する心理的な負荷がずいぶんと減りました。
また、不慣れだったコンパイルにも、徐々に慣れてき始め、セットアップの手順も、Mosesのサイトに書かれたものに従えばいいということがわかってきました。
こうやって、周りの人に助けられながら、どうにか当初の予定通り、10月末までにMosesのセットアップが完了しました。ちなみに、最終的には以下のものをインストールしました。
- Ubuntu 10.04LTS
- Moses
- Boost
- GIZA++
- Chasen (結果的には未使用)
- Mecab
- libiconv
- IPA辞書
- IRST (結果的には未使用)
- SRILM
- Macbuntu (Mosesとは直接関係ない)
次回は最初の疑問です。
[注] この回顧録は、かつて勤めていた会社で書いた連載を復元したもので、某I社の現在の状況を反映している訳ではありません。