本文へジャンプ

2突破口を開いた機械学習

「機械学習に足りないものは何か?」

機械学習―人から出た言葉を大量に集めて観察し、統計的手法だけで言語の総体をとらえようとする挑戦。だが、それだけでは限界が見える。

確率モデルによる機械翻訳は、具体的にはどういうふうに実現されているのですか?

いま観察しているパラレルコーパスの背後に、その対応関係を支えている一般的な対応モデル―つまり確率的なモデルがあると考えて、いま観察しているパラレルコーパスの出現確率が最大になるようにこの確率モデルのパラメータを調節してあげる。これが翻訳での機械学習です。

このような確率モデルが学習できれば、次には入力文(原文)を与えて、この入力文を条件とした条件付き出現確率が最大になる出力文(翻訳文)を選べば、翻訳ができるというわけです。可能性のある出力文は非常に膨大です。そこで、出現確率が最大の出力文を選択するために、将棋や碁の対戦プログラムの場合と同じような探索アルゴリズムが使われます。

図:機械翻訳のためのパラレルコーパスを使った学習

つまり統計的な機械翻訳というのは、2つの言語の対応をとる確率モデルの学習と、ゲームと同じような発見的な探索手法の組み合わせで実現されています。人間が作るような文法的な規則はなくて、翻訳の規則はパラレルコーパスというデータから自動学習される確率モデルで置き換えられているんです。

さきほど、文に名詞句や動詞句といったタグを付けてお手本を与えると言いましたが、機械翻訳の場合にはお手本はわざわざ作らなくてもよくなります。つまり、人間の翻訳家が翻訳した結果がパラレルコーパスになりますから、それをお手本にして機械学習ができます。

計算機の性能向上と大量に出現したデジタル文書は、機械学習の追い風になりましたね。

そうそう。デジタル文書の出現で、機械学習に必要な大量のテキストデータが非常に簡単に手に入るようになりましたから。たとえば、同じトレーニング集合を使って機械翻訳の性能を競うとき、米国のグループは1千万組の文対を用意します。今年(2011年)は日本のグループも日本語と英語の特許文書の翻訳競争をしましたが、そこでは300万組の文対が用意されました。

このように、いわば力任せといった感もある機械翻訳ですが、特に大規模な計算機パワーを持ち、データを大量に集められるグーグルやマイクロソフトなどには向いています。実際、彼らはこのような方法で大きな成果を上げてきました。でも僕は、ずっとこの方法だけをやっていても駄目だと思うんです。

これは、データだけから言語の隠れた規則性のすべてを取り出そうとする人たちと議論しなければいけないけれど、いろいろな環境と文脈のなかで使われている言葉をそのまま混ぜて巨大なデータを作ったとしても、そこから言語の総体がとらえられるかというと、それは幻想ではないでしょうか。

観察データには、言葉が使われる環境や場面といった言葉の使い方を左右する要因が含まれていません。そもそも、人間の脳がもつ構造とそれによって規定されている処理機構のようなものが、機械学習だけでとらえられるとは思えません。人間が言葉を習得する過程の発達的な学習、人間という種が言語的な能力を獲得していく進化的な学習、さらに言語コミュニティが共通の言語仕様をつくりだして共有していく社会学的な慣習の学習、そういったかなり特性の異なる学習が人間の言語能力を支えているわけですから。

ページトップへ戻る