ニューラルネットワークに基づく機械翻訳のしくみ


(この記事は What is neural network based translation? の翻訳です。)

 

ニューラルネットワークに基づく機械翻訳とはどういうものでしょう? なぜ翻訳精度が上がるのでしょうか?

機械翻訳は 2000 年代半ばより様々なアプリや Web サイトで活用されてきました。

1960 年代から長期間にわたり、コンピューター科学者たちは文法と個々の言語構造に基づく機械翻訳を作ろうとしてきました。多くの場合、翻訳結果はあまり芳しくないものでした。

ブレークスルーは新しいコンセプト、機械学習が機械翻訳に取り入れられたときにやってきました。プロの翻訳家によりあらかじめ翻訳された莫大なデータを使い、特定の文脈の下であらかじめ翻訳された文章から、単語を翻訳する方法を、強力なアルゴリズムが学習します。

Web サイトやアプリによらず、2016 年末頃までの機械翻訳の製品には、与えられた単語に一番確からしく当てはまる翻訳を予想する統計的手法が使われていました。このテクノロジーは統計的機械翻訳 (SMT) と呼ばれています。

しかし、統計的機械翻訳の限界のひとつは、翻訳する単語の前後いくつかの単語の文脈でしか翻訳できないことです。短い文章であれば結果はとても良いものになります。長い文章では、翻訳精度は良い場合もあれば意味が分からないすれすれのものまで結果にばらつきが出ます。いずれの場合も機械翻訳されたものかどうかは常に判別可能な品質となります。

2000 年代終わりに、人間の脳が働く仕組みをできる限り模倣する試みである深層学習またはディープニューラルネットワーク (DNN) と呼ばれる新しい機械学習のテクノロジーが、いままでは解決が難しかったコンピューター科学の課題を解決するための有効な選択肢となってきました。これは、2 つの進化、つまり巨大なニューラルネットワークを構築、トレーニング、実行させる手法の研究が進んだことと、クラウドにより非常に大きなコンピューティングパワーが手に入るようになったことによるものです。特に、機械翻訳のニューラルネットワークは最近実現可能になり、まだ初期段階であるものの多くの言語において 10 年以上の歴史がある統計的機械学習よりも良い結果を返すようになっています。

 

大まかには、ニューラルネットワーク翻訳は 2 段階で働きます。

  • 最初の段階では翻訳する単語を、この単語の文章全体における文脈に基づきモデル化します。文章は 5 ワードでも 20 ワードでもかまいません。
  • 第 2 段階では、この単語モデル (単語そのものでなくニューラルネットワークが構築したモデル) を、文章の文脈に基づき他の言語に翻訳します。

 

ニューラルネットワークに基づく機械翻訳の思考方法を理解するためのひとつの方法として、他の言語のネイティブスピーカーが、たとえば "dog" という単語を想像しているとしてみましょう。この単語により、スピーカーの脳裏には犬のイメージが出来上がり、このイメージが例えばフランス語の "le chein" と結びつきます。ニューラルネットワークは "chein" という単語がフランス語で男性名詞 ("la" でなく "le") であることを本質的に見抜きます。しかし、文章が “the dog just gave birth to six puppies” であれば、同じ犬でも子犬の面倒を見る犬の像を作り出し、文章を翻訳するときに自動的に “la chienne” (“le chien” の女性名詞形) を使います。

 

このアプローチは以下の理由により、より良い結果をもたらします。

  • 前後のいくつかの単語だけでなく、文章全体を考慮します。
  • 脳が行うようなパターン認識により、扱う言語の数に制限がありません。
  • 性別、形式など、個々の言語の特長に基づいた、言語の繊細さを学習します。

 

このアプローチにより、ニューラルネットワークに基づいた機械翻訳から出力された文章は、統計的機械翻訳のものよりも一般的に良い結果となるだけでなく、機械でなく人間が翻訳したような、より流暢で自然な表現となります。

ニューラルネットワーク アーキテクチャに基づく機械翻訳についての追加情報は「機械学習の概要」の「ニューラルネットワーク翻訳」章を参照してください。

 

関連記事

 

Skip to main content