Teaching Machines to
Read and Comprehend
Karl Moritz Hermann, Tomas Kocisky,
Edward Grefenstette, Lasse Espeholt, Will Kay,
Mustafa Suleyman and Phil Blunsom
NIPS 2015
読む人: M1 山岸駿秀
Introduction
● Natural Language Reading Comprehension の論文
● 読解のタスクも教師ありで学習したいが、データがない
○ 文書数が数百とかだった
○ 教師なしでテンプレート等を使う研究が多かった
● 大規模データを作った
○ Document, query, answerの三つ組のセット
● ニューラルな手法でテストした
Supervised training data for reading comprehension
● p(a|c, q) を計算したい
○ a: answer, c: context document, q: query
● (document, query, answer) の3つ組のデータが欲しい
● CNNから93k、Daily Mailから220kの記事を収集
○ 各記事に箇条書きで要約がついている → query
○ この要約文は記事中にはない
○ 要約文は複数ある → 記事数 < query数
Entity replacement and permutation
● 共起を見たり、世界知識で解けたりするデータは困る
○ The hi-tech bra that helps you beat breast X.
○ Could Saccharin help beat X?
○ Can fish oils help fight prostate X?
○ Xに当てはまるのは?→ Cancer.
● 共参照解析を使って、同じ意味のフレーズを特殊トークンで置
き換える(Anonymize)
○ トークンは毎回変える
○ クエリだけ読めばわかる問題を減らす
できたデータ
Baseline
● Maximum frequency
○ 文書中で一番頻度の高いentityを返す
○ entityは1文書中に25程度ある
○ これが正解である確率は3割程度
● Exclusive frequency
○ {文書中のentity} - {query中のentity}の中のentityのうち、文書中で
一番頻度の高いentity
○ クエリに正解が含まれている可能性は低いという仮定
Frame-Semantic Model
● Frame-semantic parserから述語項の3つ組の情報を得る
○ entityをanonymizeする前のデータに対してparsing
● 以下のルールを試してxを得る(2つ以上取れたらランダムで選ぶ)
Word Distance Benchmark
● 共参照解析を使って、query中のXに該当しそうなentityを得
る
● Xと、候補のentityの文脈との距離を測る
○ 文脈 = entityとentityの近くの単語の距離を測り、近くの単語全ての
距離を足したもの
○ 近くの単語 = 8単語(おそらく前4・後4で8単語)
どうやって距離を測るのかは載っていなかった気がする……
Neural Network Models
● 以下の確率を求めたい
○ V: Vocabulary(文書・クエリ中の語彙 + entity masker + ‘X’)
○ gが実際のネットワークの出力
Model 1: The Deep LSTM Reader
● x: 入力される単語列
○ 1文書を1文とした単語列 + ‘|||’ + クエリ
● t: 時刻、k: layer
● g(d, q) = y(t = |d| + |q| + 1)
Model 2: The Attentive Reader
● 文書用のencoder d とクエリ用のencoder qを用意
○ 1-layer, bi-directional LSTM
● クエリを先に読み込んでおく →
● 以下の式でattentionを示すrを作る
● 最終的なgは以下のようになる
Model 3: The Impatient Reader
● クエリを先に読み込み、各時刻に保存
● |クエリ長|回だけattentionを計算する
○ 1ステップ前のattentionの結果を利用する
○ LSTM的なものは使わない(純粋なRNN)
● 最終的なgは以下のようになる
Empirical Evaluation
● はじめに作成したコーパスで実験
● RmsProp (momentum = 0.9) で学習
● その他のハイパーパラメータ
Result 1: Frame-semantic model
● あまり精度が出なかった
○ Pipeline処理 → Parserの
精度の低さが影響する
○ 言語によってParserの状況
が変わる
● 答えるのに必要な文数にス
ケールしない
Result 2: Word Distance Benchmark
● 思っていたよりよくできていた
● 3つ組の関係では取れないものが取れている?
○ Q: “Tom Hanks is friends with X’s manager, Scooter Brown.”
○ D: “ ... turns out he is good friends with Scooter Brown,
manager for Carly Rae Jepsen.”
○ 3つ組は動詞を含む → (he, is, friend) しか得られなかった?
○ Word Distance Benchmarkは、friendshipやmanagementの
関係も得られている?
● 文書とクエリの単語の表層の一致も多かったため、向いてい
た可能性
Result 3: Neural Models
● 多層LSTMは長距離の関係を捉
えられる
○ 2000語/文書の入力でさえ簡単に
解けた
● Attentionは効く
○ Uniform reader(m(t)の値が全て
同じ)は悪い
○ 同じ割合の和では意味がない
● AttentiveとImpatientに差はあ
まりない
Impatient Readerの過程 1/4(正解はent5)
Impatient Readerの過程 2/4(正解はent5)
Impatient Readerの過程 3/4(正解はent5)
Impatient Readerの過程 4/4(正解はent5)
Conclusion
● 自然言語理解のための大きなデータを作った
○ [Chen+ ACL2016]で、簡単なタスクであることが判明
○ 2015-2016の2年間ではよく使われていたが、2017年はあまり…
○ https://www.slideshare.net/takahirokubo7792/machine-comprehension
● 基礎的なニューラル手法を試した
○ アテンションは長い系列を見るためには必須
● 単語の知識や複数文書を使いたい
○ データサイズに対して計算の複雑さが線形比例してはいけない
● 大規模データがあればNNのモデルでよい結果を出せる

