Slide 1

Slide 1 text

論⽂紹介 Decomposable Neural Paraphrase Generation Zichao Li, Xin Jiang, Lifeng Shang, Qun Liu (Huawei Noahʼs Ark Lab) ACL 2019 紹介者: ⻄⽥京介 2019/09/28 @ 第11回最先端NLP勉強会 https://www.aclweb.org/anthology/P19-1332

Slide 2

Slide 2 text

• 何をする研究か︖ – ⽂(〜20 words)の⾔い換え(Paraphrasing) • 貢献は何か︖ – フレーズ,⽂に分解して⾔い換えを学習するモデル Decomposable Neural Paraphrase Generator (DNPG) を提案 – Quora, WikiAnswersで実験しPointer-Generatorを上回る • 嬉しさは︖ J ⾔い換えの解釈性が⾼い J フレーズ,⽂レベルで⾔い換えを制御可能 J ドメイン適応できる J モデルがシンプル,⾔い換え以外にも転⽤できるかも K 精度は(⾃動評価だと)⼤幅には上がってはいない 2 概要

Slide 3

Slide 3 text

• ⾔い換えの結果を⽂とフレーズの各レベルの⾔い換 えに分解して説明できる 3 嬉しさ(1): 解釈性が⾼い

Slide 4

Slide 4 text

• ⽂レベルのみ,フレーズレベルのみ,両⽅を考慮し た⾔い換えの制御が可能 4 嬉しさ(2): 制御可能 ⼊⼒ 制御策 出⼒

Slide 5

Slide 5 text

• 新ドメインのパラレルコーパスなしでドメイン適応 – ⾔い換えを⽂とフレーズレベルに分解したことで可能に 5 嬉しさ(3): ドメイン適応 ソースドメイン モデル ターゲットドメイン モデル 学習 転移 適応 Question1 Who wrote the Winnie the Pooh books? What relieves a hangover? What are social networking sites used for? How do you say Santa Claus in Sweden? Say santa clause in sweden? Quora WikiAnswers この論⽂では事実上 データセット=ドメイン

Slide 6

Slide 6 text

6 モデル 各単語に粒度(⽂/フ レーズ)をラベリング (⽂構造の推定器) 粒度毎に ⾔い換え 集約して出⼒

Slide 7

Slide 7 text

• ⼊⼒︓単語列 X = [x1, ..., xL] • 出⼒︓粒度ラベル列 Z = [z1, ..., zL] ※ 実験では粒度は⽂/フレーズの2種類に限定 • 2層のLSTMでモデリング • GS: Gumbel-Softmax function (τ: 温度パラメータ) – 微分可能な⽅法で 離散的なラベルz を得るために利⽤ 7 Separator

Slide 8

Slide 8 text

• ⼊⼒︓単語列 X, 粒度ラベル列Z • 出⼒︓単語列Y • エンコーダデコーダを粒度z(⽂/フレーズ)毎に⽤意 • Transformerベース(Position embeddingとアテンショ ンに⼯夫) • デコーダにはコピー機構を導⼊ 8 Multi-granularity Encoder-Decoder

Slide 9

Slide 9 text

• フレーズレベルの位置エンコーディングは普通 • ⽂レベルの位置情報はフレーズレベルの単語数に依 存させたくないので,位置posまでに出現した⽂レ ベル単語数を使う 9 ⼯夫1: Positional Encoding

Slide 10

Slide 10 text

• フレーズレベルはlocal(隣接3単語のみvisible) • ⽂レベルはglobal(全単語,ただし⽂レベル単語の みvisible) 10 ⼯夫2: アテンション時の単語可視性(効果⼤︕) フレーズレベル ⽂レベル

Slide 11

Slide 11 text

• フレーズレベルのデコーダではコピー機構を導⼊ • モデルのキャパシティはフレーズレベル > ⽂レベル – 300次元,6ヘッド > 150次元,3ヘッド – フレーズの⽅がlong-tailなので 11 ⼯夫3: キャパシティとコピー機構

Slide 12

Slide 12 text

• ⼊⼒︓各デコーダ出⼒ • 出⼒︓単語列Y • 各デコーダの出⼒単語のどちらを採⽤するかを各時 刻で決定 12 Aggregator

Slide 13

