Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[2018] Subword Regularization: Improving Neural Network Translation Models with Multiple Subword Candidates #56

Open
IkokObi opened this issue Dec 5, 2019 · 4 comments
Labels
NLP Natural Language processing Translation

Comments

@IkokObi
Copy link
Collaborator

IkokObi commented Dec 5, 2019

ざっくり言うと

翻訳タスクの目的関数をsubword tokenizationの期待値として定式化し直し,tokenization結果をサンプリングしNMTを学習することで精度を上げた.サンプリングが正則化やdata augementationと似た役割を果たしている.tokenizationをサンプリングするために,決定論的ではなく確率的な扱いが出来るUnigram language modelを提案.

キーワード

  • neural machine translation
  • subword tokenization
  • regularization
  • data augementation

1. 情報

論文リンク

https://www.aclweb.org/anthology/P18-1007/

著者

Taku Kudo (Google)

投稿日付

2018/8/29 (ACL 2018)

2. 先行研究と比べてどこがすごい?

  • 翻訳タスクの目的関数をsubword tokenizationの期待値として定式化し直して学習させることで,Neural翻訳の精度を上げた

3. 技術や手法のキモはどこ?

  • 翻訳タスクの目的関数をtokenizationに関する期待値として定式化し直した
  • 期待値を取るためにはtokenizationを確率的に扱う必要があるが,そのためにBPE(byte pair encoding)に類似した発想で,確率的言語モデルと確率論的情報圧縮によるtokenization方法Unigram language modelを提案した
  • Unigram language modelの学習アルゴリズムはencodingの符号長の最小化とみなせる

4. どうやって有効だと検証した?

  • 5つの翻訳タスクに対してBPE及び単語ベースのtokenization手法と比較
  • BLEUスコアで一貫して改善が見られた

5. 議論はある?

  • tokenizationのサンプリングはある種の正則化やdata augementationとして機能しているとも解釈される
  • 提案手法は翻訳タスクのencoder, decoderともに適用可能であり,翻訳以外の分類や要約タスクにも応用可能

6. 次に読むべき論文は?

@IkokObi IkokObi added NLP Natural Language processing Translation labels Dec 5, 2019
@IkokObi
Copy link
Collaborator Author

IkokObi commented Dec 5, 2019

7. 実装の詳細

目的関数の再定式化

  • 翻訳タスクの目的関数を式(2)から式(3)へと変更する

スクリーンショット 2019-12-05 14 48 35

スクリーンショット 2019-12-05 14 45 47

  • ただし,実際には期待値を取ることは難しいので,サンプリングによって代替する(論文中ではk=1としている)

スクリーンショット 2019-12-05 14 49 49

Unigram language model

  • 各subwordの出現確率は独立という過程を入れる

スクリーンショット 2019-12-05 14 50 34

  • その下で,全体の最尤法を行う

スクリーンショット 2019-12-05 14 50 11

  • 学習時にはp(x)と語彙集合νを同時に学習する必要がある.適当な語彙集合からスタートし,p(x)の学習にはEMアルゴリズムを,νは重要なvocabを残しつつ,p(x)の大きいsubwordを残して語彙数を調整する

decoding時の工夫

  • 短い文章に対してペナルティが与えられるようなスコア関数に基づいてbest文章を選ぶ

スクリーンショット 2019-12-05 15 37 19

@IkokObi
Copy link
Collaborator Author

IkokObi commented Dec 5, 2019

8. データセット

  • 5つのデータセットを用いている
    • IWSLT15/17 と KFTT は比較的小さめなデータセット
    • ASPEC と WMT14 (en↔de) は中程度の大きさのデータセット
    • WMT14 (en↔cs) は大規模データセット

スクリーンショット 2019-12-05 15 00 01

@IkokObi
Copy link
Collaborator Author

IkokObi commented Dec 5, 2019

9. 結果の詳細

  • ベースラインとしたBPEよりもほぼ全てで上回る (Table 3)
  • decoding時にも短い文章に対して正則化を入れて,複数候補から良いものを選んだ方が良い
  • サンプリング数を厳密に全て(l=∞)ではなく上限を定める(l=64)の方が安定している (Figure 1)

スクリーンショット 2019-12-05 15 32 44

@IkokObi
Copy link
Collaborator Author

IkokObi commented Dec 5, 2019

雑感&メモ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NLP Natural Language processing Translation
Projects
None yet
Development

No branches or pull requests

1 participant