ナード戦隊データマン

機械学習, 自然言語処理, データサイエンスについてのブログ

NMTのドメイン適応

ドメイン適応とは、ソースデータの分布から、異なる分布をもつターゲットデータで高いパフォーマンスを出すモデルを訓練する手法です。

今回は、A Survey of Domain Adaptation for Neural Machine Translation1のうち、NMTに関することをざっとまとめます。

ざっくり

f:id:mathgeekjp:20190826130726p:plain

Data Centric

単一言語コーパスの使用

  • 単一言語データでRNNLMをトレーニングし、RNNLMモデルとNMTモデルを融合。
  • ターゲットの単一言語データをソース側にコピーし、コピーしたデータをNMTのトレーニングに使用。
  • LMおよびNMTマルチタスク学習でデコーダーにターゲット単言語データを使用。
  • ソース側の単一言語データを使用して、翻訳とalignmentされたソース文の両方を予測するためのマルチタスク学習によりNMTエンコーダーを強化。
  • NMTをオートエンコーダーとして使用して単言語データを再構築することにより、NMTのソースとターゲットの両方の単言語データを使用。

合成並列コーパス生成

  • NMT自体にLMを学習する機能があるため、ターゲットの単一言語データをNMTシステムに使用して、ターゲット文を逆翻訳してデコーダを強化し、合成並列コーパスを生成。

ドメイン外並列コーパスの使用

  • ドメインタグをソース文に追加して訓練。さらに訓練で各ドメインに対して等しく注意を払うために、小さなコーパスはオーバーサンプリングする。
  • データ選択: NMTのソース分の内部埋め込みを使い、ドメイン外データからドメイン内データに類似した文を選択してデータを増やす。
  • データ選択において、ドメイン内の類似性に基づいて動的に徐々に訓練データを減らすとパフォーマンスが上がる。

Model Centric

レーニング目標centric

Fine tuning

正則化

Architecture Centric

Deep Fusion

  • ドメイン内RNNLMを訓練し、それをNMTと組み合わせる。
  • RNNLMとNMTを同時に訓練する方法と、別々に訓練する方法がある。

Domain Discriminator

Domain Control

Decoding Centric

Shallow Fusion

  • LMが大きなモノリンガルコーパスで訓練され、その後事前訓練済みのNMTと融合する。

Ensembling

  • SMTによって生成されたラティスを使ってスタックベースのデコーダを作る。

最近の課題・動向

最先端のNMTへのドメイン適応

  • 現在のドメイン適応の研究の多くがRNNベースのモデルに基づくため、最新のNMTモデルに対しての研究が望まれている。

ドメイン固有辞書

  • 使用頻度が低いドメイン固有語に対するplaceholderのためのパラレル辞書がほしい。

多言語・マルチドメイン適応

  • 複数言語でNMTモデルパラメータを転移するクロスリンガル転移学習。ターゲット言語が同じ場合、低リソース言語の翻訳品質の向上につながる。
  • 複数の言語ペアと複数のドメインを単一の翻訳システムで扱うものはないが、両方使えばパフォーマンスが上る可能性がある。

GANとドメイン生成

  • discriminatorを使ってドメインの不一致距離を最小化する方法がある。
  • 一般ドメインから特定のドメインへの適応に焦点が当たるが、実際のシナリオでは訓練データとテストデータの分布が違うことがあるため、翻訳エラーの分析をする。
  • ドメインの一般化: ソースドメインから得られた知識を、確認されていないターゲットドメインへ適用する。これにより、訓練データとテストデータの分布を一致させる。

まとめ

  • NMTのドメイン適応は、MTの実用化を促進するためのかなり新しいが非常に重要な研究トピック。
  • NMTのドメイン適応手法を一般的なNLP、コンピュータービジョン、機械学習の手法につなげることは、今後の課題。

参考