ソフトを開発しようと思った動機、背景
日本語入力の辞書を共有するというアイデアは、自分自身が必要に迫られて思いつきました。「東方Project」というゲームのキャラクタ名などの漢字を変換できなかったのです。自分で単語登録をすることが多く、それを「みんなで共有できたら、便利になるのではないか」と考えていました。「これはもしかしたら、いろいろな人に役に立つかもしれない」と思いました。実際に開発をはじめたきっかけは、2007年に情報処理推進機構(IPA)の未踏ソフトウェア創造事業に採択されたことです。そのとき流行っていた「ソーシャルネットワーク」や「ソーシャルブックマーク」にちなんで、「Social IME」と名付けました。
開発中に苦労した点
基本的なIMEとしての動作を再現するのに苦労しました。Microsoft IMEのホットキーなどは自分も知らないようなものがたくさんあり、それを調べて実装したり、IMEの登録を行うときに必要なレジストリの構成を解析したりしました。また、「Social IME」はクライアントだけでなく、サーバのプログラムも必要で、LAMPを使ってWebプログラムを書いたりしました。「予測変換」機能のエンジンは自作していますが、そのために確率的言語モデルの勉強をして、研究しました。
ユーザにお勧めする使い方
「Social IME」は、共有辞書を利用して、普通では変換できない単語を変換できるIMEです。開発の動機となったゲームの用語だけでなく、専門用語や流行語など、さまざまな分野の言葉を変換することができます。まずはこれを使ってみて、便利さを実感してください。
予測変換は、主にタイピングの苦手な初心者の方のための機能です。キーをタイプする回数が最大で26%削減されるので、タッチタイピングができなくても、携帯電話のようにサクサク入力できます。また、ソフトウェアキーボードと組み合わせて使うと、マウスだけで簡単に入力できるようになります。
今後のバージョンアップ予定
ひと通りのデバッグが終わってからVectorに登録したので、今後は新機能の開発を中心に長い目で見て、開発を続けてゆきたいと思います。特に、現在は一部にAnthyを使っている変換アルゴリズムを自前のエンジンに移行することと、クローラを自前で運用すること、そして辞書の管理をWeb上で行えるようにすることなどを考えています。また、変換アルゴリズムをパーソナライズ(学習)に対応させたいと思います。
(nokuno)