NLP

NLPのタスクを紹介するだけの簡単なページ(1) ~SQuAD編~

SQuAD ってなんぞ?

 SQuAD とは The Stanford Question Answering Dataset の略で、簡潔に言えば、質問応答技術 を研究するためのタスクです。

 最近話題の BERT もこのタスクに取り組んでおり、2018年11月でSOTA(State of The Art) の地位 (要するに一番精度が良いって意味) を手にしています。

このタスクの特徴は?

 このタスクは 質問応答 の中でも、読解力 を特に重要視したタスクになります。これはただテキストを読んでアレコレするだけではなく、普遍的な「これはこうだからこう」という常識が必要になり、機械の苦手な分野の一つになります。
 

具体的なデータは?

 データは主に、 テキスト質問文 正解 の3つになります。

 まず テキスト ですが、これはWikipediaから来る記事になります。
 質問文 は この テキスト に関する質問が該当します。質問に対する解答は テキスト の中にあり、これを抜き出すのがメインな目標になります。
 正解 は幾つかのパターンが考えられますが、趣旨を外していなければ良いということになっています。
 更に SQuAD ver2.0 から追加されたタスクとして、回答できない質問には回答できないことを示さなければならなくなりました

 例えば皆さんに身近な例を出すと、小学校の頃に出たであろう、以下のような国語の問題を挙げることが出来ます。

テキスト
山田くんは身長165センチで体重52キロの男の子です。
最近はマイクラというゲームをすることにハマっています。
好きな人は隣の席の田中さんです。
カレーが好きな食べ物です。
最近VTuberにハマっています。
質問文
山田くんの好きなゲームはなんですか?
正解の要素
マイクラ

 念の為、実際のSQuADに含まれるであろうテキストとその質問を紹介しておきましょう。

テキスト
In meteorology, 
precipitation is any product of 
the condensation of atmospheric water 
vapor that falls under gravity.
(気象学では、降水は重力によって大気中の水蒸気が凝縮したものが降ることです。)
質問文
What causes precipitation to fall?
(降水の原因は何?)
正解の要素
gravity
(重力)

どう活用できる?

 例えばあるプログラムのマニュアルを保存しておいて、お客様窓口に何らかの問い合わせが来たときにその解答を導き出すことを考えることが出来ます。

参考文献

SQuAD https://rajpurkar.github.io/SQuAD-explorer/
The Stanford Question Answering Dataset https://rajpurkar.github.io/mlx/qa-and-squad/
BERT https://arxiv.org/abs/1810.04805
SQuAD 2.0 https://arxiv.org/abs/1806.03822

他ページヘのリンク

NLPのタスクを紹介するだけの簡単なページ(0)
NLPのタスクを紹介するだけの簡単なページ(1) ~SQuAD編~
NLPのタスクを紹介するだけの簡単なページ(2) ~CoLA編~
NLPのタスクを紹介するだけの簡単なページ(3) ~QQP編~
NLPのタスクを紹介するだけの簡単なページ(4) ~STS編~
NLPのタスクを紹介するだけの簡単なページ(5) ~MRPC編~