Google IME の次は Google 日本語スペル訂正が来そう

Google IME がリリースされたそうで、Twitter でも #googleime というハッシュタグで祭りになっているようである。リリース文を見ると @taku910 さんと @komatsuh さんが主に関わっているようである。

以前Google サジェストのローマ字検索機能 = Google IME でも書いたことがあるのだが、これが出る予兆はいろいろあって、 2007年秋に Google 日本語 N グラムが出る(もっと言えば2007年3月に言語処理学会で「N グラムデータを出すならどういう形がいいか、どういう用途で使うか」という特別セッションがあった)ときから想像できたことであり、taku さんや komatsuh さんくらいのエンジニアであればエンジンを作るのには数日もかからないであろう。

Social IME 開発者の nokuno さんもGoogle IMEという可能性で今年の1月に書いているが、

Googleのパワーを借りたIMEなので、新変換エンジンはGoogle IMEと呼ぶべきものになっています。大規模な統計量と、シンプルな検索プログラム、それにちょっとした確率論の基礎知識があれば、個人でも簡単に高性能なIMEを作ることが出来ます。逆に、単語の品詞体系や語順のような日本語の文法についての知識はまったく必要ありません。

ということで、要点は「統計的かな漢字変換エンジンは個人でも簡単に作れる」のである。(自分で言うのはなんだが自分は nokuno さんより1年前に ChaIME を作ってみたのに、これまで全然引用してもらってないのがさみしい……)

変換の特徴としては名詞に強いということかな。予測が多いので、これを否定的に見るか肯定的に見るか……。あと、語彙に関しては台湾で使われている単語がよく変換できるそうだが、クロールしたデータの特徴だろうか。

技術的なことは想像にしかならないので、あとはだらだらと感想を述べてみるが、

当時、工藤は Googleの「もしかして」機能を担当していました。スペルミスの多くがインプットメソッドの誤変換に起因していることと、チームで開発した「もしかして」システムが高い精度でそれらを修正していく様を目の当たりにして、Google 日本語入力の可能性を確信しました。

これは Google IME の仕組みが「Google サジェスト」や「もしかして」機能と一部のモデルをおそらく共有しており、サジェストや「もしかして」でうまく行っているから IME でもうまく行くだろう、という見込みがあったのだと思う。もちろん、それはそれなりにうまくいくことは ChaIME でも示したし、こうやって一般の人が使えるようになるまで細かいところも含めて調整をするのがとても時間と根気と技術のいることだと思うので、20%プロジェクトの枠内で作られた Googler のみなさんはさすがだと思う。

同じ時期に、別のチームにいた小松も、オープンソースソフトウェアの日本語入力システムの作者であり、インプットメソッドの開発を希望して Google に入社したことから、Web 上の大量のデータとサジェスト機能を活用した Google ならではのインプットメソッドのアイデアを温めていました。

小松さんが IME 開発を希望して入社されたということは知らなかったが(笑)、Googe でのインターンシップ中の仕事の内容を聞いたりしたら、まあ可能だろうというのは想像に難くない。小松さんが作っていた日本語予測入力の PRIME はかなり既存の辞書と品詞に頼っている(ハードコードされている部分が多い)のだが、大規模データと統計的手法を組み合わせれば、PRIME をあっさり超えることは可能だろう。

このように工藤と小松の二人で始めたプロジェクトですが、徐々に 20% プロジェクトとしての貢献者も増え、しばらくたつと、Anthy, WinAnthy, scim-skk, skkime, AjaxIME, PRIME, MeCab などの日本語処理システムや日本語入力システムの開発に携わっていたエンジニアや Windows の TSF での開発経験のあるエンジニア、各種オペレーティングシステムの開発経験者がこのプロジェクトに様々な形で参加するようになっていました。今回お届けする Google 日本語入力は、このような自然言語処理や各種プラットフォームの開発経験者たちのノウハウが凝縮されたものとなっています。

自然言語処理の技術は「役に立つ」ということを一般の人に知ってもらえるのはとても喜ばしいことなので、とても嬉しい。しかし、上に挙がっているソフトウェアの名前を見ると、誰が Google に入っているのか分かるのだが、みなさんの事前知識とどれくらい一致しているであろうか (笑) オープンソースかな漢字変換エンジンの開発者はほとんど Google (か Yahoo!)に行っているのだが、そのうちの1人でも MS に行っていれば話は違ったのだろうなぁ……。

ここからが本題なのだが、Google検索エンジンで現在提供されているサービスで、他の技術に応用できそうなものといえば、やはりスペル訂正であろう。打ち間違えてもかなりのものが、正しい表記に直されて検索してくれるのだが、ユーザは思いのほか打ち間違いをするものであり、検索エンジン会社はどういうバリエーションの打ち間違えが来るのかログを見るとわかるので、これを使ってスペル訂正エンジンをリリースできるはずである (もしくは GMail に組み込んで自動で下記間違いを直したりできるはず )。

英語のスペルチェッカに比べて日本語のスペルチェッカが使われないのは、(1)我々が日本語ネイティブなのでそんなに打ち間違えない(2)既存の日本語スペルチェッカでまともな精度のものがない(3)かな漢字変換の段階で間違いに気づいて手動で訂正するので問題になりにくい、という3点があると思うが、これだけの大規模なデータを持っている Google なら、使える精度のスペルチェッカを作れると思うし、さらに言うとこれで IME も作ったので、IME に組み込むこともできるというアドバンテージがある。

とはいえ20%ルールの下でやるのは大変だろうし、どこまで可能か分からないが、個人的には今後の発展を大いに期待しているところである :-)

そういえば @tkng さんが PFI セミナーでかな漢字変換について1時間ほどセミナーをした動画が公開されていて、けっこうおもしろかったので、こういう分野に興味がある人は見てみるといいと思う。