-
Notifications
You must be signed in to change notification settings - Fork 0
DNET_MachineTranslation
-
機械翻訳の発想が始まる。
-
ロシア
- 本格的な取り組みが始まる
- が、実用に至らなかった。
-
1947年に英仏機械翻訳
- 英語とフランス語は同じ文法体系
- 単語だけ置き換える単語置換のロジック
-
ロシア語・英語の機械翻訳のデモを開発。
-
当初はわずか250単語しか扱えない代物だった。
-
シンタクティック・ストラクチャー(統語構造)
- 1957年、Chomsky
- 文法を解析して翻訳
現在まで脈々と続いている言葉の解析の初め
アメリカ政府が開発を試みるが、品質・効率が悪く、開発を中止
-
英語・フランス語の天気を翻訳する METEO を開発
-
Systran 社創設、RbMTが本格化
-
機械翻訳の世界で先に実用化したRbMT
-
冷戦の真っ只中だったため、
対応可能言語は英語とロシア語のみ -
アメリカ空軍に取り入れられ、
- ロシア語の科学・技術マニュアルなどの英訳に使われた。
- 分野によって対訳のあらましを掴むぐらいの性能はあった。
-
後に、米ソが協力したアポロ・ソユーズテスト計画にも使用された。
-
-
Systran のそこそこの成功を受けて、欧州連合も似たようなシステムに取り組んだ。
- 各加盟国が欧州連合の様々な資料を読めるようにするべく、
Eurotra という新システムの開発に大きな資金と時間を費やした。 - 結局、開発過程が複雑化したために、実用的な機械翻訳を作るのに失敗したが、
これまでの研究が後のものに役立つことになる。
- 各加盟国が欧州連合の様々な資料を読めるようにするべく、
-
1980-90年代に SMTが王道の機械翻訳モデルになった(用例 → 統計)。
-
1997年に、DEC と Systran が共同で、
- Babel Fish というネット上の機械翻訳サービスを公開。
- 初めて一般人を対象にした機械翻訳サービスでユーザーは無料で使うことができた。
-
2016年にNMTに移行するまで、
- 長年メインの機械翻訳のモデルとして活躍
- Google、Microsoft、Systran、Yandex は皆SMTを使用。
-
2006年: Google Translate 登場(SMTを使用)
-
2016年: Google TranslateがNMTを採用
- 2014年: 機械翻訳にニューラルネットワークを採用しようという科学論文が発表
- 2015年: 機械翻訳大会でOpenMT'15 という初めてのNMTの試作機が登場
- 2016年: (以降、)同大会の勝者の9割はNMTのシステムとなった。
-
2017年: 同様にNMTを採用したDeepLは非常に自然な翻訳をするとして注目を浴びる。
RbMT: Rule-based Machine Translation
-
概要
-
登録済みのルールを適応することで原文を分析し、訳文を出力する機械翻訳の方法
-
現在、この古い技術の RbMT は使われていないが、
無料ソフトの形で RbMT がレガシーを残している。- 51言語ペアに及ぶ無料ソフト Apertium
- 北ゲルマン語群/英語をメインに対応している Gram Trans
-
-
仕組み
-
文法ルールを軸(モデル)に機能している方式
-
単語・文法情報が必要
- 元言語(SL: Source Language)
- 翻訳言語(TL: Target Language)
-
文法は、多くの場合、手動で言語学者が設定。
-
単語については、大量の辞書が必要だった。
-
-
構成要素
-
文法
- 元言語を解析する機械
- 元言語を対象言語に翻訳する機械
- 対象言語の文章を生成する機械
-
単語
- 元言語の辞書
- 対象言語の辞書
- SL を TL に翻訳するための二言語辞典
-
-
ステップ
- 形態素解析 > 構文解析 > 意味解析 > 文脈解析
(言語処理の該当節を参照) - 各単語を TL に翻訳し、出力を適切な形で適切な位置に置く
- 形態素解析 > 構文解析 > 意味解析 > 文脈解析
-
トレードオフ
-
メリット
- ルールはカスタマイズ可能
- エラーをルールで調整可能
- 従って品質向上可能
- 既存の翻訳データがいらない
-
デメリット
- 複雑で手間がかかる
- 手動でやらなければいけないことが多い
- 分野によって、高品質の辞書が少ない
-
EbMT: Example-based Machine Translation
-
概要
- 文章の例を用い、完全にルール作成というステップを省く。
- バイリンガル・コーパス(二言語対訳集)(言語処理(AI)の該当節を参照)が
将来登場するモデルに大きな影響を与えた。
-
仕組み
二言語対訳集から対象文章に一番近い例をピックアップして翻訳の文章を出力する。- 言葉を一つ一つ参照するのではなく、フレーズ・表現という大きな単位で参照して、翻訳を行う
- 基本的に例として参照できる対訳集が大きければ大きいほど、翻訳の品質が上がる
-
構成要素
バイリンガル・コーパス(二言語対訳集)(言語処理(AI)の該当節を参照) -
ステップ
- 元文章と対訳集を比べる。
- 似ている例から部分を拾う。
- 他の例を用いて欠損部を埋める。
-
トレードオフ
-
メリット
- RbMT より簡単でルール作成・調整をせずに済む。
- 既存のバイリンガル・コーパス(二言語対訳集)さえあれば翻訳できる。
- 更にバイリンガル・コーパス(二言語対訳集)を足せば品質が上がる。
-
デメリット
- 実用化しなかった
- フレーズ単位で翻訳するため、
・複雑な文章の例は見つかり難い
・細かな翻訳が難しい
-
SMT: Statistical Machine Translation
-
概要
EbMTと同じように、
バイリンガル・コーパス(二言語対訳集)を多量に取り入れるモデル- しかし、EbMTより遥かに複雑な処理を行い、
単語単位もフレーズ単位も翻訳ができる。 - 同様に、二言語対訳集が大量にあればあるほど、翻訳結果は、より正確になる。
- しかし、EbMTより遥かに複雑な処理を行い、
-
仕組み
フレーズをピックアップするのではなく、
対訳集からパターンを覚え翻訳された文章の正しさを「確率」で表す。- 二言語対訳集を学習データとして使用する。
- 学習データで学習して統計モデルを構築する。
- 統計モデルを翻訳器として機械翻訳を実現する。
- 統計モデルは翻訳モデルと言語モデルに分かれ、翻訳の確かさと文法の確かさを評価
- 膨大な対訳データ(バイリンガル・コーパス(二言語対訳集))を利用しても
精度の高い翻訳は出来なかった。
-
構成要素
-
バイリンガル・コーパス(二言語対訳集)(言語処理(AI)の該当節を参照)
-
翻訳モデル、言語モデル
- 翻訳モデル:それぞれどの単語同士が意味的に対応する可能性が高いかを考慮
- 言語モデル:原文に対応すると考えられる単語が訳語として自然かを考慮
-
-
ステップ
- 翻訳モデルに通して、単語を翻訳する。
- 言語モデルの評価を利用し、語順を並び替える。
-
トレードオフ
-
メリット
- 以前より流暢な出力
- 既存のアルゴリズムが豊富
- サーバー負担、コストが低い
-
EbMTと同様、
・文法・ルール設定不要で言語学者不要
・対訳集があるほど品質が上がる
-
デメリット
- 品質が不安定でエラーはすぐに修正できない
- 特にスラング・話し言葉の翻訳が困難
- バイリンガル・コーパス(二言語対訳集)
・...の作成コストが高い
・...の品質に翻訳品質が左右される
-
NMT: Neural Machine Translation
-
概要
- SMT と同様に、既存の翻訳データが多ければ多いほど、機械翻訳の質が上がる。
-
ニューラルネットワークを採用しているために、
機械学習が大事な要素となっている。 - 1つのニューラルネットワークで、訓練と翻訳を完結させる(End-to-End)。
- BERT(言語処理(AI)の該当節を参照)で
「文脈(コンテキスト)を読むこと」が実現され精度の高い翻訳が出来るようになった。
-
仕組み
- 人間が多量に既存の翻訳データを入れて学習をさせる。
- 文を数字化(ベクトル化)するのがポイントになる。
-
構成要素
-
バイリンガル・コーパス(二言語対訳集)(言語処理(AI)の該当節を参照)
-
翻訳にRNNの発展形のEnc-Dec、Seq2Seq
(再帰型ニューラルネットワーク(RNN)の該当節を参照)を使用する。- Encoder:入力文を変換する。
- Decoder:出力文を生成する。
-
Encoder、Decoderの間には、Neural Translation Modelがある。
コレは、翻訳を文章単位で行う(翻訳中に文章内の単語を一つ一つ順番に予測する)。
-
-
ステップ
- Encoderで、原文の単語を数字列に変換する(例:犬 -> 23)
- Neural Translation Modelによって、数字列(中の単語を意味するデータ)を並び替える。
- Decoderで、数字列を文字に変換する(例:23 -> dog)し翻訳文を生成する。
-
トレードオフ
-
メリット
- より流暢な翻訳品質
- 既存翻訳データが少なくても利用を続けることで学習できる。
- 頻出頻度の低い珍しい単語に対応可能、あらゆる分野に対応可能
-
デメリット
- 学習時間が長い、翻訳統一が困難
- 固有名詞・専門文章の翻訳に弱い
- ブラックボックス故に、問題検査・エラー修正が困難
-
-
発展
-
Attention(言語処理(AI)の該当節を参照)
- Attention前:RNN Enc-Dec
(RNN Encoder-Decoder(Sequence-to-Sequence)の該当節を参照) - Attention以後:RNN search
(RNN Encoder-Decoder(Sequence-to-Sequence)の該当節を参照)
- Attention前:RNN Enc-Dec
-
Transformer(言語処理(AI)の該当節を参照)
-
BERT(言語処理(AI)の該当節を参照)
-
- 機械翻訳がたどってきた歴史からみる進歩を解説!今後の可能性も紹介
https://mx.wovn.io/blog/0003
移行メモ
見出しの「ルールベース機械翻訳(RMT)」「用例ベース機械翻訳(EMT)」は、 本文の略記(RbMT / EbMT)に合わせて「(RbMT)」「(EbMT)」に正した。
「2000年以降」の「2015年: Google Translateが NMT を採用」は、 同ページの「2016年に NMT に移行するまで」という記述と矛盾するため 「2016年」に正した(GNMT の発表は 2016 年)。
「1950年代」の「セマンティック・ストラクチャー」は、 1957 年の Chomsky の著作および「文法を解析して翻訳」という説明から Syntactic Structures を指すと判断し 「シンタクティック・ストラクチャー(統語構造)」に正した。
「始めての NMT の試作機」は「初めての」に正した。
Tags: 移行, 人工知能, 言語処理, 機械翻訳, RbMT, EbMT, SMT, NMT
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。