SQuAD (G検定)

SQuAD

1. 定義と概要

SQuAD(Stanford Question Answering Dataset)とは、スタンフォード大学の研究チームが2016年に公開した質問応答データセット(AIの学習・評価に使うデータのまとまり)です。機械読解(文章を読んでその内容を理解する能力)の評価に使われます。

内容は、Wikipedia(ウィキペディア)の記事から抜粋した文章(パッセージ)と、それに対する質問、そして文章中の一部分として存在する答え、いわゆるスパン(文章中の答えに当たる一続きの範囲)の組み合わせで構成されています。初版のSQuAD 1.1は500以上の記事をもとにした10万件超の質問・回答ペアからなり、答えが必ず文章中に存在するという前提で作られています。

従来の読解データセットは規模が小さく、機械学習モデルの評価には不十分でした。SQuADはクラウドソーシング(不特定多数の人にインターネット経由で作業を依頼する仕組み)により大規模な質問・回答ペアを収集して公開されたものです。

文章中の該当箇所をそのまま答えとして抜き出す抽出型(extractive)は、文章の内容を理解した上で新しい文を組み立てる生成型とは異なる方式を指します。SQuADはこの抽出型の質問応答モデルを評価する標準的な基盤として広く使われるようになりました。

BERTなど文脈理解に優れたモデルが登場すると、SQuAD 1.1のスコアは人間の正答率(EMベース)に迫り、一部の指標では上回る例も報告されています。2018年には、答えが文章中に存在しない質問を5万件超加えたSQuAD 2.0が公開され、モデルが「答えられない」と判断する能力も評価対象に加わりました。

2. 試験対策ポイント

G検定における重要な論点は、SQuADが抽出型の質問応答を評価するデータセットである点です。文章の内容を理解した上で新しい文章を組み立てる生成型(generative。モデルが文章の内容を理解した上で新しい文として答えを組み立てる方式)の質問応答とは、答えの作り方の仕組みが異なります。SQuADが評価するのはあくまで、文章中に既にある答えを見つけ出す能力です。

評価指標には、EM(Exact Match。予測した答えが正解と一字一句完全に一致したかを測る指標)とF1スコア(予測と正解の語の重なり具合を測る指標で、部分的に正しい答えにも点数が入る)の2つが用いられます。

完全一致だけを見るEMに対し、F1スコアは部分点を評価する点に違いがあり、この2指標の使い分けは試験対策として押さえておきたいテーマです。

版による前提の違いも、あわせて整理しておきたいところです。

版 公開年 前提と特徴
SQuAD 1.1 2016年 500以上の記事をもとにした10万件超の質問・回答ペア。答えは必ず文章中に存在する
SQuAD 2.0 2018年 答えが文章中に存在しない質問を5万件超追加。答えられないと判断する能力も評価対象

この違いから、SQuAD 2.0ではモデルが答えられない質問に対して回答を保留する能力も試される設計になっています。

SQuAD自身は自然言語処理(人間の言葉をコンピュータに理解・生成させる技術分野)モデルの性能を測る代表的なベンチマークとして扱われ、BERTなど言語モデルの評価実績とセットで語られます。関連するベンチマークとしてGLUEもよく挙がりますが、両者の関係は次節で整理します。

3. 関連概念との比較・相違点

SQuADベンチマークとの違いとして取り違えやすい論点になるのがGLUEです。GLUEは文法判定・感情分析・含意関係の判定など9種類のタスクを束ねた、言語理解全般を測る総合ベンチマークです。これに対しSQuADは、質問応答という一つのタスクに特化したベンチマークであり、両者は測る能力の範囲が異なります。

GLUEの構成タスクの一つQNLI(SQuAD由来の質問をもとに、文がその答えを含むかどうかを判定する問題形式)は、文章中から答えの範囲をそのまま抜き出すSQuAD本体の形式とは評価方法が異なります。SQuADはGLUEに含まれる9タスクの一つではなく、独立した別のベンチマークとして存在します。