[ML論文読み会資料] Teaching Machines to Read and Comprehend

  • 1.
    Teaching Machines to Readand Comprehend Karl Moritz Hermann, Tomas Kocisky, Edward Grefenstette, Lasse Espeholt, Will Kay, Mustafa Suleyman and Phil Blunsom NIPS 2015 読む人: M1 山岸駿秀
  • 2.
    Introduction ● Natural LanguageReading Comprehension の論文 ● 読解のタスクも教師ありで学習したいが、データがない ○ 文書数が数百とかだった ○ 教師なしでテンプレート等を使う研究が多かった ● 大規模データを作った ○ Document, query, answerの三つ組のセット ● ニューラルな手法でテストした
  • 3.
    Supervised training datafor reading comprehension ● p(a|c, q) を計算したい ○ a: answer, c: context document, q: query ● (document, query, answer) の3つ組のデータが欲しい ● CNNから93k、Daily Mailから220kの記事を収集 ○ 各記事に箇条書きで要約がついている → query ○ この要約文は記事中にはない ○ 要約文は複数ある → 記事数 < query数
  • 4.
    Entity replacement andpermutation ● 共起を見たり、世界知識で解けたりするデータは困る ○ The hi-tech bra that helps you beat breast X. ○ Could Saccharin help beat X? ○ Can fish oils help fight prostate X? ○ Xに当てはまるのは?→ Cancer. ● 共参照解析を使って、同じ意味のフレーズを特殊トークンで置 き換える(Anonymize) ○ トークンは毎回変える ○ クエリだけ読めばわかる問題を減らす
  • 6.
  • 7.
    Baseline ● Maximum frequency ○文書中で一番頻度の高いentityを返す ○ entityは1文書中に25程度ある ○ これが正解である確率は3割程度 ● Exclusive frequency ○ {文書中のentity} - {query中のentity}の中のentityのうち、文書中で 一番頻度の高いentity ○ クエリに正解が含まれている可能性は低いという仮定
  • 8.
    Frame-Semantic Model ● Frame-semanticparserから述語項の3つ組の情報を得る ○ entityをanonymizeする前のデータに対してparsing ● 以下のルールを試してxを得る(2つ以上取れたらランダムで選ぶ)
  • 9.
    Word Distance Benchmark ●共参照解析を使って、query中のXに該当しそうなentityを得 る ● Xと、候補のentityの文脈との距離を測る ○ 文脈 = entityとentityの近くの単語の距離を測り、近くの単語全ての 距離を足したもの ○ 近くの単語 = 8単語(おそらく前4・後4で8単語) どうやって距離を測るのかは載っていなかった気がする……
  • 10.
    Neural Network Models ●以下の確率を求めたい ○ V: Vocabulary(文書・クエリ中の語彙 + entity masker + ‘X’) ○ gが実際のネットワークの出力
  • 12.
    Model 1: TheDeep LSTM Reader ● x: 入力される単語列 ○ 1文書を1文とした単語列 + ‘|||’ + クエリ ● t: 時刻、k: layer ● g(d, q) = y(t = |d| + |q| + 1)
  • 13.
    Model 2: TheAttentive Reader ● 文書用のencoder d とクエリ用のencoder qを用意 ○ 1-layer, bi-directional LSTM ● クエリを先に読み込んでおく → ● 以下の式でattentionを示すrを作る ● 最終的なgは以下のようになる
  • 14.
    Model 3: TheImpatient Reader ● クエリを先に読み込み、各時刻に保存 ● |クエリ長|回だけattentionを計算する ○ 1ステップ前のattentionの結果を利用する ○ LSTM的なものは使わない(純粋なRNN) ● 最終的なgは以下のようになる
  • 15.
    Empirical Evaluation ● はじめに作成したコーパスで実験 ●RmsProp (momentum = 0.9) で学習 ● その他のハイパーパラメータ
  • 16.
    Result 1: Frame-semanticmodel ● あまり精度が出なかった ○ Pipeline処理 → Parserの 精度の低さが影響する ○ 言語によってParserの状況 が変わる ● 答えるのに必要な文数にス ケールしない
  • 17.
    Result 2: WordDistance Benchmark ● 思っていたよりよくできていた ● 3つ組の関係では取れないものが取れている? ○ Q: “Tom Hanks is friends with X’s manager, Scooter Brown.” ○ D: “ ... turns out he is good friends with Scooter Brown, manager for Carly Rae Jepsen.” ○ 3つ組は動詞を含む → (he, is, friend) しか得られなかった? ○ Word Distance Benchmarkは、friendshipやmanagementの 関係も得られている? ● 文書とクエリの単語の表層の一致も多かったため、向いてい た可能性
  • 18.
    Result 3: NeuralModels ● 多層LSTMは長距離の関係を捉 えられる ○ 2000語/文書の入力でさえ簡単に 解けた ● Attentionは効く ○ Uniform reader(m(t)の値が全て 同じ)は悪い ○ 同じ割合の和では意味がない ● AttentiveとImpatientに差はあ まりない
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
    Conclusion ● 自然言語理解のための大きなデータを作った ○ [Chen+ACL2016]で、簡単なタスクであることが判明 ○ 2015-2016の2年間ではよく使われていたが、2017年はあまり… ○ https://www.slideshare.net/takahirokubo7792/machine-comprehension ● 基礎的なニューラル手法を試した ○ アテンションは長い系列を見るためには必須 ● 単語の知識や複数文書を使いたい ○ データサイズに対して計算の複雑さが線形比例してはいけない ● 大規模データがあればNNのモデルでよい結果を出せる