238 Views
October 23, 20
スライド概要
2020/10/23
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP [DL Papers] What do Models Learn from Question Answering Datasets? Kazutoshi Shinoda, Aizawa Lab http://deeplearning.jp/ 1
書誌情報 • • • • What do Models Learn from Question Answering Datasets? 著者: Priyanka Sen, Amir Saffari 所属: Amazon Alexa EMNLP 2020 long 2
概要 • 背景 – QAモデルが本当に読解できるようになったのかはまだよくわかっていない • 何をしたか – 5つのQAデータセット・6つのタスクで,モデルが何を学習しているのかについて調 査を行った • 何がわかったか – あるデータセットから他のデータセットにはうまく汎化できない – 読解を妨げるような編集に対してなぜか頑健 – 質問文への簡単な編集にはうまく対処できていない • What do Models Learn from Question Answering Datasets? – モデルはただ質問と文章の語彙の重複やentity typeについての単純なヒューリス ティックを学習しているだけで,読解をしているとはあまり言えない 3
導入 • AIは読解でも人間を超えた! https://rajpurkar.github.io/SQuAD-explorer/ 4
導入 • ところが… • 簡単なcontext/type matching heuristicsを使うとSQuAD 1.1で はいいスコアをとれてしまう (Weissenborn et al., 2017) • 複雑な推論をしなくても解けてしまう 5
導入 • ところが… • 一貫しない予測をするQAモデル (Ribeiro et al., 2019) 6
導入 • ところが… • 敵対的攻撃に対して脆弱(Jia and Liang, 2017, Wallace et al., 2019) 7
導入 • もしもQAモデルが「読解」をせずにテストセットで良いスコアを出 していたら,テストセット自体に欠陥があると言える • そのためQAデータセットからモデルは何を学んだいるのか理解する 必要がある • この研究では以下の3つのResearch Questionに答える – (1) 個別のデータセットでの性能は他のデータセットにも汎化するのか? – (2) モデルはQAデータセットで読解をする必要があるのか? – (3) モデルは質問への編集にうまく対処できるのか? 8
実験設定 • データセット – SQuAD 2.0 • Wikipedia – TriviaQA • 雑学 – Natural Questions • Googleの検索履歴 – QuAC • モデル – BERT-base – ハイパラはデフォルト • • • • • バッチサイズ:24 学習率:3e-5 エポック数:2 最大系列長:384 Doc Stride:128 • 対話形式のQA – NewsQA • CNNの記事 (SQuAD 2.0に合わせるために全 てのデータセットにunanswerable な質問を混ぜる) 9
Research Questions (RQs) それぞれのRQに答えるための実験を行った • RQ1:個別のデータセットでの性能は他のデータセットにも汎化する のか? – 実験1 • RQ2:モデルはQAデータセットで読解をする必要があるのか? – 実験2-1, 2-2, 2-3 • RQ3:モデルは質問への編集にうまく対処できるのか? – 実験3-1, 3-2 10
RQ1:他のデータセットに汎化するのか? • あるデータセットで精度が良くても,新しいデータセットでは精度が 悪いと実用上問題がある • 実際既存研究でQAモデルの汎化性能には課題があることがわかって いる (Talmor and Berant, 2019; Yatskar, 2019; Fisch et al., 2019; Dua et al., 2019) 11
実験1:他のデータセットへの汎化性能 • あるデータセットでfine-tuneした後に,他のデータセットで評価 • データセットを超えて 汎化しているとは言え ない • テストセットによって 難易度に差がある 12
補足:ちなみに難易度はどれくらい異なるのか? • 5つの異なるモデルが正答した問いはどれくらい重複しているのかを 調べた • より多くのモデルに共通して正答 されていたら簡単な質問だと考え る • QuACとNewsQAは比較的難しいの ではないか • SQuAD, TriviaQA, NQは半分以上の 質問が簡単 13
補足:何が質問を簡単にしているのか? • 質問と文章の語彙の重複度合いが高いと: - answerableな質問は簡単 - unanswerableな質問は難しい 14
RQ2: QAデータセットは読解力を必要とするのか? • SoTAモデルはQAで高いスコアを出しているが,高いスコアは高い読解力 を意味しているのか?それとも読解をせずに答えに至るまでのショート カットを学習しているだけ? • 以下の(データセットに対する)ablationを行った – Random labels / Shuffled contexts / Incomplete questions • 15
実験2-1:Random Labels • もしもNoiseを多く含む訓練データを使ってもテストセットで性能が 良かったら,モデルが何を学んでいるのか疑問である • 訓練:Random labels, 評価:オリジナル • Labelを置き換える訓練データ の割合が – 10%: TriviaQA, QuAC以外のデー タでは下げ幅は小さい = reasonableなノイズには頑健 – 90%: SQuADとNQの一部の質問 は読解をしなくても解けると言 えそう 16
実験2-2:Shuffled Context • 文単位で文章をシャッフルしてモデルに与える • 訓練:オリジナル,評価:Shuffled context • SQuADとQuACはほとんど性 能が悪化しなかった =文章全体の構造を理解しなくて も答えを正しく予測できる質問が ある • TriviaQAとNewsQAで性能が 大きく悪化したのは入力文章 が長いのが原因ではないか. 17
実験2-3:Incomplete Input • 質問文の最初の半分/一単語を使う,または全消去する • 訓練:オリジナル,評価:Incomplete Input • 質問文が不完全だとやはり精 度は落ちるが解けるものは解 ける • 質問を与えなくてもそれなり に正答できている – 文章の中で答えになりそうなス パンを学習するだけで解ける? 18
補足:質問文を全て見なくても解けるのはなぜか? • NER(固有表現抽出)で解いてみる – First Word NER: 質問文の最初の単語と対応するNEのうち最初に文章に出てく るものを答えとする(who ->人, when->日時) – Person NER: 文章に出てくる最初の人の名前を答えとする • 質問のタイプと対応するタイ プの固有表現を持ってくるだ けで答えられる質問がある • 質問を全く見なくてもNEを抽 出するだけで答えられる場合 がある 19
RQ3:QAモデルは多様な質問に対応できるか? • 質問に特徴が追加されてもモデルは頑健なのかを調べるために,以下 のablationを行った – Filler word / Negation 20
実験3-1:Filler Words • もしQAモデルが質問を理解できているなら,意味的に等価な質問も 同様に扱えるはず • Really, definitely, actuallyのいずれかを質問の動詞の前に加えた • 訓練:オリジナル,評価:Filler words • 性能はそれほど悪化しないが, こんなに簡単な変更でも悪影 響がある • より複雑なParaphraseを使っ たらさらに性能は悪化するの ではないか 21
実験3-2:Negation • 全ての質問を否定系にして(notを挿入)も同じ答えを返すのか? – 読解ができているなら理想は””(unanswerable)と答えてスコアは0に近づいて欲しい • 訓練:オリジナル,評価:Negation • Baselineと性能があまり変わらない のはNegationを理解できていない ことを意味する • SQuAD以外:質問を否定系にして も正答率があまり下がらないという ことは,Negationを無視している ことになる • SQuADで訓練するとNegationを理 解できる…? 22
補足:SQuADで訓練するとNegationを理解できるのか? • SQuADのモデルはNegationを理解しているのか,それともバイアス の影響なのか? • SQuADにある否定語を含む質問 の9割方はunanswerableな質問 だった – つまり「否定語があるならば unanswerableである」と言うデー タセットに特有のヒューリスティッ クを学習しているだけだった • 結局どのデータセットを使って もNegationを理解できるように はなっていないのでは 23
まとめ • 実験の結果,QAモデルは – (1)他のデータセットにうまく汎化できない – (2)読解を妨げるような編集に対して頑健=読解しなくても解ける – (3)質問文への簡単な編集にはうまく対処できていない=質問を完全に理解できていな い • What do Models Learn from Question Answering Datasets? – 質問と文章の語彙の重複や固有名詞のタイプについてのヒューリスティックを学習し ているだけ(と言えそう) • 今後は – – – – – 複数のデータセット間での汎化性能を評価するべき 簡単なヒューリスティックで解ける質問はテストセットからなくすべき モデルがショートカットを学習していないことを確かめるべき 様々な質問の種類を用意してモデルがそれらに対応できるか評価するべき (SQuADなどのフォーマットに合わせてデータセット作って欲しい) 24