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

[2020] Language-agnostic BERT Sentence Embedding #59

Open
IkokObi opened this issue Sep 2, 2020 · 4 comments
Open

[2020] Language-agnostic BERT Sentence Embedding #59

IkokObi opened this issue Sep 2, 2020 · 4 comments
Labels
Feature learning 特徴量学習 Metric learning 距離学習 NLP Natural Language processing

Comments

@IkokObi
Copy link
Collaborator

IkokObi commented Sep 2, 2020

ざっくり言うと

多言語での文章埋め込み(Sentence embedding)を学習するモデル(LaBSE)の研究。BERT由来のMasked language model(MLM)と多言語対応のための翻訳言語モデル、そして文章埋め込みを学習するために距離学習のような学習を取り入れることで精度を向上させた。学習済みモデルをTensorFlow Hubで公開している。

キーワード

  • multilingual
  • sentence embedding

1. 情報

論文リンク

https://arxiv.org/abs/2007.01852

著者

Fangxiaoyu Feng, Yinfei Yang, Daniel Cer, Naveen Arivazhagan, Wei Wang
Google AI

投稿日付

2020/7/3

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

  • 2言語間文書検索タスクにおいて、112の言語の平均精度83.7%を達成し、既存の65.5%を大きく上回った。
  • 特に訓練データの少ない低リソース言語でも精度が落ちにくいモデルとなっている。

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

  • 2言語文書検索タスクをマージンロスで学習し、優れた文章埋め込みを獲得している点。
  • 2言語対訳ペアの品質も精度に影響しており、contrastive-data-selection(CDS) model (Wang et al., 2018)という方法でデータをフィルタリングしている。

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

  • 3つの多言語文書検索データセット(BUCC, United Nations, Tatoeba)で既存のSOTAモデルと精度比較
  • Ablation studyとして以下の影響を調査し、特にmargin lossとデータ品質の重要性を示している。
    • margin loss
    • Encoderモデル(BERT)の事前学習の必要性
    • データ品質
    • Negative sampling

5. 議論はある?

  • multilingual BERTで初期化するよりも新たに事前学習する方が精度が向上したのは以下の点が寄与していると考えている。
    • 語彙数が多い(500k vs 30k)
    • MLMの他にTLMも行っている
    • Wikipediaの他にCrawlデータセットも用いて学習している
  • Tatoebaデータセットの内、学習データに含まれていない言語での精度の良し悪し(Zero-shot transfer)の原因を考察している。原因として考えられているのはwordpieceの分割が細かくなり、文章内のtoken数が多くなることだと分析している。
  • 文の意味的類似性(Semantic Textual Similarity)を図るベンチマークセットにおいては、他のモデルよりも劣る結果となっている。複数言語間の文の一致性の学習に偏っており、単一言語におけるニュアンスを汲み取る性能は獲得できていないのではないかと分析している。
  • LaBSEを用いて対訳ペアを収集し、翻訳モデルを学習することで、既存の翻訳モデルよりも高いBLEUスコアを達成している。

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

  • Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
    • Nils Reimers, Iryna Gurevych
    • 2019/8/27
    • https://arxiv.org/abs/1908.10084
    • Sentence BERT、BERTで良い文埋め込みを学習する方法についての先行研究。
  • Cross-lingual Language Model Pretraining
  • Improving Multilingual Sentence Embedding using Bi-directional Dual Encoder with Additive Margin Softmax
    • Yinfei Yang , Gustavo Hernandez Abrego , Steve Yuan , Mandy Guo , Qinlan Shen ,
      Daniel Cer , Yun-hsuan Sung , Brian Strope and Ray Kurzweil (Google AI Language)
    • 2019/8 (IJCAI 2019)
    • https://www.ijcai.org/Proceedings/2019/746
    • 多言語モデルをマージンロスで学習する手法についての先行研究。
@IkokObi IkokObi added NLP Natural Language processing Metric learning 距離学習 Feature learning 特徴量学習 labels Sep 2, 2020
@IkokObi
Copy link
Collaborator Author

IkokObi commented Sep 2, 2020

7. 実装の詳細

  • 基本的なモデルはBERT-base
    • 文章ベクトルは[CLS]のベクトルをL2正規化したもの

スクリーンショット 2020-09-02 11 54 58

  • 事前学習として以下の2つを採用
    • Masked Language Model (Devlin et al., 2019)
    • Translation Language Model (Conneau and Lample, 2019)
  • 上記2つの後にマージンロスを用いた学習を行っている

スクリーンショット 2020-09-02 12 02 15

  • 学習にはmonolingualとbilingualデータセットを用いている
    • Monolingual: WikipediaとCrawl, 17B sentences
    • Bilingual translation: webページより。6B sentence pairs集めたが、実際の学習では200M sentences程度で十分。

@IkokObi
Copy link
Collaborator Author

IkokObi commented Sep 2, 2020

8. データセット

  • 2言語での類似文検索タスクは3つのデータセットで検証
    1. BUCC
    • fr-en, de-en, ru-en, zh-en
    1. United Nations
    • en-(fr, es, ru, ar, zh)
    • 11.3 millionの対応文
    1. Tatoeba
    • Englishに対して112言語の対応文(1,000個)のデータセット

@IkokObi
Copy link
Collaborator Author

IkokObi commented Sep 2, 2020

9. 結果の詳細

  • Tatoebaの結果より、低リソース言語に対しても良い精度

スクリーンショット 2020-09-02 12 07 59

  • Ablation studyとして、marginロスの重要性を指摘している。BERTモデルの事前学習は、margin lossでの文書検索学習を十分行なうことでほぼ補えるという結果に。

スクリーンショット 2020-09-02 12 08 45

@IkokObi
Copy link
Collaborator Author

IkokObi commented Sep 2, 2020

雑感&メモ

  • 意味的類似性の学習が弱いという点で、多言語での分類タスクなどへどうfine-tuningしたら良いか気になる
    • モデルのfine-tuningはせず、特定言語(もともと学習データの多い言語?)でのexampleを沢山用意し、k-NNするのが良いのだろうか

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature learning 特徴量学習 Metric learning 距離学習 NLP Natural Language processing
Projects
None yet
Development

No branches or pull requests

1 participant