三つの名称の位置づけを並べると、次のようになります。

名称 位置づけ
SQuAD 質問応答という一つのタスクに特化した独立したベンチマーク
GLUE 9種類のタスクを束ねた、言語理解全般を測る総合ベンチマーク
QNLI GLUEの構成タスクの一つ。SQuAD由来の質問をもとに判定形式へ作り替えたもの

混同しやすい組み合わせであり、SQuADとGLUEを同じ枠組みと捉えると誤りにつながります。

抽出型と生成型の違いも、SQuADの仕組みを理解するうえで欠かせない軸です。SQuADベンチマークが評価する抽出型は、答えが文章中にそのまま存在する前提で、その範囲であるスパンを抜き出す方式です。

これに対し生成型は、文章の内容を理解した上でモデルが新しい文として回答を組み立てる方式であり、文章中に答えが明記されていない質問にも対応できる点で異なります。SQuAD形式が抽出型を代表するベンチマークとして扱われるのは、答えの根拠が文章中に明示されており、正解・不正解の判定がしやすいという性質によるものです。

4. ビジネス・実務での活用シナリオ

自然言語処理モデル開発の現場では、新しく開発・調整した言語モデルの読解力をSQuAD形式のEM・F1スコアで定量的に評価し、他モデルとの性能比較や改善の指標として活用します。

多言語・日本語のAI開発においては、SQuAD方式の構築手法を踏襲した日本語版データセットであるJSQuAD(日本語の言語理解ベンチマークJGLUEを構成するデータセットの一つ)を用います。これにより、日本語の大規模言語モデル(膨大な文章データから学習した、文章の理解や生成を行う大規模なAIモデル)の読解力を評価します。

社内文書検索やFAQシステムの開発では、自社の文書検索AIを実運用へ導入する前に、SQuAD形式で作成した独自データセットで抽出精度を事前検証し、想定する業務に耐える精度かどうかを判断します。

5. 要点まとめ

  • SQuADはスタンフォード大学が2016年に公開した、ウィキペディアの文章と質問・答えの組からなる読解力評価用のデータセットで、答えが文章中のスパンとして存在する抽出型の質問応答を評価します。
  • 評価指標はEM(完全一致率)とF1スコア(部分一致度)の2つで、2018年公開のSQuAD 2.0では答えが存在しない質問が加わり、回答を保留する能力も評価対象になりました。
  • GLUEは複数タスクを束ねた言語理解全般のベンチマークであるのに対し、SQuADは質問応答に特化した別のベンチマークであり、GLUEの構成タスクQNLIはSQuADを土台にしつつ形式を変えたものです。

6. 確認問題

問1SQuADは、文章中に答えがそのまま存在することを前提に、その一部分(スパン)を抜き出す抽出型の質問応答を評価するデータセットである。

解答・解説をみる

○ 正しい

SQuADはウィキペディアの文章と質問・答えの組で構成され、答えは常に文章中のスパンとして存在する前提で作られています。新しい文を組み立てる生成型とは、答えの作り方の仕組みが異なります。

問2SQuAD 2.0では、SQuAD 1.1の質問に加えて答えが存在しない質問が新たに加わり、モデルは回答を保留する能力も評価される。

解答・解説をみる

○ 正しい

SQuAD 2.0は2018年に公開され、5万件超の答えが存在しない質問が追加されました。答えられない質問に無理に回答すると精度が下がる設計になっています。

問3SQuADはGLUEに含まれる9つのタスクの一つとして、文章中から答えを抜き出す形式のままGLUEに採用されている。

解答・解説をみる

× 誤り

GLUEの構成タスクの一つQNLIはSQuADの質問を土台にしていますが、文が答えを含むかどうかを判定する二値分類タスクに作り替えられており、SQuAD本体の抽出型の形式とは異なります。SQuAD自体はGLUEに含まれず、独立したベンチマークとして別に存在します。