JUSTSYSTEMS.

ATOK.com

連載 ATOKの“かしこさ”の秘訣とは?

第4回:ATOKの要、自然言語処理を追求する「ATOK Lab.」にインタビュー

ATOK Lab.(エイトック・ラボ)
共通技術開発部開発グループ
有田圭介

ATOK Lab.チームリーダー。1997年入社。変換系チームに初配属されて以来、ATOKに携わる。ATOK 2007開発の際に設立されたATOK Lab.には、初期メンバーとして参加する。

ATOK Lab.は、ATOK開発の上でどのような役割を担っているのですか?
有田:ひとことで言うのは難しいのですが、ATOKで日本語変換をするにあたり、自然言語処理の研究を行ってそのコア部分の開発を行っているところです。
ATOK Lab.が研究している「自然言語処理」とはいったいなんですか?
有田:「自然言語」というと難しく聞こえますが、ふだん使っている日本語や英語など自然発生した言語のことです。コンピューターの世界には、C言語などのプログラム言語もあります。そのためこれと区別するために、わざわざ「自然言語」と呼んでいるんです。
コンピューターが自然言語に対して何らかのアプローチをすることを広い意味で「自然言語処理」と言います。具体的にはATOKによる「かな漢字変換」は「自然言語処理」の1つです。その他にも、GoogleやYahoo!の検索エンジン、迷惑メールの自動仕分けなどのプログラムでも、自然言語処理が行われています。
ATOK Lab.は、どのようなメンバーで構成されているのですか?
有田:ATOKの開発チームは従来、大きくシステム系と変換系に分けられていました。システム系は、ユーザーが操作の際に触れる「ユーザーインターフェイス」や、ツールなど目に見える部分を担当しています。変換系は、入力された読みに対して変換候補を表示する「変換エンジン」の開発や、変換の洗練などを行います。そして、それとは別に自然言語処理のチームもありました。それぞれ別々に動いていたのですが、ATOK 2007を開発する際に、最先端の自然言語処理の成果を搭載するため、変換系と自然言語処理からそれぞれメンバーを出して構成したのが、ATOK Lab.です。
有田さんは、その中でどのような役割をされているのですか?
有田:ATOK Lab.の中には、比較的独立した立場で自然言語処理の基礎研究を担当する者から、ATOKにプログラムを搭載する者まで、連続した役割の者がいます。私は、それぞれが足並みを揃えて作業できるように調整する役割ですね。
ATOK Lab.の研究は、ATOKにどのように反映されているのですか?
有田:かな漢字変換の一部のアルゴリズム(問題を解決するための手順や手段)に、ATOK Lab.の研究成果が採用されています。ユーザーの方の目に見えない部分なので説明するのは難しいのですね(笑)。ATOKは、1つの読みに対して、実は数多くの変換候補を用意しています。そして、その中でもユーザーの方のために、どれをいちばんに見せればいいのか判断します。そこの部分の仕組みが、ATOK 2007では「ATOKハイブリッドコア」として搭載されました。

より良い変換候補を表示するために、どのような研究をされているのですか?
有田:ATOKや他社のIMEもそうですが、変換できない単語があったときに、単語登録をしていただくことがあると思います。このとき、ユーザーの方に設定いただくのが、「読み」「表記」「品詞」の3つの情報になります。ATOKの標準辞書の単語にも、この3つの情報が設定されていますが、より高い変換精度を求めるためにはこれだけでは足らないんですね。標準辞書なら、変換結果を制御するための、複数の異なる情報の登録が必要なんです。
これらの制御情報は、以前は手作業で設定していましたが、現在は、大量の文書を解析して、統計的に処理しています。おおざっぱに言えば、「文書の中に出てくる回数の多い単語ほど、優先的に変換されるようにする」という感じです。実際には、ただ数えるだけではなく、専用の複雑な計算を行う必要があるため、そのための計算を行うプログラムを作成するのもATOK Lab.の業務になります。
基礎研究では、他にどのようなことをされているのですか?
有田:これも少し難しいのですが、「形態素解析」(けいたいそかいせき)という研究をやっています。これは、読みから漢字に変換するのとは逆で、漢字から元の読みに戻す方法です。そのまま機能として使うわけではありませんが、ATOKの変換精度を上げるために必要な研究なんです。数多くの文章から、読みの情報を再作成して分析する目的などで使用します。「形態素解析」は、本来は「漢字かな交じりの文章を形態素という単位に分割する」という機能で、必ずしも、読みを付与する機能ではないのですが、ATOK Lab.では、読みまで考慮した形態素解析を研究しています。
そういう研究がATOKのかしこさに繋がっているんですね。
他にATOK Lab.の研究成果には、どのようなものがありますか?
有田:「入力支援」の機能も、ATOK Lab.の研究成果ですね。例えば、過去に「徳島(TOKUSHIMA)」と入力したことがあると、「U」が抜けて「とkしま(TOKSHIMA)」と入力してしまっても「徳島」に変換する機能が、ATOK 2011から搭載されています。入力誤りには、ある程度の類型があると言われています。例えば、「A」と「S」のように、隣にあるキーは押し間違えやすいとか、「AB」と「BA」のように、前後をひっくり返す間違いは発生しやすいとか。ただ、実際にどの程度の間違いが発生するかについては、実際に被験者に入力してもらって測定しています。
それ以外にも、「文脈処理」の一部もATOK Lab.の研究成果になります。文脈処理自体は、古いバージョンのATOKからある変換機能で、たとえば、「しゅしょう」という読みを変換するとき、普段は「首相」に変換されますが、スポーツに関する単語が多く変換されているときは、「主将」と変換されるようになります。以前は、この文脈データを人手で作成していましたが、今は ATOK Lab. の統計処理により機械的に生成しています。
そこに研究成果が活きてるんですね。知りませんでした。他にも、ATOK Lab.手がけたATOKの機能はありますか?
有田:ATOK 2012の「AS(Advanced Suggest)エンジン」がそうですね。推測変換と校正支援の合わせ技です。たとえば、「的を射る」(まとをいる)はよく「的を得る」(まとをえる)のように誤用されがちです。ASエンジンは、「まとをえ」まで入力すると、正しい候補の「的を射る」を表示します。エンジンだけ作っても、辞書がなければ意味がないため、今回は辞書チームからATOK Lab.に参加してもらって、ASエンジンに特化した専用の辞書を作ってもらっています。

