• 検索結果がありません。

NeurIPS EfficientQAコンペティションの上位システムから学ぶオープンドメイン質問応答技術の最新動向 山田育矢 (Ikuya Yamada) Studio Ousia / RIKEN AIP

N/A
N/A
Protected

Academic year: 2021

シェア "NeurIPS EfficientQAコンペティションの上位システムから学ぶオープンドメイン質問応答技術の最新動向 山田育矢 (Ikuya Yamada) Studio Ousia / RIKEN AIP"

Copied!
56
0
0

読み込み中.... (全文を見る)

全文

(1)

山田 育矢 (Ikuya Yamada)

Studio Ousia / RIKEN AIP

オープンドメイン質問応答技術の最新動向

NeurIPS EfficientQAコンペティションの上位システムから学ぶ

(2)

自己紹介

山田 育矢 (@ikuyamada)

Studio Ousia 共同創業者チーフサイエンティスト 理化学研究所AIP 客員研究員(知識獲得チーム、言語情報アクセス技術チーム) ● 大学入学時に、学生ベンチャー企業を起業し売却(2000年〜2006年) ○ インターネットの基盤技術(Peer to Peer通信におけるNAT越え問題)の研究開発を推進 ○ 売却先企業は株式上場 ● Studio Ousiaを共同創業し、自然言語処理に取り組む(2007年〜) ○ 質問応答を中心とした自然言語処理の研究開発を推進 ● プログラミングが好き ○ 最近よく使うライブラリ:PyTorch、PyTorch-lightning、transformers、Wikipedia2Vec ● コンペティション・シェアードタスクにいろいろ出場

(3)

本講演の概要

● オープンドメイン質問応答の最新動向を解説

● NeurIPS EfficientQAコンペティションの上位エントリの

アプローチを概観

(4)

オープンドメイン質問応答とは?

任意のファクトイド型の質問に対して解答を与えるシステム

○ 理由や定義を問うようなノンファクトイド型の質問は一般に対象としない

知識ソース(Wikipedia等)を参照して解答を生成

BERT等の事前訓練モデルの台頭で実用的な性能で解けるようになった

質問応答システム

「吾輩は猫である」の 作者は誰?

夏目漱石

知識ソース

(5)

NeurIPS EfficientQAコンペティション

Google等に所属する研究者が開催したオープンドメイン質問応答の

コンペティション

Natural Questionsデータセットと同様の方法で収集された、新しい

質問応答データを使ってシステムを評価

システムの精度と計算効率の双方にフォーカス

モデルやデータを全て含んだDockerイメージのサイズを制約

4つのトラック

○ 無制限 ○ 6GB以内 ○ 500MB以内

(6)

NeurIPS EfficientQAコンペティション

Google等に所属する研究者が開催したオープンドメイン質問応答の

コンペティション

Natural Questionsデータセットと同様の方法で収集された、新しい

質問応答データを使ってシステムを評価

システムの精度と計算効率の双方にフォーカス

モデルやデータを全て含んだDockerイメージのサイズを制約

4つのトラック

○ 無制限 ○ 6GB以内 ○ 500MB以内 本講演では無制限トラックと6GB制約トラックに ついて解説します

(7)

コンペティションの背景

近年の質問応答システムでstate of the artスコアを出すには

大規模な計算資源が必要

○ 例:Natural QuestionsデータセットでSOTAのFacebook AIのFusion-in-Decoderは 64枚のTesla V100 GPU 32GBで訓練されている

性能を上げるためには、大きいニューラルネットワークを大きい

メモリを積んだ複数枚のGPUで分散訓練するのが有利

研究予算の大きい大手企業が有利になりがち

(8)

Natural Questionsデータセットの例

(9)

Natural Questionsデータセットの例

Q: who is under the mask of darth vader

A: Anakin Skywalker

(10)

Natural Questionsデータセットの例

Q: who is under the mask of darth vader

A: Anakin Skywalker

Q: who has the most gold medals in the winter olympics of all time