Slide 13 text

• 粒度選択⽤のLSTMを⽤意して出⼒ 13 Aggregator c0 c1 z=0(フレーズ) v(t) v(t-1)

Slide 14

Slide 14 text

14 モデル(再掲) 各単語に粒度(⽂/フ レーズ)をラベリング (⽂構造の推定器) 粒度毎に ⾔い換え 集約して出⼒

Slide 15

Slide 15 text

• 提案モデルは End-to-end に学習できるが,Separator と Aggregator のために単語の粒度ラベルに weak supervision z* を与える • Loss を計算する際,λ は 1 から徐々に 0 に近づけて いく(徐々にweak supervisionを無視する) 15 学習 End-to-end Separator Aggregator

Slide 16

Slide 16 text

• Weak supervision z* はパラフレーズコーパスを⽤いて学習し たアラインメントモデルを利⽤ (Och and Ney, 2003) • Most rare wordsを含んだフレーズのペア(1〜3個,ランダム に決定)に z* = 0(フレーズレベル)を割当,残りは z* = 1 (⽂レベル) 16 学習 z* = 1 1 1 1 1 0 0 0 z* = 1 1 0 0 0 0 1 Separator側のweak supervisionに利⽤ Aggregator側のweak supervisionに利⽤ Alignmentを取る

Slide 17

Slide 17 text

• 推定した各単語の粒度レベルを⽤いて⽂レベルの⾔い換えパ ターンを容易に抽出可能 • フレーズレベルのチャンクが複数ある場合,アテンションの 値を⽤いて対応付け 17 嬉しさ(1)の実現︓解釈性(パターン抽出)

Slide 18

Slide 18 text

1. ⽂レベルのみ⾔い換え(フレーズを保存) – フレーズレベル Decoder(not Aggregator)の コピー機構 で ρ = 1 に固定して実現 2. フレーズレベルのみ⾔い換え(⽂構造を保存) – ⼊⼒⽂の各単語の 推定粒度が z = 1 ならそのまま出⼒, z = 0 なら フレーズレベル Decoder で⾔い換えを出⼒ 18 嬉しさ(2)の実現︓制御

Slide 19

Slide 19 text

• 前提︓ターゲットドメインの⾔い換えパラレルコー パスは与えられない状況(⼊⼒⽂はある) • 問題︓フレーズレベルはドメイン固有になりやすい → Separatorが上⼿く動かない • アプローチ︓⽂テンプレートの⾔語モデルに基づく 報酬を強化学習で最⼤化 19 嬉しさ(3)の実現︓教師なしドメイン適応 What makes the second world war happen ↓ What makes $x happen のレベルならドメインに依存しない

Slide 20

Slide 20 text

1. ソースドメインで学習した Separator で抽出した⽂テンプ レートから,LSTMでテンプレート⾔語モデルを学習 2. ターゲットドメインの Separator の出⼒から抽出した⽂テン プレートが⾔語モデルから得られる報酬が⾼くなるように Separator を強化学習 20 テンプレート⾔語モデルによる報酬

Slide 21

Slide 21 text

• 従来⼿法を上回る精度が出たか︖ • 解釈性はどうか(正しくパターンを抽出できたか)︖ • 制御は上⼿くできたか︖ • ドメイン適応できたか︖ • 主観評価では⾔い換えの正しさはどうか︖ • モデルの⼯夫は効果があったか︖ 21 評価実験: Research Questions

Slide 22

Slide 22 text

• Quora (⼈⼿でアノテーション) • WikiAnswers(⾃動的に収集,ノイズ多い) • 20単語を超えるものは truncate • 語彙サイズ 8K (コピー機構があるため基本的な単 語のみ,subwordは使わない) 22 データセット

Slide 23

Slide 23 text

• BLEU, ROUGE-1, 2, iBLEUで評価 • iBLEU (Sun and Zhou, 2012) は元⽂と同じ表現にペナ ルティ • 主観評価(⼿法間の相対評価,6名)も⼀部で実施 23 評価指標 ⾔い換えcとリファレンスrsの近さ ⾔い換えcと元⽂sの近さ

Slide 24

Slide 24 text