研究から製品開発の一部までと幅広いですが、他のATOKチームと開発スケジュールの違いはありますか?
有田:ATOK Lab.は、研究成果を反映するコアとなる部分の開発までを行います。それを実際にATOKに組み込み、他の機能との整合性など全体を調整するのが製品開発ですね。スケジュールは、研究に近いところと製品の発売に合わせて動くところの両方です。基礎研究に関連する部分では、研究の成果がある程度まとまったところで製品に反映しています。一方で、毎年のバージョンアップのスケジュールにあわせて少しずつ向上させていく機能もあります。


ATOK Lab.と製品開発チーム打ち合わせ中。進行状況は定期的に共有します。

新しい機能をATOKに組み入れるときに苦労されるポイントはどこですか?
有田:基礎研究の部分では、自然言語処理の解析結果が得られれば、それで良しというわけにはいきません。必ずしも研究結果が、ATOKのかな漢字変換や推測変換でそのまま使えるわけではないんです。文章を作成する際、誰もが学校で習った文法どおりに入力するわけではありませんからね。そのため、意図的に調整することもあります。たとえば、「行く」と「働く」は、どちらもカ行五段動詞です。
 「行かない」「行きます」「行く」「行けば」「行こう」
 「働かない」「働きます」「働く」「働けば」「働こう」
と、同じ活用ですね。しかし、過去を表現する「〜た」のときだけは、「行った」「働いた」と、活用が変わります。これは、「行く」だけが、普通のカ行五段動詞とは微妙に規則が異なるためです。自然言語の文法には、どうしても例外的な規則が含まれるため、そのあたりの調整を別途行う必要があります。
それから、ATOKには毎年新しい機能が付加されます。このとき、既存の機能を邪魔したり、つじつまが合わなくなることをふせぐため、調整するのも実はけっこう苦労しますね。
なるほど。やはり最終的には人の判断はかかせないのですね。ATOKは、パッケージ版以外にも携帯電話やスマートフォン向けのラインアップがありますが、変換の仕組みはどこか違うのですか?
有田:現時点では違っていますね。それは、入力方法の違いを考慮する必要があるためです。パソコンではキーボードを使うことが前提ですが、携帯電話では数字キーを連続して押すため、入力に手間がかかります。スマートフォンのフリック入力などは、携帯ほど不便ではありませんが、それでも、パソコンのキーボード入力に比べると、入力効率は下がります。入力が不便なデバイスでは、推測変換の方が主体になりますが、そうでないときは、一発変換の精度が重要視されるんです。
また、マシンスペックに違いがあるのも、違いが生じる要因になります。パソコン向けであれば、Windows版でもMac版でも、十分な量のハードディスクやメモリを使用できます。携帯電話やスマートフォンは、以前に比べれば格段にスペックは上昇しましたが、それでもパソコンの環境に比べると制約はあります。そこで、辞書に登録する単語の数を調整することになるのですが、このとき、変換エンジンの調整も行います。そうしないと誤変換が増える原因になるんですね。
開発にあたって特に注意していることはありますか?
有田:当たり前のことなのですが、安定した動作になるよう、気にかけています。ATOKは日々使うものであるため、動作が不安定だと困りますからね。あと、ATOKとして重要視されるのは、精度と速度になります。日本語としての正しさを追求しつつ、変換時にもたついたりすることがないようにしなければなりません。
普段の生活の中で、ATOK Lab.メンバーだからこそつい気になってしまう、ということはありますか?
有田:検索エンジンやスパムメールの分類など、日常の中で使われている自然言語処理は、やはり気になりますね(笑)。少し前の話ですが、「ラーメン」というキーワードを登録しておくと、関連する番組を録画してくれるDVDレコーダーが登場しましたが、そのときには、どんな仕組みなのかと気になりました。

確かに不思議ですね。わたしは気にしたこともありませんでした(笑)。ATOK Lab.で、今まででいちばん苦労したことはなんですか?
有田:毎年大変と言えば大変なのですが、のど元過ぎれば熱さを忘れますね(笑)。でも、いちばん大変だったのは、ATOK Lab.を設立した年ですね。最初はどうやって進めていくべきか、右往左往しました。それから5年たって、いまでは効率よく動かしている部分もあります。けれど、それは逆に良くないかもしれないとも思っています。ATOK Lab.は守りに入ることなく、常に新しいことにチャレンジして、右往左往する立場ですからね。
では、逆にいちばんうれしかった思い出は?
有田:製品がマスターアップしたとき、そして発売された日はやはりいつもうれしいですね。それから、ATOK Lab.が社内で賞を取ったことがありました。新しいことにチャレンジしたことが認められたのは、うれしかったですね。
最後に、次の新しいチャレンジとして、ATOKで実現したいことを教えてください。
有田:これから、ATOKを搭載するデバイスも変化していきます。例えば、Windows 8が登場すれば、必ずしもキーボードからの入力がメインとは限らなくなるかもしれません。そのあたりの将来を見越して研究を進めています。遠い将来としては、アタマで考えるだけで入力できるATOKなんてできればいいですね(笑)

PAGE TOP

Update:2012.01.26