A: Norway

(11)

Natural Questionsデータセットの例

Q: who is under the mask of darth vader

A: Anakin Skywalker

Q: who has the most gold medals in the winter olympics of all time

A: Norway

Q: how many episodes are there in dragon ball z

A: 291

(12)

Natural Questionsデータセットの例

Q: who is under the mask of darth vader

A: Anakin Skywalker

Q: who has the most gold medals in the winter olympics of all time

A: Norway

Q: how many episodes are there in dragon ball z

A: 291

Q: who has the most followers in the world on instagram

A: Instagram

(13)

Natural Questionsデータセットの例

Q: who is under the mask of darth vader

A: Anakin Skywalker

Q: who has the most gold medals in the winter olympics of all time

A: Norway

Q: how many episodes are there in dragon ball z

A: 291

Q: who has the most followers in the world on instagram

A: Instagram

Q: ok google who was the second president of the united states

A: John Adams

(14)
(15)

2位

(16)

順位 名前 スコア

1 Microsoft Research 54.00

2 Facebook AI 53.89

3 Studio Ousia & Tohoku Univ. 52.78

4 Brno Univ. of Technology 50.33

5 Huawei Noah’s Ark Lab 48.06

6 Salesforce 46.83

3位

(17)

無制約トラックの首位はMicrosoft Research、

他の全てのトラックはFacebook AIという結果に...

(18)

宣伝:高精度な汎用質問応答エンジン「Soseki」

独自に開発した大規模質問応答データで訓練したモデル

学習データの作成が不要(訓練済みモデルを提供)

回答となるデータ(FAQ、マニュアル、社内文書)があれば、

すぐにシステムをローンチできる

NeurIPS EfficientQAで使用したモデルを拡張して使用

主な用途:

○ サポートデスクの自動化・効率化 ○ 質問応答チャットボット ○ 社内検索エンジン

提供形態:

○ クラウドサービス ○ オンプレミス環境(システムインテグレータと連携して提供)

Soseki: 深層学習を用いた学習データ不要の高精度な質問応答エンジン

https://soseki.ai

(19)

EfficientQAで使った質問応答システムをオンラインで試せるよ!


https://demo.soseki.ai

(20)
(21)

Retriever-Readerアプローチ

Retrieverが知識ソースから少量の候補パッセージを選択し、Readerが

候補パッセージを詳しく読んで解答

Retrieverは大量のパッセージから高速に候補パッセージを探す軽いモデル

Readerはパッセージを詳しく読む重たいモデル

Retriever

Reader

我が輩は猫である

を書いた作家は?

夏目漱石

上位k件の該当性の 高いパッセージ

知識ソース

(Wikipedia等)

近年のオープンドメイン質問応答システムはほとんど

Retriever-Readerアプローチを採用

(22)
(23)

Retrieverのベースライン: TF-IDF, BM25

WikipediaのパッセージをBM25でランキングした場合、上位20件の

パッセージに解答の文字列が含まれている確率 (Karpukhin et al. 2020)

質問を検索クエリとして伝統的な(スパースな)検索(例:BM25)を使う

Natural Questions

59.1%

TriviaQA

66.9%

Retrievalの段階で6割では性能的に厳しそう...

(24)

ニューラルネットを使ってRetrieverの性能を

改善したい...!

(25)

Dense Passage Retriever (DPR): 概要

質問エンコーダとパッセージエンコーダの2つのBERTを

使って質問とパッセージをベクトル表現にする

BERTの[CLS]トークンの出力表現を用いる

質問とパッセージの”近さ”をそれぞれのベクトル表現の

内積で表現

質問 エンコーダ パッセージ エンコーダ 質問 パッセージ スコア 内積

BERTを用いたよく使われている単純なRetriever

q: 質問 p: パッセージ EQ(・): 質問BERTエンコーダ EP(・): パッセージBERTエンコーダ

(26)

DPR: 訓練

ある質問に対して、解答文字列を含んだパッセージを正例、含んでいない