• Quora,WikiAnswers の両⽅で,⾔い換えを粒度レベルで分解 しない従来⼿法を上回る結果 • よりノイズの多い WikiAnswers で良い結果 24 従来⼿法を上回る精度が出るか︖

Slide 25

Slide 25 text

• 出⼒サンプルを提⽰して評価 25 解釈性はどうか︖

Slide 26

Slide 26 text

• 出⼒サンプルを提⽰して評価 26 制御は上⼿くできたか︖

Slide 27

Slide 27 text

• 出⼒サンプルを提⽰して評価 27 制御は上⼿くできたか︖

Slide 28

Slide 28 text

• ドメイン適応させた Adapted DNPG が最も良いスコア 28 ドメイン適応できるのか︖ ベースライン︓翻訳のmonolingual dataによる精度改善アプローチ MTL︓LMと⾔い換えのマルチタスク学習 (Domhan and Hieber, 2017) Shallow fusion: LMのスコアによるreranking (Gulcehre et al., 2015)

Slide 29

Slide 29 text

• ドメイン適応させた Adapted DNPG が最も良いスコア 29 ドメイン適応できるのか︖ ベースライン︓翻訳のmonolingual dataによる精度改善アプローチ MTL︓LMと⾔い換えのマルチタスク学習 (Domhan and Hieber, 2017) Shallow fusion: LMのスコアによるreranking (Gulcehre et al., 2015)

Slide 30

Slide 30 text

• WikiAnswers -> Quora で評価(4⼿法にランク付け). – 基準: Readability -> Accuracy -> Diversity [補助資料B] • ドメイン適応させることで Reference に近い順位を達成 • 6名のアノテータ間の⼀致率を計算 30 主観評価の結果はどうか︖

Slide 31

Slide 31 text

• WikiAnswers -> Quoraで実験 • Multi-Head Attention の⼯夫 (local / global)が効果⼤ • Positional Encoding, Gumbel Softmax の⼯夫も効果あり 31 モデルの⼯夫は効果があったか︖

Slide 32

Slide 32 text

• ⾔い換えにおいて3つ以上の粒度を考えることは性 能改善につながるか︖ Lモデルは3つ以上でも動作するが実験は2つの場合のみ • End-to-end で精度良く学習できるのか︖Weak supervisionが必須︖ L実験は weak supervision ありの場合のみ • 他タスクでも有効か︖対話では︖ 翻訳では︖QAで は︖ 要約では︖ L実験は⾔い換えのみ L 評価指標はどうしたらいいのだろう... 32 [感想] 知りたかったこと

Slide 33

Slide 33 text

• 今回は Pointer-Generator だった • Pre-training Sequence-to-sequenceモデルの台頭 – MASS [Song et al., ICML’19] ※要約,翻訳,応答⽣成 – UniLM [Dong et al., Neurips’19] ※要約,読解,質問⽣成 – PoDA [Wang et al., EMNLP’19] ※要約 • ⾔い換え⽣成は上記の論⽂では評価されていないが, 要約タスクの状況を⾒ると,きっと⾔い換えでも強 いだろう 33 [感想] これからのベースラインは︖

Slide 34

Slide 34 text

• BEFTの直前,機械読解は⾔い換えによるデータ拡張 が⾏われていた – QANet [Yu+, ICLR18] ※ backtranslation-base • BERT世代に⼊って,downstream tasksでの data augmentationをあまり⽬にしていない気がする – もはや増やす必要がない︖ – 実は相性が悪い︖ – そこを頑張るよりも⾔語モデルに学習させるテキスト量 を増やすほうが良い︖ 34 [感想] data augmentationのための⾔い換え︖

Slide 35

Slide 35 text

• 何をする研究か︖ – ⽂(〜20 words)の⾔い換え(Paraphrasing) • 貢献は何か︖ – フレーズ,⽂に分解して⾔い換えを学習するモデル Decomposable Neural Paraphrase Generator (DNPG) を提案 – Quora, WikiAnswersで実験しPointer-Generatorを上回る • 嬉しさは︖ J ⾔い換えの解釈性が⾼い J フレーズ,⽂レベルで⾔い換えを制御可能 J ドメイン適応できる J モデルがシンプル,⾔い換え以外にも転⽤できるかも K ⾃動評価精度は⼤幅には上がってはいない 35 まとめ