Microsoft Office IME 2010 はガチ

ガチとはガチンコの略で「真剣勝負」を意味したそうだが、Microsoft Office 2010 IMEが東方に強いと言う噂を聞いたので検証してみたという話を目にしたので、Microsoft Office 2010 ベータ版ダウンロードから Office Professional 2010 を取得してインストールして試してみた。無料のプロダクトキーがダウンロードページに書いてあり、2010年10月31日まで使用可能なようだ。

上記ページには

Twitterのアカウントで、MS-IMEへの不満を書いたら、MicrosoftIME開発をしている人 (自称) にMS-Office 2010のIMEを勧められ、更に"Twitter / Takashi umeoka: @rh_kimata 東方に強いという、うわさもありますよ"と言われたので、検証してみた。

と書いてあるが、Twitter でつぶやいていると開発者の人から直接メッセージをもらえることもあるというのはいい時代である。ちなみに関係者としては自分の知る限り @yoshiharusatoさん(こちらのインタビューにもあるが、日本の MS のオフィスサービス開発統括部インプットメソッドテクノロジー、シニアマネージャの方である)と @IME_UME さん(梅岡さんのアカウントのほうが IME に関する話題が多い)のアカウントがある。ハッシュタグ#IME2010 のようだ。

実際試してみたら、固有名詞はおもしろいように入るなー。関ジャニ∞とか(これはことえりでも入るが。知らない人向けに解説すると、これは「かんじゃにえいと」と読むらしい)。ちなみに「東方用語」というのは「東方 Project」というシリーズもののゲームがあるのだが、そのゲームの中で出てくるキャラクター名などのことである。難読用語が多いので、入力したい人は苦労するらしい(これが Social IME の開発動機の一つであったというのは有名な話である)。紅白に出ていた東方神起のことではない。

さらに調べてみるとIMEの複文節での変換精度比較をされた人がいて(こうやって散発的に、トップの変換結果の精度を計るのがどれくらい意味あるか、という問題はあるのだが)、結果もコメントも自分的には納得。

  • Google日本語入力は固有名詞に強いが、複数文節での変換精度ではMS-IME2010やATOK2009に劣る
  • MS-IME2010は素の変換精度としてはATOK並みのレベルまで到達しているように思える
  • ATOK2009は変換精度こそMS-IME2010に並びかけられているが、誤入力の補正や誤変換の指摘機能などで一歩抜きんでている

ATOK は細かいところの作り込みが非常に丁寧で、長く使うとよさが分かる。30日試用版もあるので、まだ使ったことがない人、もしくはだいぶ前に使ったきりの人は、使ってみるとよいと思う。

また、Google 日本語入力はすごいと思った人は、上記の Office 2010 β版をインストールして、Office IME 2010 を使ってみるといいだろう(これだけのために700MB近くダウンロードするのは抵抗あるかもしれないが……)。

自分の性格的には細かく作り込む忍耐力がないので着実に改善されている方々(Google 日本語入力を含む)に頭が下がる思いであるが、自然言語処理の一研究者としては、こういう低レイヤー(形態素解析レベル)の技術が成熟しつつあるいま、構文解析とか意味解析とかいったようなレイヤーの技術をどのように使ってもらうのか、真剣に考えたほうがいいように思う。

コンピュータに意味を分からせるのは非常に無理がある相談なのだが、人間と違ってコンピュータはどれだけ文章を読ませても疲れない、というのは、人間よりコンピュータがもっとすごいことができる可能性を示している(すでに検索エンジンを見たら、隣の人とか両親に「これってどういうこと」と聞くより遥かに役に立つ結果が得られることで、みなさん実感しているとは思うが)。

たとえば人間が一生に読める本の数は、読書家で知られる立花隆で現在7万冊らしいが、単行本1冊に入っている文字数は12万字と言われている。1文字2バイトだとすると 240,000B = 240KB である。7万冊というのは 240*70,000 = 16,800,000KB = 16,800MB = 16.8GB である。彼が今後どういうペースで読むか、もしくは買った本全部読んでいるのか知らないが、せいぜい生きている間に読める日本語の分量は30GB程度であろう。

一方、Google 日本語Nグラムは Google が2007年当時持っていた日本語のウェブデータであるが、2,550億単語あったそうだ。少なく見積もって1単語2バイトとすると、128GBになる。すなわち、Google立花隆の4倍賢くなる可能性がある(適当なこと言っているけど。あと、ウェブのデータは書籍と比べると日本語が砕けすぎているという話もあるのだが、それはきっと Google 書籍検索の計画により、本も全部読んでしまうのであろう)。

データが増えたらそれを使うだけの技術も必要なので、なかなか難しくはあるのだが、自然言語処理の人たちは、増えたデータをうまく使いつつ、意味のあるアプリケーションを作っていかなくてはいけないんではなかろうか。実際に手を動かすのは、自然言語処理修士取って就職したエンジニア、というのでもいいとは思うけど、そういう人たちが「これは作ってみよう」と思うようなコンセプトのあるものを作るとか、そうでなければ地道にデータとツール(ライブラリ)を整備するとか。

そういえば、Windows 7 をインストールしていて気がついたのだが、MS の Windows 7 のインストラクションのページは恐らく機械翻訳の結果である。たとえば、Windows Vista から Windows 7 へのアップグレードのチュートリアルを見てもらえれば、ところどころ変なところがあることに気がつくだろう。それがルールベースのものなのか、Microsoft Research で研究されている統計ベースのものなのかは分からないが、以前あった「自動で翻訳された結果なので、間違っている可能性があります」という但し書きが取れる程度にはかなり読める日本語になっている。というか、ほとんどの人は機械翻訳の結果だと思わないんじゃなかろうか。あの規模で機械翻訳を実用化している企業として、Microsoft はもっと評価されて然るべきだと思う。

もっとも、Microsoft ほど、自社内で他言語に翻訳してきた、そして今後も翻訳したいリソース(マニュアルとかヘルプとか)がある企業もそんなにたくさんあるわけではないだろうし、こういうデータ、そして欲求のある分野・企業を見つけて自然言語処理の技術で解決していけるというのは、研究者冥利に尽きるなぁ。