パッセージを負例とする

難しい負例(hard negatives)の作成:質問をクエリとしてBM25を使って

パッセージを検索し、上位のパッセージで解答文字列を含まないものを負例とする

質問とパッセージの内積を使ったクロスエントロピー損失を用いて訓練

その他の工夫:

解答位置のアノテーションを含むデータセットにおいては、アノテーション

されたパッセージを正例とする

26 q: 質問 p+: 正例パッセージ p-: 負例パッセージ

(27)

DPR: in-batch negatives

in-batch negatives: ある質問qと同じミニバッチに含まれる全ての他の質問に

対応する正例および負例パッセージをqの負例として扱うことで計算量を削減

マルチGPUではNCCL等を使ってパッセージ表現をGPU間で転送しながら訓練

(28)

DPR: 推論

知識ソースに含まれる全てのパッセージを予めベクトルに変換し、パッセージの

ベクトルインデックスを作成する

インデックスはパッセージ数×ベクトルの次元数の行列

質問のベクトルをクエリとした近傍探索として解く

高速に動作する実装がある(Faiss, ScaNN等)

HNSW等の近似近傍探索を適用することで推論速度を高速化できる

問題:インデックスは全て物理メモリ上に載せる必要があるが、サイズが非常に大きい

DPRの英語Wikipedia全体のインデックスは60GB超

HNSWインデックスは140GB超

DPRはHugging Faceのtransformersライブラリに


(29)

DPR: 性能

上位20件/100件のパッセージに正解の解答文字列が含まれているかで評価

BM25と比較して大幅な性能向上

(30)

Generation-Augmented Retrieval (GAR): 概要

質問のクエリ拡張を行うseq2seqモデルを用いて、質問を拡張してから

スパースな検索(例:BM25)を適用する

質問を入力として、下記のテキストを生成するseq2seqモデルを学習

解答文字列

解答文字列を含む文

解答文字列を含むWikipediaページのタイトル

質問と生成した文字列を連結して検索クエリとして使う

事前訓練済みモデルにはBARTを使用

seq2seqモデルでクエリ拡張を行ってスパースな検索における性能を改善

普通の検索エンジン実装がそのまま使えるのはメリットが大きそう

(31)
(32)

GAR: 評価

GARによって作成されたクエリを用いるとBM25の性能が飛躍的に向上

GAR (sparse) とDPR (dense) の組み合わせ(GAR+DPR)で性能がさらに

(33)

GAR: Ablation Study

解答文字列、解答文字列を含む文、

解答を含むWikipediaタイトルの全て

のクエリ拡張が性能向上に寄与

(34)
(35)

抽出型Reader (DPR reader): 概要

● Retrieverが出力した候補パッセージから、パッセージを 選択して、選択したパッセージから解答文字列を抽出 ● BERTなどの事前訓練済みモデルを使う ● 各パッセージは、質問と連結してモデルに入力される ● 下記の3つのヘッドを持つモデルを訓練 ○ トークンが解答の開始位置である確率(Pstart)を出力するヘッド ○ トークンが解答の終了位置である確率(Pend)を出力するヘッド ○ パッセージが正例である確率(Pselected)を出力するヘッド

Pselectedでパッセージを選択しPstart, Pendで解答スパンを検出 [CLS]

PCLS P1 PN PSEP P1’ PM’ PSEP

Tok 1 Tok N [SEP] Tok 1’ Tok M’ [SEP]

Transformer

... ... 質問 パッセージ 開始位置&終了位置 パッセージのスコア

オープンドメイン質問応答で標準的に使われている抽出型 Reader

Pi: i番目のトークンの Transformerの出力ベクトル (全てのパッセージの [CLS]出力ベクトルを連結)

(36)

抽出型Reader (DPR reader): 性能

DPRとBERT-baseベースの抽出型Readerを組み合わせる

2020年前半頃まで(?)のstate of the art

(37)

生成型Reader (T5+SSM): 概要

知識ソースを使わずに大規模言語モデルから解答を生成

