先月から、Google翻訳が進化したことが話題になっています。
翻訳業界関係者で話題になっていますが、Google翻訳が英日・日英翻訳を新しい翻訳方式(ニューラル翻訳)に変えたようです。精度(特に流暢性)が大幅に向上したと思われるので、ぜひ試してみてください! https://t.co/pSXQLFhvt7
— Graham Neubig (@neubig) November 11, 2016
アマチュア翻訳者というサイドビジネスで稼いでいる者として、これは一大事です。
プロでない翻訳者はもはや機械に及ばず、不要になったのか?
新Google翻訳の実力を、アマチュア翻訳者の立場から探ります。
(※この記事は Competitive Programming Advent Calender 2016 の第21日目の記事となっています。
しかし、この記事と Competitive Programming(競技プログラミング)との関連は相当に薄く、この記事を読む上で競技プログラミングに関心を持っている必要はありません。)
1. 検証の対象とする文章について
私は、AtCoder という「プログラミングコンテスト」を開催するサイトで、コンテストの問題文などを日本語から英語に翻訳する作業(まれに反対方向)を請け負っています。
「プログラミングコンテスト」とは何か、について少しだけ説明すると、「与えられた『問題』を解くプログラムを書く能力を競う競技」の大会です。「問題」というのは、例えば「2 つの整数 A, B が与えられる(1 ≦ A, B ≦ 100)。A + B の値を求めよ」といった感じのものです。これ以上の説明は、この記事の趣旨から外れるため割愛します。
日本語で書かれたこのような問題文の一つを新Google翻訳に英訳させ、お手並みを拝見しましょう。
2. 検証
この記事で新Google翻訳に英訳していただくのは、AtCoder Grand Contest 002 の問題 E の日本語版の本文です。以下に引用します。
キャンディの山が N 個あります。 山は 1 から N まで番号が振られています。 最初、i 番目の山には ai 個のキャンディがあります。
高橋君と青木君がゲームで勝負します。 高橋君と青木君は交互に、次の 2 種類の操作のどちらかを行います。 高橋君が先手です。
- キャンディが最も多く残っている山をひとつ選び、その山のキャンディをすべて食べる。
- キャンディが残っているすべての山から、1 個ずつキャンディを食べる。
全体で最後のキャンディを食べた人が負けです。 二人が最適に行動したとき、どちらが勝つかを判定してください。
シンプルな問題文です。この程度の文章の英訳なら、完璧に行えるのでしょうか?新Google翻訳による英訳を見てみましょう。(なお、問題文をGoogle翻訳に入力する際に、ai は a_i とし、リスト内の各文の先頭に「・」を付けましたが、その他の変更は行わずにそのまま全文を入力しました。また、翻訳結果は記事執筆日に得られたものであり、未来の翻訳結果はこれと異なる可能性があります。)
第一段落
キャンディの山が N 個あります。 山は 1 から N まで番号が振られています。 最初、i 番目の山には a_i 個のキャンディがあります。
There are N mountains of candy. The mountains are numbered from 1 to N. First, there are a_i candies on the i th mountain.
大きな破綻はありませんが、粗探しをしてみましょう。
まず、「山」がそのまま mountain と訳されています。何かを高く積み上げたものを山になぞらえるのは日本語に限りませんが、はたしてここで mountain という訳は適切でしょうか?(そもそも、「キャンディの山」というフレーズを「キャンディが積み上げられたもの」とこの時点で解釈できるのか、という問題もありますが、のちほど取り上げます)
日本語で「山札」というと、単に「カードゲームで、場に積まれたカード」という意味になります。しかし mountain of cards というと、「カードが山のようにいーーっぱいある!」といったような、多さを強調するニュアンスが強くなるでしょう。単に「山札」を表現するには、deck という単語が使われます。同様に、「キャンディの山」をできるだけニュートラルに表現するには、pile of candies, heap of candies などの表現が適しています。これらの表現にも「いっぱい」というニュアンスがないわけではありませんが、mountain of candies ほどではないでしょう。
第2文の numbered from 1 to N は悪くはありませんが、数学的な厳密さが要求される場面では from 1 through N がより適しています。from A to B では B が範囲に含まれるか否かが不明瞭ですが、from A through B では B が明確に範囲に含まれるからです。
第3文は明確な誤訳です。a_i candies on the i th mountain では、比喩ではない本来の「山」という地形の上にキャンディが置かれていることになってしまいます。on ではなく in とするべきです。しかし、これは機械には難しい課題であるかもしれません。翻訳元の文「最初、i 番目の山には a_i 個のキャンディがあります。」は、この文だけを読めば確かにそのような解釈も可能でしょう。この解釈を否定するには、ここでの「山」が第1文で示された「キャンディの山」である、という文脈を読み取る必要があります。さらに、「キャンディの山」という表現が「キャンディがたくさんある山」ではなく「キャンディが積まれたもの」を表すことも、何とかして判断しなければなりません。これは人間にとっては簡単でも、機械にとってはなかなかの難題でしょう。
第二段落
高橋君と青木君がゲームで勝負します。 高橋君と青木君は交互に、次の 2 種類の操作のどちらかを行います。 高橋君が先手です。
Takahashi and Aoki will compete in the game. Mr. Takahashi and Mr. Aoki alternately perform one of the following two kinds of operations. Takahashi is your first player.
最後の “your” first player がどこから出てきたのか気になりますが、その点に目をつぶればかなり完成度の高い訳です。強いて言えば第1文の the game は a game とする方がベターでしょう。
第三段落
・キャンディが最も多く残っている山をひとつ選び、その山のキャンディをすべて食べる。
・キャンディが残っているすべての山から、1 個ずつキャンディを食べる。
· Choose one of the mountains where Candy is the most remaining and eat all that candy in the mountain.
· Eat candy one by one from all the mountains where candy is left.
第1文では、これまでで最も派手なミスが見受けられます。どういうわけか「キャンディ」が「キャンディさん」という人名として解釈され、「キャンディさんが最も残っている山」という意味不明と言わざるを得ない単語列が出力されました。さらに、後半では all the candies とするべきところが all that candy と単数になってしまっており、文の内容が理解されていないことが窺えます。
第2文のミスも重大です。翻訳元の「1 個ずつ」というのは「それぞれの山から一個」という意味ですが、「一度に一個」と解釈されてしまっています。結果として、すべての山のすべてのキャンディを食べるかのような文になってしまいました。candy という名詞の扱いは相変わらず雑で、今回は無冠詞で使われてしまっています。
第四段落
全体で最後のキャンディを食べた人が負けです。 二人が最適に行動したとき、どちらが勝つかを判定してください。
The whole person who ate the last candy is losing. When two people act optimally, please judge which one will win.
第1文では、翻訳元の「全体で」が「最後の」にかかっていることを見抜けず、「人」にかけてしまいました。”is losing” と現在進行形で書かれているのも不自然で、食べた瞬間に負けが決定するので loses がよいでしょう。
第2文では、two people という漠然とした書き方から、翻訳元の「二人」が「高橋くんと青木君」であることが理解されていないことがまず窺えます。また、些細な問題かもしれませんが、翻訳元の文章は「『二人が最適に行動したとき、どちらが勝つか』を判定してください」という構造になっています。これを順序をできるだけ保ってそのまま “When 〜, please 〜.” と訳してしまうと、judge の位置が移ることにより「『二人が最適に行動したとき』、『judgeしてください、どちらが勝つかを』」と、文の構造が少し変わってしまいます。ここは、”Please judge which one will win when…” と順序を逆転させた方がベターでしょう。
総評
大きな破綻はあまり見られませんでした(「キャンディさん」以外)が、改善の余地が数多く見られます。最大の課題は、文が置かれた文脈が理解されておらず、一文ごとに切り離して訳されている点でしょう。「文脈を理解しろ」と人間が口で言うのは簡単ですが。
下訳として使える水準には到達しているでしょう。しかし、人間が一から書くのと比べて大きく時間が短縮されるかは疑問です。
3. 結論
Google翻訳は、「風変わりでない普通の文章を」「ある程度の質で」翻訳することのスピードに関しては、生身の人間が到底及ばない領域に到達したといってよいでしょう。しかし、翻訳元が特定の文脈に依存した少し「変な」文章であったり、翻訳に高い正確性が求められるような状況では、まだまだアマチュアの人間にも及ばないようです。
英語はあまり得意ではない、という方にGoogle翻訳(和→英)の使い方についてアドバイスするなら、次のようになります。
- 文章自体の完成度があまり重要でなく、とにかく情報を伝えることが第一という状況(個人的なプロジェクトの技術情報の英語版を書きたい、海外の人とチャットシステムでカジュアルな会話をしたい、など)では、使って問題ないでしょう。
- そうでないなら、英語が苦手でない人に助けを求めましょう!スピードと手軽さ以外の点では、まだまだ人間の方が高機能です。
では、こういった問題点が改善されるのはいつになるのでしょうか?Google翻訳が進化したというニュースとほぼ時期を同じくして、国立情報学研究所の「東ロボくん」が東大受験を断念したことが話題になりました。
さらに点数を伸ばすには、東ロボくんが文脈や複雑な文章の意味を理解することが必要で、このまま開発を進めても、その点を突破できないため、2021年度を待たずしてプロジェクトは、東大受験に関しては一旦凍結した。
(”「東ロボくん」が偏差値57で東大受験を諦めた理由|DOL特別レポート|ダイヤモンド・オンライン“, 2016年12月21日閲覧)
この「文脈や複雑な文章の意味を理解すること」は、これまでさんざん触れてきた、現時点でのGoogle翻訳が抱えている最大の課題とほぼ同一のものといえるでしょう。東大受験計画は「2021年度を待たずして」「一旦凍結した」とのことで、Google翻訳についても「読解力」の欠如が2年や3年で大きく改善される見込みは高くない、と予測します。
しかし、20年や30年、もしくはさらに先となると、予測のしようがありません。その頃には機械翻訳が十分発達して、ほとんどの人は英語を勉強する必要がなくなっているのかもしれません。もっとも、その前に人工知能が人類を征服しているかもしれませんが・・・。