Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2018: CoQA: A Conversational Question Answering Challenge #124

Open
jojonki opened this issue Aug 22, 2018 · 1 comment
Open

2018: CoQA: A Conversational Question Answering Challenge #124

jojonki opened this issue Aug 22, 2018 · 1 comment

Comments

@jojonki
Copy link
Owner

jojonki commented Aug 22, 2018

CoQA: A Conversational Question Answering Challenge
Siva Reddy, Danqi Chen, Christopher D. Manning. 2018 (会議不明)
https://arxiv.org/abs/1808.07042
データセット:https://stanfordnlp.github.io/coqa/

概要

7ドメイン(children’s stories, literature, middle and high school English exams, news, Wikipedia, science and Reddit. 最後の2つはOOD評価に利用される)に渡る8Kの会話から得た,127KのQAデータセット.平均ターン数は15.質問は会話スタイルでフリーフォーム.今回一番良かったモデルで65.1%,人では88.8%のF1を達成.

データセットの特徴とデータ例を下記に示す.

  1. 会話としてのQAなので,対話履歴が必要となる場合がある(例えばQ2のsheは,その前の質問の答えであるJessicaを指している).またQ5で"Who?"とだけ聞かれてるのも前の発話からの情報を引き継ぐ必要があり,難しいものになっている.SQuADなどでよく知られているQAのモデルは,質問とパッセージの語彙的類似度に強く依存している.これは質問が履歴を必要としていない完全な質問の形を成しているからできている.質問の半分ぐらいが,過去履歴を必要としている.
  2. SQuADのようなextractiveな答え(与えられたパッセージの中にそのまま答えが存在)があるとは限らない,Q4の"How many?"の答えはパッセージにはない.また答えの鍵となるrational情報も1文でなく,この例では複数文にまたがっている.
  3. このような会話的なQAのデータセットは初めて.

screen shot 2018-08-27 at 2 56 31 pm

タスク定義

何らかのドメインのパッセージが与えられる.そして,そのパッセージに対して質問が与えられ,それに対して答える.これが正解すると,次の質問が与えられる.この質問は過去コンテキストに依存している可能性があるので,これまでの質問,答えを利用する必要が求められる.つまりQnに答える(An)ためには,Q1〜Qn-1とA1〜An-1が必要.また回答不能な質問も含まれているので,それに対しては "Unknown"を返すのが正解としている(Rationalは空).

データコレクション

7ドメインのデータは様々なデータセットから集めた(see 3.2).
各会話では,二人のアノテーターを採用(AMT).二人でやっているので,話し合いながら決められる上にミスも少ない,またスパムのような行為も起きにくい.AMTは直接使わず,FacebookのParlAIを利用.1パッセージあたり3.6USD,Dev/Testのデータセットは3つの答えを含んでおり,これは4.5USDかかった.

質問者と回答者のGUIはそれぞれ異なる(論文の補足参考)

  • 質問者
    語彙のバリエーションを多様にするために,パッセージの単語を利用するとアラートがでるようにし,なるべくパラフレーズな言い方を集めるようにした
  • 回答者
    逆に考えうる回答に制約を加えるため,ハイライトしたテキストを自動で答えのフォームに貼り付ける機能が搭載されている.回答者はこれを必要に応じて自然な形に編集する(実際78%は1回は編集されている).

データセットは複数のエンティティを含むものを選んだ.またパッセージは200単語程度にトリム.
各ドメインのデータ統計は下記.ScienceとRedditはOOD扱いのためtestデータしかない.
screen shot 2018-08-27 at 4 25 01 pm

またdev/testセットでは複数の答えが含まれている.しかし答えによっては,次以降の質問との整合性が合わない可能性がある(例えば人名で答えるのに対して,政党で答えた場合,which party does he..?といった質問は出てくるのは不自然).そのため,質問を回答者に見せて回答してもらった時,オリジナルの答えと整合性があるようにしてもらった,また,次の質問に答えるときも,オリジナルの答えを予想してもらう形で聞いた.これにより整合性を確保した,答え候補を生成してもらった.