● T5(言語生成可能な大規模訓練済み言語モデル)に質問を読ませて解答を生成

○ モデルのパラメータ数を増やせば、多くの情報を覚え込ませられるので、知識ソースを 参照しなくても質問に解答できる

Salient span masking: Wikipediaにある固有表現及び日付をマスクして、モデルが正しく

穴埋めするように追加で事前訓練を行う

(38)

生成型Reader (T5+SSM): 性能

DPR reader (Karpukhin et al. 2020) よりは

劣るが比較的良い性能で質問応答を解ける

モデルのサイズを大きくすると性能が

あがっていく

Salient span masking (SSM) による事前訓練を

追加するとさらに性能が上がる

(39)

生成型Reader (Fusion-in-Decoder): 概要

パッセージを読み込んで解答を生成するencoder-decoder方式の生成型 Reader

Retrieverが取得した候補パッセージを読み込むエンコーダと、解答文字列を生成する

デコーダで構成される

パッセージから解答を抽出するのではなく、パッセージを入力として解答を生成する

エンコーダは質問と各パッセージを連結したテキストを入力として取り、パッセージの

表現を出力

デコーダは、エンコーダの出力した表現を連結したものを入力として取り、解答を生成

事前訓練済みモデルとしてT5-base, T5-largeを採用

(40)

生成型Reader (Fusion-in-Decoder): 性能

DPRをretrieverとして用いて、Natural Questions、TriviaQAデータセットでSOTA

64枚のNVIDIA Tesla V100 32GBを用いて訓練

「パッセージに含まれている情報」と「モデルのパラメータに含まれている情報」の

(41)

生成型Readerは抽出型Readerより優れているか?

モデルのパラメータを増やせば性能が上がることを仮定すると一概に生成型の方が

性能が良いとはいえない

抽出型と生成型は得意な質問が異なると考えると、アンサンブルすると有利

モデル タイプ ベースモデル パラメータ数 NQでの精度 TQAでの精度 DPR 抽出型 BERT-base 110M 41.5% 56.8% Fusion-in-Decoder 生成型 T5-base 220M 48.2% 65.0% DPR (ours) 抽出型 ELECTRA-large 335M 50%前後 65.6% Fusion-in-Decoder 生成型 T5-large 770M 51.4% 67.6%

(42)
(43)

EfficientQA上位エントリのアプローチ (無制約トラック, 6GB制約トラック)

無制約トラックおよび6GB制約トラックの上位は全てRetriever-Readerアプローチを採用

上位エントリについては自動評価と手動評価が行われた

自動評価:Natural Questionsデータセットの解答文字列とのexact matchで評価

モデル トラック 順位 Retriever Reader 知識ソース 自動評価 手動評価 Microsoft UnitedQA 無制約 1位 DPR FiD + 抽出型 (ELECTRA) Wikipediaテキスト 54.00% 65.80% Facebook Hybrid

無制約 2位 DPR+GAR FiD Wikipediaテキスト、リ

スト、テーブル

53.89% 67.38%

Facebook System

6GB 1位 DPR+GAR FiD Wikipediaテキスト、リ

スト 53.33% 65.18% Ousia-Tohoku Soseki 6GB 2位 DPR 抽出型 (ELECTRA) Wikipediaテキスト 50.17% 62.01%

(44)

EfficientQA上位エントリのアプローチ (無制約トラック, 6GB制約トラック)

モデル トラック 順位 Retriever Reader 知識ソース 自動評価 手動評価 Microsoft UnitedQA 無制約 1位 DPR FiD + 抽出型 (ELECTRA) Wikipediaテキスト 54.00% 65.80% Facebook Hybrid

無制約 2位 DPR+GAR FiD Wikipediaテキスト、リ

スト、テーブル

53.89% 67.38%

Facebook System

6GB 1位 DPR+GAR FiD Wikipediaテキスト、リ

