機械翻訳

機械翻訳（きかいほんやく、）とは、ある自然言語を別の自然言語に翻訳する変換を、コンピュータを利用して全て（ないし、可能な限り全て）自動的に行おうとするものである。
歴史.
機械翻訳の着想は17世紀まで遡って由来を調べられるかもしれない。1629年に、ルネ・デカルトは、単一の記号をもって異なった言葉での同一の概念を割り当てる"普遍言語"を提案した。機械翻訳という発想が生まれた起原のひとつは、暗号学である。ウォーレン・ウィーバー（シャノンによる、情報理論の記念碑的業績である論文『通信の数学的理論』の書籍版の共著者）が1947年3月にノーバート・ウィーナー（サイバネティックスが著名）に送った手紙によると、ロシア語で書かれた文章について、それを「暗号化された英語の文章」とみなせば暗号解読の要領で機械的に翻訳できるのではないか、と提案している。しかし同年4月のウィーナーの返信によれば、(自然)言語は曖昧な表現が多いために、暗号解読のようにはうまくできないのでは、と懐疑的であった。
米国およびソ連の場合、機械翻訳はこの暗号絡みのエピソードにも示されているように冷戦を背景とした需要があった。一方欧州の場合は、多国間交渉や条約などで多国語間の翻訳という課題を抱えていたという動機があり、2言語間ではなく多言語間の翻訳という比較的難しい問題に挑む一方、ある程度近い言語間の翻訳ではあった。日本の場合は、とにかく英日・日英の翻訳が望まれた。
上位の学術分野としては自然言語処理あるいは計算言語学であるが、いずれもコンピュータの発達により自然言語を扱えるようになったことで発展した分野であり、また自然言語の統計的性質を研究する点など、暗号学に起源の一部を辿れる点も似ている。機械翻訳はこれらの分野で主要な応用の位置にある。
大学や研究機関による成果の最も早いものは、1954年にジョージタウン大学などの研究グループにより発表された。これを皮切りに、形態素解析や係り受け解析などの機械翻訳に必要な技術の研究が始まった。日本では1950年代に九州大学の栗原俊彦らが研究を開始し、1950年代末に実験機「KT-1」を、またそれとは独立に電気試験所（後の電子技術総合研究所）の研究チームが実験機「やまと」を作成している。その後も研究が続いたが、当時のコンピュータの性能による限界が厳しく、米国では1964年に発表された「ALPACレポート」で機械翻訳の様々な問題点が指摘され実用レベルには程遠いとされたことにより、米国では（同時期に似たような経過を辿った他の人工知能分野と同様に）研究にしばらく予算がつかず約10年にわたって研究が停滞した。しかしそんな中でも研究する研究者はおり、研究は緩やかに進んだ。1980年代になると、ルールベースの機械翻訳システムが一定の成果を上げるようになった。
一方、IBMは1990年代に異なる言語間の単語対応を統計的に獲得する「IBMモデル」という手法を提案した。これが統計的機械翻訳の始まりである。初期の統計的機械翻訳は単語の並べ替えに基づくものであったが、2000年代に句構造を利用した翻訳手法が発表され、語族が異なる言語間でも翻訳の精度が飛躍的に向上することとなった。
2010年代に入り、文章翻訳への応用はできないとされていたニューラルネットワークによるディープラーニングを使ったニューラル機械翻訳（NMT）が登場したことで品質が向上した。(BERTなど)
情報通信研究機構によると、2021年現在の人工知能は、音声認識能力においては人間を上回っているものの、その精度やスピードには大きな課題がある。課題解決にむけて重点的に開発されている機能は「チャンク」「補正」「翻訳精度そのものの向上」である。現状のAIによる同時通訳は10秒程度のタイムラグがあり（人間による同時通訳は2～3秒）テンポのいい会話などの通訳は難しい。これは現状の機械翻訳が文ごとにしか訳せない為であり、意味ごとに訳す「チャンク」という機能の開発が現在行われている。また、日本語などの言語においては「動詞・否定など重要な情報が末尾にくる」「主語が省略される」などの特徴がある為AIが誤訳しやすく、その解決策として「修正機能」が開発されている。翻訳機能の基幹となる「精度」においては「GPT-3」機能の応用などが研究されている。しかし、いずれにおいても「横一直線で、現状成果は出ていない」という批判もある。
2021年4月、NVIDIAではリアルタイムで多言語の音声認識と翻訳が可能な人工知能フレームワーク「Jarvis」を公開した。技術デモにおいては、ジェン・スン・ファンが英語で九州じゃんがらへの道順を声で尋ねると、リアルタイムでテキスト化され、1～2秒程度で違和感の無い日本語テキストに変換されるレベルとなっている。
現状と限界.
近年、AIのディープラーニング技術により、急速に成長している分野であり、特定の用途に限った翻訳においては人間の手で補助することで、ある程度の解決がみられるようになっている。今後人々の日常生活における異言間のコミュニケーションに大きな影響を与えることが期待されている。
翻訳業界からはAI脅威論が強くなっている。しかし研究が進むにつれ、言語の複雑さに由来する機械翻訳の限界も指摘されており、人工知能、自然言語処理、ニューラル機械翻訳などの立場では「克服すべき課題は多く，完璧な機械翻訳を期待するのは現実的ではない」と認識されている（主に「機械翻訳の限界と人間による翻訳の可能性」瀬上和典より）。
アプローチ.
機械翻訳の手法は大きく分けて「ルールベース機械翻訳（RBMT）」と「コーパスベース方式」に大別される。コーパスベース方式には「統計的機械翻訳（SMT）」と「ニューラル機械翻訳（NMT）」がある。
2010年以降はニューラル機械翻訳が主流となっている。
手法としては以下のようなものがある。
用例に基づく翻訳.
特許やマニュアルなど、文のスタイルがほとんど変わらない状況では、汎化能力が小さくてもシステムとして十分機能する場合がある。
用例に基づく翻訳では、翻訳の例文を記憶した「用例辞書」と単語対応を記憶した「単語辞書」を使用する。
システムの大まかな流れは以下の通りである。
単語・フレーズに基づく翻訳.
用例に基づく翻訳では、データベースが文全体を記憶していた。一方、単語・フレーズに基づく翻訳では、文を細かな単位に分割し、出現確率や並べ替え確率といった情報を利用することで、コーパスに存在しない文に対する汎化能力を上げる。
構文木に基づく翻訳.
構文木に基づく翻訳は、機械翻訳開発のかなり初期からあったアイディアである。1960年代～1980年代の（今から見れば古いタイプの）AI研究者は、しばしばこうしたアイディアを過大評価し、それに酔った。単語・フレーズに基づく翻訳は、文の構造を利用しない翻訳のため、文法的に誤った訳出が多い。また、日英翻訳のように単語の並べ替え距離が大きい場合、正確な翻訳を行おうとすると、探索空間が爆発的に大きくなってしまう問題があった。「構文木に基づく翻訳では、入力文の構文情報を利用することにより、言語構造的に誤った並べ替えを探索空間から除外し、より正確な翻訳を行うことができるだろう」と期待された。だが、主としてこの構文木に頼る翻訳システムは、多くの研究者による長年に渡る試行錯誤にもかかわらず、結局、翻訳文の質が実用翻訳、実用通訳のレベルまでは向上せず、行き詰まりを見せた。
構文木に基づく手法はいくつか存在するが、以下に句構造に基づく翻訳の一例を示す。
例として、英語から日本語への翻訳を考える。
以下のような原文が与えられたとする。
 "I have a pen."
