Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[2020/05/15] nlpaper.challenge BERT応用勉強会 テキスト生成の評価 × BERT

cfiken
May 15, 2020

[2020/05/15] nlpaper.challenge BERT応用勉強会 テキスト生成の評価 × BERT

2020/05/15 に開催されたBERT応用勉強会のLT発表での資料です。
https://nlpaper-challenge.connpass.com/event/174957/

cfiken

May 15, 2020
Tweet

More Decks by cfiken

Other Decks in Technology

Transcript

  1. テキスト生成 xxx-to-text な様々なタスクがある • text-to-text ◦ 翻訳, 対話, 要約 •

    data-to-text ◦ クエリ化, タスク指向型対話 • image-to-text ◦ image captioning 主流は自己回帰モデル でのテキスト生成
  2. テキスト生成とその評価 課題の1つに評価の難しさがある reference: people like foreign cars candidate 1: people

    like visiting foreign places candidate 2: consumers prefer imported cars ① 意味を考えると candidate 2 が良い ② 単語を見ると candidate 1 に近い どう評価をするかが難しい
  3. n-gram matching base の指標 reference 文と candidate 文で n-gram matching

    • Precision • Recall reference を , candidate を , n-gram 集合を とする
  4. BLEU (n-gram matching base) 機械翻訳を中心に広く使われている評価指標 n-gram matching の precision を少し改良し、生成テキス

    トの長さが短すぎないようにペナルティを加えたもの BP: 生成文が短い場合のペナルティ Precision: match を1度しかカウントしないなど改良
  5. METEOR (n-gram matching base) 外部辞書を用いて matching を広げた指標 • 外部辞書で同義語やステミングを探し、マッチング •

    precision ではなく F値を使う • 評価対象の言語の外部辞書を用意する必要がある • BLEU より人手評価との相関が高い
  6. その他の n-gram matching base な指標 ROUGE: 要約で使われる recall ベースの指標 CHRF:

    character ベースの n-gram CIDEr: image captioning に使われる指標 その他 BLEU や ROUGE の派生などたくさん
  7. Word Mover’s Distance (ICML 2015) [4] 単語の分布間の距離を Earth Mover’s Distance

    で計算 文中の単語の一致ではなく、意味で類似度を計算するため word2vec などの分散表現に対して EMD を計算
  8. 既存評価指標の課題 • 多くが表面的な違い(単語の違い)の評価になっており、 意味的な違いが取れない ◦ 類義語置換や意味が変わってしまう swap に弱い • タスクに依らず使えるものが少ない

    • 学習可能な指標の場合、別データで学習が必要 簡単に使えて、タスクに依らず、意味まで精度良く見てく れる、そんな指標があったらいいな
  9. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 一言でいうと • BERT の出力を用いて reference 文と candidate 文の 間の類似度を計算する BERTScore を提案 • pre-trained BERT を使うだけで良いので簡単 • 実験で人手評価との相関も既存指標より高い • adversarial swap に対してもロバスト
  10. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 使うのは非常に簡単 [1] Fig. 1
  11. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 使うのは非常に簡単 reference 文, candidate 文をともに BERT に突っ込んで contextualized embeddings を得る
  12. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 使うのは非常に簡単 それぞれの文のすべての単語について cosine similarity を計算する
  13. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 使うのは非常に簡単 reference / candidate の各単語について max をとる 場合によっては idf で重み付けする
  14. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi Recall, Precision, F1 reference を , candidate を とすると、
  15. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi サンプルコード(簡易) 実際の BERTScore の実装とはいくつか異なります 間違ってたら教えて下さい 公式実装はこちら > https://github.com/Tiiiger/bert_score
  16. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi サンプルコード(簡易) かんたん!
  17. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi ↑ Recall ↑ Precision ↑ F1
  18. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi ref = 'people like foreign cars' cand1 = 'people like visiting foreign places' cand2 = 'consumers prefer imported cars' cand3 = 'Obama speaks to the media in Illinois' cand2 > cand1 > cand3 になってほしい
  19. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi > cand1 cand2 cand3 >
  20. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi bert-large-uncased-whole-word-masking でリベンジ
  21. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi > > cand1 cand2 cand3
  22. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 比較実験 多くの実験をしているので詳しくは論文参照
  23. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 実験紹介1: 翻訳でのモデル選択 (WMT 2018 を使用) [1] Table 3 RUSE (学習済み指標)に次いで高い性能
  24. BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu,

    Kilian Q. Weinberger, Yoav Artzi 実験紹介2: Robustness (実験の説明が非常に面倒) 既存指標に比べて、元データ の QQP でも adversarial swap を加えた PAWS でも良 い性能 [1] Table 6
  25. MoverScore (EMNLP 2019) [2] Wei Zhao, Maxime Peyrard, Fei Liu,

    Yang Gao, Christian M. Meyer, Steffen Eger 一言でいうと • Word Mover’s Distance を BERT 出力に適用 • BERTScore が最大の類似度となる単語だけを使って計 算する Hard Alignment であるのに対して、Soft Alignment な類似度になる。 • 論文では BERTScore と同等かやや良いスコア • 計算に少し時間かかる
  26. MoverScore (EMNLP 2019) [2] Wei Zhao, Maxime Peyrard, Fei Liu,

    Yang Gao, Christian M. Meyer, Steffen Eger Word Mover’s Distance による Soft Alignment BERTScore は最も類似度 の高い単語だ けを参照する MoverScore はどのように 分布を移動さ せれば最小で 済むかを計算 する [2] Fig. 1
  27. MoverScore (EMNLP 2019) [2] Wei Zhao, Maxime Peyrard, Fei Liu,

    Yang Gao, Christian M. Meyer, Steffen Eger 実験結果1: WMT 2017 Metrics task [2] Table 1
  28. MoverScore (EMNLP 2019) [2] Wei Zhao, Maxime Peyrard, Fei Liu,

    Yang Gao, Christian M. Meyer, Steffen Eger 実験結果2: Hard/Soft Alignment 比較 Hard (HMD) と Soft (WMD) で 比較を行った [2] Table 5 WMD-BIGRAM が安定して高いが、正直そこまで変わらない contextualized embeddings で文全体の意味を取れてるから?
  29. BLEURT (ACL 2020) [3] Thibault Sellam, Dipanjan Das, Ankur P.

    Parikh 一言でいうと • BERT をテキスト生成評価用に pre-training & finetuning しまくった BLEURT を提案 • 人手評価データがあればそれを使いたいが、コスト高い ので疑似データペアを大量に作って活用 • BLEU や BERTScore, Backtranslation を使用して学習 • BERTScore などの既存指標のスコアを大きく改善
  30. BLEURT (ACL 2020) [3] Thibault Sellam, Dipanjan Das, Ankur P.

    Parikh 疑似データペア作成 • wikipedia テキスト180万から疑似ペアデータ650万を 作成 • 次の方法で疑似データペアを大量作成 ◦ BERT の mask ◦ Backtranslation (en -> fr/de -> en) ◦ 確率的に一部単語を drop
  31. BLEURT (ACL 2020) [3] Thibault Sellam, Dipanjan Das, Ankur P.

    Parikh 疑似データで pre-training • pre-training に次の signal を利用 ◦ BLEU, ROUGE (3種) , BERTScore (3種) ◦ Backtranslation で作成した疑似データの尤度 (4種) ◦ BERT + MNLI モデルでの entailment 予測値 (3種) ◦ Backtranslation データかどうかのフラグ • 計6種類15個のラベルで pre-train
  32. BLEURT (ACL 2020) [3] Thibault Sellam, Dipanjan Das, Ankur P.

    Parikh 実験結果 これ以外にも多数実験しており、ある程度のロバスト性を 検証・確認している (domain-drift, quality-drift) [3] Table 4: WMT 2019 Metric Shared Task
  33. まとめと今後 • BERT を使ったテキスト生成の評価指標が出てきている • BERTScore, MoverScore, BLEURT を紹介した •

    どれも既存指標より人手評価との相関が高く、かつロバ スト性があり、今後の活用が期待できる (指標としてだけではなく、学習に組み込むのもアリ?)
  34. 余談1 指標は次の3つに分類できる 1. ルールベースで計算 (BLEU 等) 2. 汎用的なモデルの出力を比較する (w2v, BERTScore

    等) 3. 人手評価をモデリングする (RUSE, BLEURT 等) 個人的には 3 が流行るとタスク依存が大きくなったりモデ ル合戦になるので辛い 1 と 2 の hybrid な指標がベースになっていくか?
  35. Reference [1] BERTScore: Evaluating Text Generation with BERT, T. Zhang

    et al., ICLR 2020, https://arxiv.org/abs/1904.09675 [2] MoverScore: Text Generation Evaluating with Contextualized Embeddings and Earth Mover Distance, W. Zhao et al., EMNLP 2019, https://arxiv.org/abs/1909.02622 [3] BLEURT: Learning Robust Metrics for Text Generation, T. Sellam et al., ACL 2020, https://arxiv.org/abs/2004.04696 [4] From Word Embeddings To Document Distances, M. J. Kusner et al., ICML 2015, http://mkusner.github.io/publications/WMD.pdf [5] RUSE: Regressor Using Sentence Embeddings for Automatic Machine Translation Evaluation, H. Shimanaka et al., Proceedings of the Third Conference on Machine Translation, https://www.aclweb.org/anthology/W18-6456/