スト 53.33% 65.18% Ousia-Tohoku Soseki 6GB 2位 DPR 抽出型 (ELECTRA) Wikipediaテキスト 50.17% 62.01% Facebook AIはトラック毎に異なるチームで複数のシステムを投稿

(45)

EfficientQA上位エントリのアプローチ (無制約トラック, 6GB制約トラック)

モデル トラック 順位 Retriever Reader 知識ソース 自動評価 手動評価 Microsoft UnitedQA 無制約 1位 DPR FiD + 抽出型 (ELECTRA) Wikipediaテキスト 54.00% 65.80% Facebook Hybrid

無制約 2位 DPR+GAR FiD Wikipediaテキスト、リ

スト、テーブル

53.89% 67.38%

Facebook System

6GB 1位 DPR+GAR FiD Wikipediaテキスト、リ

スト 53.33% 65.18% Ousia-Tohoku Soseki 6GB 2位 DPR 抽出型 (ELECTRA) Wikipediaテキスト 50.17% 62.01% Retrieverは、Microsoftと我々のシステムは DPRを使用。Facebookは双方の システムでDPRとGARをアンサンブルして性能を向上した

(46)

EfficientQA上位エントリのアプローチ (無制約トラック, 6GB制約トラック)

我々もFiDを実装したものの、論文のスコアを


モデル トラック 順位 Retriever Reader 知識ソース 自動評価 手動評価 Microsoft UnitedQA 無制約 1位 DPR FiD + 抽出型 (ELECTRA) Wikipediaテキスト 54.00% 65.80% Facebook Hybrid

無制約 2位 DPR+GAR FiD Wikipediaテキスト、リ

スト、テーブル

53.89% 67.38%

Facebook System

6GB 1位 DPR+GAR FiD Wikipediaテキスト、リ

スト 53.33% 65.18% Ousia-Tohoku Soseki 6GB 2位 DPR 抽出型 (ELECTRA) Wikipediaテキスト 50.17% 62.01% ReaderはFacebookはFusion-in-Decoder (FiD)、我々は抽出型モデルを使用。 Microsoftは双方をアンサンブルして性能を向上。

(47)

EfficientQA上位エントリのアプローチ (無制約トラック, 6GB制約トラック)

モデル トラック 順位 Retriever Reader 知識ソース 自動評価 手動評価 Microsoft UnitedQA 無制約 1位 DPR FiD + 抽出型 (ELECTRA) Wikipediaテキスト 54.00% 65.80% Facebook Hybrid

無制約 2位 DPR+GAR FiD Wikipediaテキスト、リ

スト、テーブル

53.89% 67.38%

Facebook System

6GB 1位 DPR+GAR FiD Wikipediaテキスト、リ

スト 53.33% 65.18% Ousia-Tohoku Soseki 6GB 2位 DPR 抽出型 (ELECTRA) Wikipediaテキスト 50.17% 62.01% Facebookは、知識ソースとして、テキストに加えてリストやテーブルを 追加して性能を向上

(48)

EfficientQA上位エントリのアプローチ (無制約トラック, 6GB制約トラック)

モデル トラック 順位 Retriever Reader 知識ソース 自動評価 手動評価 Microsoft UnitedQA 無制約 1位 DPR FiD + 抽出型 (ELECTRA) Wikipediaテキスト 54.00% 65.80% Facebook Hybrid

無制約 2位 DPR+GAR FiD Wikipediaテキスト、リ

スト、テーブル

53.89% 67.38%

Facebook System

6GB 1位 DPR+GAR FiD Wikipediaテキスト、リ

スト 53.33% 65.18% Ousia-Tohoku Soseki 6GB 2位 DPR 抽出型 (ELECTRA) Wikipediaテキスト 50.17% 62.01% 自動評価では無制約トラックの順位が逆転し、 Facebookが1位に。

評価に使われる解答文字列はWikipediaから抜き出されているので、解答を

(49)

EfficientQA上位エントリの正解率改善

テクニック

(50)

性能改善: DPRのマルチステップ訓練

BM25よりも難しい負例を作成するため、下記の