この文を句構造解析して得られる構文木は次のようになる:
ここで、以下のような辞書を使って英語の単語を日本語の単語に置き換える:
構文木は次のようになる:
 (S (NP (pron 私)) (VP (verb 持っている) (NP (det -) (noun ペン))))
しかしまだ語順が正しくないし、助詞もない。
ここで構文木に対して以下のような規則を適用して変換をおこなう:
すると変換された木はこのようになっている:
 (S (NP (pron 私)) は (VP (NP (det -) (noun ペン)) を (verb 持っている)))
ここから、以下のような翻訳文を生成できる:
 "私はペンを持っている。"
これは非常に単純な例である。
実際には英語の have は複数の語義をもつので、語義の曖昧性解消をしなければ単純に「have → 持っている」という変換をすることはできない。
また、モダリティの考慮や、照応の解決、敬語の扱い、自然な言い回しの文の生成など、実用的な翻訳ソフトウエアをつくるためには多くのことを考慮に入れる必要がある。
構文木に基づく翻訳では、構文解析誤りが翻訳結果に悪影響を及ぼす場合がある。その場合の解決策として、複数の構文木の候補（構文森）を考慮した翻訳手法も存在する。
統計的機械翻訳.
計算機の発達によって1990年代以降研究が盛んになっているのは、統計的な手法を用いた機械翻訳である。
ルールベースの翻訳では、ルールを作成した人間が想定しなかった入力文には対応できない問題がある。また、翻訳ルールの記述や見直しには膨大な手間がかかるため、効率が悪い。そこで統計的機械翻訳では、パラレルコーパスと呼ばれる複数の言語で文同士の対応が付いたコーパスを利用し、翻訳のルールを自動的に獲得し、各ルールの重要度を統計的に推定する。
パラレルコーパスには自前のデータを利用することもあるが、最近では各言語に翻訳された特許や、Webページのクローリングデータなどを利用することもある。
統計的機械翻訳は、従来音声認識の分野で用いられていた雑音チャネルモデルを応用したもので、原言語（翻訳元の言語） "formula_10" は目的言語（翻訳後の言語） "formula_11" が雑音のある通信路を通る間に変化してしまったものであると捉え、翻訳作業を元言語から目的言語への復号であると考える。
雑音チャネルモデルでは、復号誤りが最も小さくなる翻訳結果 formula_12 は以下の式を満たす。
2番目の変形はベイズの定理による。
ここで formula_14 をモデル化したものを言語モデル、formula_15 をモデル化したものを翻訳モデルと呼び、言語モデルは翻訳結果の言語としての流暢さを、翻訳モデルは翻訳の確からしさをモデル化していると言える。翻訳モデルのみでは目的言語として正しくない文となってしまうため、言語モデルによって目的言語として正しくない文を取り除けると考えられる。また、言語モデルについての研究は音声認識などの分野において既に研究が行われており、その知見を生かすこともできる。
統計的機械翻訳の処理系はこれらのモデルの組み合わせが高い値を与える翻訳結果を探索することになる。このような処理系は暗号理論からの類推でデコーダ（復号器）と呼ばれる。
2000年代から盛んに研究されている句に基づく統計的機械翻訳を始め、近年では直接雑音チャネルモデルを用いるのではなく、最大エントロピー法（対数線形モデル）に基づく下記の最適化問題として考えることが多い。
統計翻訳においても、翻訳の精度を高めるために、人手により追加されたルールを利用する場合がある。また、近年ではパラレルでないコーパスから翻訳ルールを獲得する研究も為されている。
基礎的な課題.
機械翻訳の実現にあたっては、自然言語をコンピュータで扱うことに起因する様々な問題に対処する必要がある。
ここでは日英翻訳において顕著な例をいくつか挙げる。なお、これらの言語が特別このような特徴を持っているわけではなく、他の言語の組み合わせでも似たような現象は一般的に見られるものである。
ゼロ代名詞.
日本語では代名詞（「私」「これ」など）が頻繁に省略されるが、英語はこれらを明確に文に含める必要がある。このため、日英翻訳では省略された代名詞を適切に補う必要がある。以下に例を示す。
 弟は公園に行った。そこで友達と会った。
この文から、友達と会ったのが「弟」であることは明らかであり、挿入すべき代名詞は He であることが分かる。対応する英文は例えば以下のようになる。
 My brother went to the park. He met his friend there.
ところが、機械翻訳で単純に文単位の翻訳をした場合、2文目だけでは誰が友達に会ったのか明らかではなく、前後の文を利用して挿入すべき代名詞を推測する必要がある。
さらに、「弟」や「妹」などのように代名詞が容易に判断できる場合は良いが、より複雑な文ではどのような代名詞を挿入すべきか簡単には判断できない状況もある。
逐語式の無理、訳語の選択.
以下の英文を考える。
 I ate rice.
実務での翻訳や通訳の経験が浅い人、その中でも特に もともと語学能力が低く、（普段から逐語式で「翻訳まがい」の作業をし）酷い訳文を作りがちな人などが、機械翻訳のソフトウェアを夢想すると、とりあえずきわめて素朴なルールベースの翻訳機を着想し、「rice」→「ご飯」のような1対1の変換（逐語変換）の規則を多数（変換用対照テーブル等の形で）持たせ、あとは統語法に基づいた語順変換処理などをして「私はご飯を食べた」という訳文を出力させるプログラムさえ作れば、翻訳機ができるのではないか？ などと（浅はかにも）夢を見てしまいがちだが、次の英文を考慮すると、そんな単純なシステムでは全く実用的な翻訳機にならない、と理解できる。
 We will have rice harvest tomorrow.