データ分析

文書理解でもっとも人気のSQuAD 2.0 (最近更新された)と質問のプレフィックスを比較.CoQAにはSQuADにはない,共参照関係(coreference,he,him,she,it,they等)を含んでいる.またSQuADはWhatの質問が半分ぐらい占めている(Howとかより簡単).またSQuADが平均10.1単語であるのに対して,CoQAは5.5単語と短い,これはコンテキストに依存しているため省略されているわけである(より難しい).
またSQuADが100% extractiveに答えられるのに対して,CoQAは66.8%にとどまっていて難しい.
screen shot 2018-08-27 at 4 53 34 pm
screen shot 2018-08-27 at 4 58 36 pm

モデル

ベースラインとして,対話モデルとReading Comprehensionモデルの2つとそのコンビモデルを試した
対話モデルでは,seq2seq型のモデル(コピー機構付き)を採用し(PGNetと呼ぶ),Reading Comprehensionモデルでは,FacebookのDrQAを採用.DrQAは答えるのにパッセージからスパンを選択する形で答えを返すので,答えの単語とのオーバーラップが最も高い部分を答えとして学習させた.
2つのコンビモデルも試した.まずDrQAがパッセージの該当箇所を探し(Rationalに相当),そのエビデンスからPGNetが答えを生成した.PGNetはコピー機構と語彙のsoftmaxができるので自由フォームな答えを生成できる.

評価

結果は下記.コンビモデルが人を除くと一番良い結果になった.PGNetはパッセージをすべて覚える必要があるためそのオーバーヘッドで性能が落ちた可能性,DrQAはそのオーバーヘッドはないが(アテンション機構がうまく働いている?),フリーフォームの回答ができないので依然として低い.コンビモデルは両者のメリットを採用したモデルなので性能がよい.
またOODではすべてのモデルの性能が悪化.またRedditなどパッセージが長くより複雑な推論が必要になっている.
screen shot 2018-08-27 at 5 32 18 pm

次にエラー分析.Unanswerableで人はもっとも低い結果,これは例えばおばあちゃん,とかから年齢を推測したりと,パッセージ以外の知識活用が原因と考えられる.また,Abstractiveな回答がextractiveよりも低い理由は評価手法が単語マッチングベースによるものであると考えられる.例えば"did Jenny like her new room?"に対して,”she loved it"も"yes"も同じ答えとして受け取ってよいが,今回の手法では不一致とみなされる.abstractiveな応答評価はまだまだチャレンジング( (Liu et al., 2016; Chaganty et al., 2018))
screen shot 2018-08-27 at 5 41 31 pm

最後に対話履歴長の重要性を調べた.実装したモデルでは,PGNetを除いて,過去1ターンまでが最もよく,それ以上履歴があると性能が下がった.
また人の場合も,与える履歴の長さでどう変わるのか実験,F値ベースで言うと,19.9(履歴なし),79.8(1ターン前),85.4(2ターン前),86.4(フル履歴)となった.これを見るに,多くの会話は2ターン程度で十分であると推測できる.
screen shot 2018-08-27 at 5 50 15 pm

結論

対話モデル,推論モデル,知識活用,等,様々な側面を伴ったデータセットを紹介した.人と機械のコミュニケーションを行う上で必要なスキルが多く求められるデータセットであった.

メモ

  • 質問者と回答者の質問の作り方及び答え方で工夫している点が面白く参考になる (see 3.1)
  • Abstractiveな回答のマッチングはまだチャレンジング,応答生成の評価のときと似ている
  • 実装モデルでは1ターン以上は性能が下がったのは面白い.また人では2ターン程度で十分だったのも面白い
  • トイモデルのデータセットが多い中,様々なスキルがモデルに求められており,非常に面白いデータセットであると思った
@jojonki jojonki changed the title 🚧 2018: CoQA: A Conversational Question Answering Challenge 2018: CoQA: A Conversational Question Answering Challenge Aug 27, 2018
@jojonki
Copy link
Owner Author

jojonki commented May 11, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant