日本人は実は結構すごい
みなさんは日々、パソコン、携帯電話、スマートフォンなどで日本語の入力を行っていることと思いますが、それがどのようなしくみでできているのか、考えてみたことはありますか?
日本語には、ひらがな、カタカナ、漢字があり、漢字に至っては常用漢字だけでも2136文字もあります。これだけの文字を100鍵足らずのキーボードから入力するわけですから、アルファベットのように直接1文字1文字にキーを割り当てるわけにはいきません。
このため、一般的なパソコンでは次のような手順で日本語を入力されているのではないでしょうか。
- ① キーボードからローマ字で「nihonn」と打ち込む
- ② 「にほん」と表示される(未確定の状態)
- ③ スペースキーを押す
- ④ 「日本」「二本」などの候補が表示される
- ⑤ エンターキーを押して確定する
たかだか文字を入力するために、日本語ではこのような「かな漢字変換」と呼ばれる手順を踏む必要があるのです。実はこれ、世界的に見てもかなり煩雑な作業です。比較として、英語の文字入力を同様に見てみると、
これで終了です。大文字のJを入力するためにシフトキーを押さなくてはいけませんが、それ以外の手間は特に見当たりません。このような「日本語入力」という複雑なシステムを、我々日本人はさも当然のこととして受け入れ、使いこなしながら日本語の文章を日々入力しているのです。
かな漢字変換のすごさ
その中身はどうなっているのでしょうか。再び先ほどの例に戻りますと、①から②はローマ字で入力された文字をひらがなに置き換えるしくみがあればできそうです。③から④も、「にほん」という文字列に対しての変換候補をあらかじめ用意しておけば問題なさそうです。「どこがすごいんだ?」と思われるかもしれません。
そこで、より実際の利用に近い状況を想定してみましょう。「わたしはにほんにすんでいます」と一続きに入力してからスペースキーを押して変換候補を眺めてみましょう。直前によほどおかしな文章を入力していなければ「私は日本に住んでいます」というもっともらしい変換候補を表示するはずです。
コンピュータはなぜ「輪他紙歯二本二寸出意間酢」のような支離滅裂な文字ではなく、正しくそれらしい変換候補を導き出せたのでしょうか? それも、一瞬と言っても差し支えない速度で…。
実は初期のかな漢字変換では、1文字ずつ読みを入力して漢字に変換をしていました。その後、文節単位で入力・変換ができるようになり、そして現在のように文節まで自動的に判別して切り分け、さらには前後の単語のつながりなども考慮して変換候補を表示するようになりました。現在の日本語入力システムは、ただでさえ面倒な日本語入力をより快適に使えるものにするための、長年に渡る技術者たちの知恵と工夫とアルゴリズムとデータ構造の洗練の積み重ねの産物なのです。
人にやさしく、より早い変換入力を目指して
そしていま、携帯電話やスマートフォンといった、より非力な環境でも快適な日本語入力ができることが求められており、そして実現しています。最初の数文字で残りの入力を予測する「予測入力」はその代表例です。予測入力では、極端な例ですと「お」とだけ入力した時点で「おはよう」などの変換候補を表示してくれます。
『日本語入力を支える技術』は、このような日本語入力システムの中身を技術者向けに噛み砕いて紹介する解説書です。アルゴリズムの話など、数式混じりの難しい内容も書かれていますが、日本語に代表されるような自然言語(人間の使う言葉)をコンピュータがどのようにうまく扱っているのかを知ることのできる一冊となっています。