ステップを繰り返す

モデルを訓練(最初の訓練ではBM25で負例を作成する)

訓練したモデルを質問をクエリとして検索し、解答文字列を

含まない上位パッセージを負例としてデータセットを作成

Facebook Hybridシステムが採用し、検証セットの

exact match正解率で1.4%の性能向上

BM25よりも”難しい”負例を作るためにマルチステップでDPRを訓練する

DPR

難しい負例

(51)

性能改善: 知識ソースにテーブルとリストを加える

Wikipediaのテキストに加えて、テーブルとリストを加えることでDPRを拡張する

テーブルは、下記の要領で行単位でテキストに変換する

テーブルの空行でない最初の行(ヘッダ)と各行のセルの値を改行で連結して

テキストに変換

入力長に余裕がある場合はテーブルの他の行をランダムに選択して加える

テーブルとリストを知識ソースに加えることで、上位20件/100件の候補

パッセージに解答文字列が含まれている確率が大幅に向上

テーブルとリストを加えて知識ソースを拡張する

(52)

EfficientQA上位エントリの容量削減

テクニック(6GB制約トラック)

(53)

オープンドメイン質問応答システムを6GBにおさめる

システムの動作に必要なリソースを6GB以内におさめる必要がある

知識ソース(Passage corpus)

検索インデックス

モデルのパラメータ

OS、コード、依存ライブラリ

特に知識ソースとインデックスが容量が大きい

DPRが使用している英語Wikipediaのテキストデータは約16GB

DPRのパッセージインデックスは60GB超(!)

Min et al. 2020 NeurIPS 2020 EfficientQA Competition: Systems, Analyses and Lessons Learned. ArXiv.

(54)

DPRインデックスの容量削減

Facebook System:

○ DPRの出力に全結合層を追加し、768次元から256次元までベクトル表現の次元を削減 ○ インデックスに対してFaissの直積量子化(product quantization)を後処理で適用 ○ インデックスの容量を1.6GB程度まで削減

Ousia-Tohoku Soseki:

○ Learning to hashを適用し、パッセージのベクトル表現を訓練時にバイナリ化 ○ ベクトルの各次元が1bitで表現され、インデックスの容量を2GB程度まで削減

(55)

パッセージ等の容量削減

解答が含まれていなさそうなパッセージを除外する

Facebook System: Wikipediaの記事タイトルとカテゴリを特徴とする

線形分類器を訓練

Ousia-tohoku Soseki: ページビュー数が少ないWikipediaページを除外

(訓練無し)

ページビューを使うと性能低下無しで3割程度のパッセージを除外できる!

圧縮する!

Facebook System: lrzipでパッセージを圧縮

Ousia-tohoku Soseki: ZPAQでモデル、パッセージ、インデックス、

/usr/local/libの全ファイルを圧縮

(56)

さいごに

NeurIPS EfficientQAコンペティションの上位エントリを題材として、

オープンドメイン質問応答の技術を概観

計算効率や多言語への対応、他ドメインへの適用などがこれからの課題

ikuya@ikuya.net

@ikuyamada

質問やコメント等は下記の連絡先までご連絡ください!

参照

関連したドキュメント

・「下→上(能動)」とは、荷の位置を現在位置から上方へ移動する動作。

第2章 環境影響評価の実施手順等 第1

基幹系統 地内基幹送電線(最上位電圧から 2 階級)の送電線,最上位電圧から 2 階級 の母線,最上位電圧から 2 階級を連系する変圧器(変圧器

直接線評価 :幅約 8.0m,奥行約 16.0m,高さ約 3.2m スカイシャイン線評価 :幅約 112.5m,奥行約 27.6m,高さ約 3.2m (5)

活断層の評価 中越沖地震の 知見の反映 地質調査.

部位名 経年劣化事象 健全性評価結果 現状保全

敷地からの距離 約48km 火山の形式・タイプ 成層火山..

敷地からの距離 約82km 火山の形式・タイプ 成層火山. 活動年代