この場合、「rice」→「ご飯」と、1対1の対照表で機械的に変換するシステムだと、たとえば「私たちは明日ご飯を収穫します」という、（お粗末な、使い物にならない）翻訳文しか出力されない。
多くの言語間での「原語→訳語」の関係と同様に、英語の「rice」に対応する日本語も複数あり、文脈に応じて、（この文例では）「稲」「（お）米」「ご飯」などと訳し分けるものであることは当然必要であり、つまり翻訳機は、文脈に応じて訳語を適切に選択しないようでは全然実用性が無いので、当然この課題は解けるものになっていなければならない（ということは、機械翻訳開発のかなり初期段階で理解されていた）。
常識.
機械翻訳の難しさのひとつは、自然言語の文を扱うということは、統語論では完結せず、常識的な知識や意味論も扱わねばならないことが頻繁にある、という点にもある。
たとえば英文 「Time flies like an arrow. 」について、もし「統語解析を行う→可能なツリー構造を全部挙げる　→　英単語を単純に日本語単語に置き換える」ということしかせず、意味分析や常識判断を加えないと、数種類のツリー構造が候補として挙ってしまい、（全然意味の異なる）翻訳文が数パターンできてしまう。たとえば「時間は矢のように飛び去る」という翻訳文以外にも、「時間蠅は矢を好む 」「蝿たちを計時せよ！ 矢のように(素早く)！」となどという、（奇妙な）翻訳文まで機械翻訳システムは吐き出してしまうかも知れない。
つまり、単なる統語分析や文法解析では複数の候補翻訳文が挙げられる場合でも、人間は意味論や常識や過去の言語的体験（聞いた文章、読んだ文章の記憶）も働かせてひとつの翻訳文を選びとっているので、機械翻訳システムでも、現実世界の常識や現実世界に流通している大量のまともな文章と照らし合わせて、間違いは間違いだと気付き、翻訳文を却下する必要があり、こうした判断を機械翻訳システムにさせる工夫（つまり知識ベースや「人間の世界の常識」と照らし合わせて常識に反するものを見つけてはじく（切り捨てる）アルゴリズムなど）をかませる必要がある。
たとえば「時間は矢のように飛び去る」という候補のほうは残し、「時間蠅は矢を好む」という候補のほうはダメだと判断して排除するには、「人は時が素早く過ぎると感じられることがある」「矢は速く飛ぶ」「人々の日常会話で『時間蠅』などという語が登場したことは無い。また小・中・高・大学生などが読む教科書でも『時間蠅』などという用語が登場したことは無い。報道の文章でも登場しない。」などといった言語的経験（過去の言語表現の知識。データベース）が必要となる。また「同様に、おそらく専門家の文献でも『時間蠅』などという用語は登場することは無いだろう」といった推論も必要となるかも知れない。理屈の上では「時間蠅」という用語も（統辞法的には）構築可能ではあるが、（翻訳した文章がSF小説でもなく、前後の文脈で、やたらとタイムマシンや、蠅を研究するマッドサイエンティストが繰り返し登場していない限り）、やはりそんな文章はありえない、と機械翻訳システムも判断する必要がある。
このように、正しい翻訳を行うためには、単に統語論的に可能なツリー構造のパターンを網羅的に挙げるだけでなく、現実世界に関する知識や、教科書や報道などで大量に書かれ読まれ、人々の頭脳に刻みこまれている過去の一般的な文例、人間の日常会話（話し言葉）で使われている表現や言い回しなどの頻度や時代ごとの傾向に関する知識も必要となるのである。
「Time flies like an arrow.」の場合などはさらに、「時間は矢のように飛ぶ」や「時間は矢のように飛び去る」などという翻訳文を吐き出すだけでは、まだまだ程度が低いわけであり、もっと知識を動員して、日本語には「光陰矢のごとし」という決まった比喩表現があり、日本人向けの英語の教科書などでは"Time flies like an arrow."の定番訳として毎回「光陰矢のごとし」という文が掲載されている、という知識も使って、「光陰矢のごとし」という正解にたどりつくのが良い、ということになる。
人間でもまともな翻訳をするには、学校で学んだ膨大な教科書類などの記憶や、放送で聞いた膨大な量の表現、家族や友人から聞いた膨大な量の表現も思い出しつつ、多くの候補の中から翻訳文を選んでいるように、機械翻訳でもそうした言語的知識の膨大な蓄積や「常識」を使う必要があるのである。
翻訳支援.
機械翻訳は主に「自動翻訳（機械翻訳）」と「翻訳支援（コンピュータ支援翻訳）」という異なる応用先で用いられ、両者は区別される。自動翻訳では人間の介入は最小限であり、入力文すべてを機械に翻訳させようとする。これは「翻訳元の言語を理解することができない人」のための技術であると言える。翻訳支援はプロの翻訳者が翻訳作業を効率的かつ高品質に行うために翻訳ソフトを活用するものである。また、電子辞書をコンピュータに備え、辞書引きをコンピュータに行わせつつ、人間が行う翻訳は、コンピュータ支援翻訳と呼ばれる。
実用性.
現実の翻訳は互いの言語の関係によっても大きく異なる。自然言語はそれぞれ孤立して存在するものではなく、多かれ少なかれ互いに影響し合っている。特に共通の歴史が長い言語同士では、文法や語彙に共通性、あるいは共通の起源を多く持つことがある。そのような場合、極端に言えば単語を置き換えるだけでもある程度のレベルの翻訳が可能であるから、機械翻訳もより容易い。
だいたいの意味を知るための概訳については、フランス語、スペイン語、イタリア語などインド・ヨーロッパ語族ロマンス語系諸語間の自動翻訳は比較的順当であり、英語とロマンス語系あるいはゲルマン語系言語との間の自動翻訳も実用レベルに達しているといえる。
日本語からの翻訳の場合、早々と実用レベルに達したのは朝鮮語との相互翻訳である。日本語と朝鮮語は膠着語であるという文法的共通性や漢語からの借用語などが多く、単語の置き換え以外にはあまり複雑な処理を必要としない。このため、「GoKorea」「KJCLUB」などの自動翻訳掲示板なども存在する。
日本語の場合は助詞や同音異義語が多数存在し、主語の省略も行われる。このため、形態素解析の段階で解析誤りが発生し、推測しなければならない情報も数多く存在する。例えば一般に英日翻訳に比べて日英翻訳の能力は低い段階にあった。殆どの言語で機械翻訳の恩恵を受けにくい状況が長く続き、再翻訳結果がネットミームとして遊ばれていたような状況だったが、2010年代以降のAI技術の発展で、みらい翻訳やDeepL翻訳が自然な翻訳を実現、大きな話題を集めた。
翻訳支援の場合、特定の分野の翻訳に適したユーザー辞書を作成することにより、翻訳ソフトの品質は大幅に向上する。だが一定規模の企業・組織ユーザー以外の、一般ユーザーによる小規模な利用シナリオでは、ユーザー辞書の効果よりも辞書の作成にかかる時間・労力のほうが大きい。その理由には、辞書作成に技能を要する、ユーザー辞書のコンテンツがない、辞書の相互利用のためのインフラがない、翻訳の量が少ない（規模が少ない・頻度が少ない）といった理由が挙げられる。これらの問題を解決するために、AAMT（アジア太平洋機械翻訳協会）がユーザー辞書を共有するための用語集仕様であるUPFを策定した。その後UPFの検討は中止され、2006年に後継の仕様であるUTXの策定が開始され、2013年現在ではバージョン1.11が公開されている。
機械翻訳装置.
ツールキット.
商用・非商用両方で多くの機械翻訳のアプリケーション、ツールキットが存在する。オープンソースソフトウェアとして公開されているものは主に統計的機械翻訳のためのツールであり、これらを利用するにはパラレルコーパスを自ら用意する必要がある。
評価.
機械翻訳の評価方法として、人手評価と自動評価がある。
人手評価.
人手評価は、その名前の通り、人間の評価者が翻訳機の出力結果を読んでスコアを付けてゆく方法である。
スコアとして、例えば以下のような基準を設定する。
各文に対して上記のような指針に従ってスコア付けを行い、最後に各評価の割合（どのスコアの文が何パーセント含まれているか）を計算して翻訳システムの評価結果とする。
複数の基準に従って評価したり、評価者が自由にコメントできるようにすることで、単純なスコア付けだけでなく、システムの改善に繋げることが可能である。
自動評価.
自動評価は、機械翻訳の結果を機械的に評価する方法である。
評価を行う場合は、まず、原文と参照訳（翻訳の正解文）を数千対程度用意し、翻訳システムを用いて原文を翻訳する。
次に、翻訳結果と参照訳の類似度を各文に対して計算し、最後に平均を取って翻訳システムの評価とする。
自動評価尺度として、以下のようなものがある。それぞれの尺度に特徴があるため、1つの尺度を信頼するのではなく、複数の尺度を併用することが望ましい。
教具としての機械翻訳の使用.
機械翻訳の正確さに関してはいろいろと懸念されてきたが、マンチェスター大学のアナ・ニーノ博士は教室で機械翻訳を利用することの利点のいくつかを調査研究した。そのような教育上の方法の一つは「悪い見本としての機械翻訳 ("MT as Bad Model") 」と呼ばれる。
悪い見本としての機械翻訳は言語学習者に矛盾した言葉や訳文の不正確な側面を同一視することを強制する。逆に個人は（期待をもって）言語をよりしっかりと把握するものである。ニーノ博士はこの教具が1980年代後半に実現したことを引用する。さまざまな学期の終わりに、ニーノ博士は悪い見本としての機械翻訳だけでなくその他の諸モデルも使ったことのある学生から得られた調査結果を入手することができた。圧倒的に、学生は自らのにおいて、理解力と語彙の検索が改善され、信頼が増したことに気付いたようであった。
著作権.
著作権の保護を受けるのは独創的な著作物のみであり、機械翻訳には創作性がないため、機械翻訳の結果には著作権の保護を受ける権利が与えられないと一般的に考えられている。またそのように主張する学者もいる。問題となっている著作権は二次的著作物（英: derivative work）についてである。原語で執筆された原著作物（英: original work）の著者は作品が翻訳されたときに権利を失うことはなく、翻訳者は翻訳物を出版するには許可を得なければならない。