Slide 1

Slide 1 text

テキスト生成の評価 × BERT    BERTScore, MoverScore, BLEURT 2020/05/15 nlpaper.challenge BERT活用勉強会LT Kentaro Nakanishi @cfiken

Slide 2

Slide 2 text

自己紹介 name: Kentaro Nakanishi id: @cfiken ひとこと: 前年度は機械学習あまりでき なかったので、今年度は頑張 りたい

Slide 3

Slide 3 text

今日の話 ● テキスト生成とその評価 ● 既存の評価指標 ● BERT を用いた評価指標 ○ BERTScore ○ MoverScore ○ BLEURT

Slide 4

Slide 4 text

テキスト生成とその評価

Slide 5

Slide 5 text

テキスト生成 xxx-to-text な様々なタスクがある ● text-to-text ○ 翻訳, 対話, 要約 ● data-to-text ○ クエリ化, タスク指向型対話 ● image-to-text ○ image captioning 主流は自己回帰モデル でのテキスト生成

Slide 6

Slide 6 text

テキスト生成とその評価 評価どうやるの? データセットで与えられているラベル文 (reference) と、 モデルで生成した出力文 (candidate) を比較する reference: people like foreign cars candidate: consumers prefer imported cars 同じ文?

Slide 7

Slide 7 text

テキスト生成とその評価 課題の1つに評価の難しさがある reference: people like foreign cars candidate 1: people like visiting foreign places candidate 2: consumers prefer imported cars ① 意味を考えると candidate 2 が良い ② 単語を見ると candidate 1 に近い どう評価をするかが難しい

Slide 8

Slide 8 text

テキスト生成とその評価 タスクによっては意味的に異なっていても良いものも image-captioning や対話など 対話の例 A: 月が綺麗ですね B: ???

Slide 9

Slide 9 text

テキスト生成とその評価 現状どうしている? 多くのタスクは自動評価に加えて人手評価も行っている デメリット ● コストが高い (時間・お金) ● 評価の保証が微妙

Slide 10

Slide 10 text

既存の評価指標

Slide 11

Slide 11 text

n-gram matching base の指標 reference 文と candidate 文で n-gram matching ● Precision ● Recall reference を , candidate を , n-gram 集合を とする

Slide 12

Slide 12 text

BLEU (n-gram matching base) 機械翻訳を中心に広く使われている評価指標 n-gram matching の precision を少し改良し、生成テキス トの長さが短すぎないようにペナルティを加えたもの BP: 生成文が短い場合のペナルティ Precision: match を1度しかカウントしないなど改良

Slide 13

Slide 13 text

METEOR (n-gram matching base) 外部辞書を用いて matching を広げた指標 ● 外部辞書で同義語やステミングを探し、マッチング ● precision ではなく F値を使う ● 評価対象の言語の外部辞書を用意する必要がある ● BLEU より人手評価との相関が高い

Slide 14

Slide 14 text

その他の n-gram matching base な指標 ROUGE: 要約で使われる recall ベースの指標 CHRF: character ベースの n-gram CIDEr: image captioning に使われる指標 その他 BLEU や ROUGE の派生などたくさん

Slide 15

Slide 15 text

Word Mover’s Distance (ICML 2015) [4] 単語の分布間の距離を Earth Mover’s Distance で計算 文中の単語の一致ではなく、意味で類似度を計算するため word2vec などの分散表現に対して EMD を計算

Slide 16

Slide 16 text

学習可能な評価指標 RUSE [5] は翻訳ドメインでの学習済み指標 2つの文をそれぞれ入力し、人手評価 の値を予測する回帰問題として学習 WMT 2018 Metrics task において to-english の翻訳で全体で1位 [5] Fig. 1

Slide 17

Slide 17 text

既存評価指標の課題 ● 多くが表面的な違い(単語の違い)の評価になっており、 意味的な違いが取れない ○ 類義語置換や意味が変わってしまう swap に弱い ● タスクに依らず使えるものが少ない ● 学習可能な指標の場合、別データで学習が必要 簡単に使えて、タスクに依らず、意味まで精度良く見てく れる、そんな指標があったらいいな

Slide 18

Slide 18 text

BERT を用いた評価指標

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

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

Slide 22

Slide 22 text

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

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

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

Slide 27

Slide 27 text

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

Slide 28

Slide 28 text

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 になってほしい

Slide 29

Slide 29 text

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

Slide 30

Slide 30 text

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

Slide 31

Slide 31 text

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

Slide 32

Slide 32 text

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

Slide 33

Slide 33 text

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

Slide 34

Slide 34 text

BERTScore (ICLR 2020) [1] Tianyi Zhang, Varsha Kishore, Felix Wu, Kilian Q. Weinberger, Yoav Artzi 実験紹介2: Robustness (実験の説明が非常に面倒) 既存指標に比べて、元データ の QQP でも adversarial swap を加えた PAWS でも良 い性能 [1] Table 6

Slide 35

Slide 35 text

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 と同等かやや良いスコア ● 計算に少し時間かかる

Slide 36

Slide 36 text

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

Slide 37

Slide 37 text

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

Slide 38

Slide 38 text

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 で文全体の意味を取れてるから?

Slide 39

Slide 39 text

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

Slide 40

Slide 40 text

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

Slide 41

Slide 41 text

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

Slide 42

Slide 42 text

BLEURT (ACL 2020) [3] Thibault Sellam, Dipanjan Das, Ankur P. Parikh 実験結果 これ以外にも多数実験しており、ある程度のロバスト性を 検証・確認している (domain-drift, quality-drift) [3] Table 4: WMT 2019 Metric Shared Task

Slide 43

Slide 43 text

まとめなど

Slide 44

Slide 44 text

まとめと今後 ● BERT を使ったテキスト生成の評価指標が出てきている ● BERTScore, MoverScore, BLEURT を紹介した ● どれも既存指標より人手評価との相関が高く、かつロバ スト性があり、今後の活用が期待できる (指標としてだけではなく、学習に組み込むのもアリ?)

Slide 45

Slide 45 text

余談1 指標は次の3つに分類できる 1. ルールベースで計算 (BLEU 等) 2. 汎用的なモデルの出力を比較する (w2v, BERTScore 等) 3. 人手評価をモデリングする (RUSE, BLEURT 等) 個人的には 3 が流行るとタスク依存が大きくなったりモデ ル合戦になるので辛い 1 と 2 の hybrid な指標がベースになっていくか?

Slide 46

Slide 46 text

余談2 BERTScore, めっちゃ単純じゃね? と最初は思ったが... ● 指標として定義されることの重要性 ● 現実的な使いやすさがかなり高い ● 広範囲な実験を行っていること で ICLR 2020 に通ったのかなあと考えています

Slide 47

Slide 47 text

ありがとうございました

Slide 48

Slide 48 text

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/

Slide 49

Slide 49 text

No content