# オープンドメイン QA における DPR の有効性検証

加藤 拓真 $1 *$ 宮脇峻平 $1 *$ 西田京介 2 鈴木潤 1,3
}

1 東北大学 ${ }^{2} \mathrm{NTT}$ メディアインテリジェンス研究所 3 理化学研究所

 }^{1}$ takuma.kato, miyawaki.shumpei, jun.suzuki\}@ecei.tohoku.ac.jp

${ }^{2}$ kyosuke.nishida.rx@hco.ntt.co.jp
## 1 はじめに

計算機による自然言語の適切な理解を実現するこ とは，自然言語処理および人工知能研究の最終目的 の一つである。その実現に向けた取り組みとして，質問応答（QA）タスクに関する研究が近年大きな 注目を集めている。QAタスクでは，質問に関連す る適切な知識に基づいて解答を推定することが求 められるが，関連知識を含む文書集合が用意されな いという状況は少なくない。このような状況に対し て, オープンドメイン $\mathrm{QA}[1]$ は, 問題を解くために 必要な知識源を特に規定しない $\mathrm{QA}$ タスクとして,非常に重要な役割を持つ.

一般的にオープンドメイン QA では，1) 検索モ ジュール (retriever) が，質問に対して関連する文書 を大規模な文書集合から検索し，2）読解モジュール （reader）が，検索した関連文書を用いて質問の解答 を推定する，二つのプロセスを用いて取り組まれ ることが多い，特に関連文書の検索性能が， QA シ ステムの性能に与える影響は大きく[1], Karpukhin ら [2] は，ニューラルモデルによる文書エンコーダ によって密なベクトル表現にエンコードされた意味的な情報を，関連文書の検索に用いる Dense Passage Retriever（DPR）を提案し，QA システムの性能改善を実現した。DPR を用いたオープンドメイン QA に対する取り組みは，今後更なる発展が期待されて いるが，DPR の詳細な実験設定がオープンドメイン QA に与える影響を調査した研究は少なく，DPRに ついて明らかにされていない要素が多い。そこで本研究では, DPR の応用的な利用を目的として, 特に 次元数を変化させたときの検索時間や性能変化につ いて定量的な評価および分析を行う。


図 1 DPR を用いたオープンドメイン QA システムの概要図. 1) 質問に対する関連文書を抽出するため, エン コードされた質問と文書の類似度を計算する retriever と， 2) retriever が抽出した関連文書から質問に対する解答の 推定を行う reader の二つのモジュールで構成される。

## 2 関連研究

オープンドメイン $\mathrm{QA}$ では, モデルの予測性能に 大きな影響を与える関連文書の検索方法を対象に，様々な研究が行われてきた。従来, 関連文書の検索方法には TF-IDF や BM25 [3] のように，質問中に存在する単語に対する文書中の出現頻度などの統計量 を用いたマッチングが使用された。しかし $\mathrm{QA}$ タス クでは，質問文の表現と検索対象に記載される情報 の表記が必ずしも同じであるとは限らないため, 表層一致を仮定する BM25 やTF-IDF といった抽出方法では，適切な文書が検索できない可能性が高いこ とが問題として広く知られている。この問題の解決策として, 近年急速に発達した単語埋め込みや深層 ニューラルネットに基づく意味的な情報を含む密 なべクトル表現を用いて，質問に対して意味的に類似する文書を抽出する方法が挙げられる，意味的な 情報を含む密なべクトル表現を用いることで，質問中に含まれる単語の出現頻度に基づくマッチング だけでは抽出できなかった，未知の情報に関する関連文書の取得が可能となる．密なベクトル表現を用 いた関連文書の抽出方法は様々なタスクに対して 研究されてきており [4][5][6], 中でも Karpukhi らは

DPR という手法を提案し, 密なベクトル表現によっ て QA システムの性能が向上したことを報告してい る. retrieverについて調査している先行研究として, Luan ら [7] は密なベクトル表現の次元数についての 調査を行なっている. Luan らの研究では, 密なべク トル表現 の次元数がオープンドメイン $\mathrm{QA}$ に与える 影響が明らかになっていない点と, DPR を研究対象 としていない点が，我々の研究と異なっている.

## 3 DPR を用いたオープンドメイン QA システム

1 章で述べたように，オープンドメイン $\mathrm{QA}$ シス テムは，文書検索を行う retriever と検索した文書か ら解答を推定する reader の二つのモジュールで構成 される. 本研究では, retriever における関連文書の 検索手法として Dense Passage Retriever（DPR）[2] を用いた QA システムを使用する (概要を図 1 に示 す). 本章では, この DPRを用いた QA システムに ついて説明する.

## 3.1 retriever による文書検索

本節では，retriever として DPR を用いた文書検索 について説明する.

## 3.1.1 DPR の学習

DPR では与えられた質問 $q$ および文書 $p$ の類似度を計算し, 質問に関連する文書の類似度が高くな るように学習を行う. 類似度は, 質問 $q$ と文書 $p$ と の内積によって計算される（式 1).

$
\operatorname{sim}(q, p)=E_{Q}(q)^{\top} E_{P}(p)
$

ここで， $E_{Q} ， E_{P}$ はそれぞれ質問，文書に対する二 つのエンコーダを表す. DPRでは, これら二つの エンコーダについて学習を行う. 学習データは, $D=\left.\{\left.\langle q_{i}, p_{i}^{+}, p_{i, 1}^{-}, \cdots, p_{i, n}^{-}\right.\rangle\right.\}$で定義される. ここで, $p_{i}^{+}$は正例の文書, $p_{i, j}^{-}$は負例の文書を示す. モデル は式 2 の損失関数が最小になるようにエンコーダ $E_{Q}$ と $E_{P}$ を学習する.

$
\begin{aligned}
& L\left(q_{i}, p_{i}^{+}, p_{i, 1}^{-}, \cdots, p_{i, n}^{-}\right) \\
& \quad=-\log \frac{e^{\operatorname{sim}\left(q_{i}, p_{i}^{+}\right)}}{e^{\operatorname{sim}\left(q_{i}, p_{i}^{+}\right)}+\sum_{j=1}^{n} e^{\operatorname{sim}\left(q_{i}, p_{i, j}^{-}\right)}}
\end{aligned}
$

各質問に対して, 式 2 で求められる損失は, 正例文書との類似度が高いほど，また負例文書との類似度 が低いほど，值が小さくなる．3.1.2 項では，正例お よび負例となる文書の選択方法について説明する。

## 3.1.2 正例・負例の選択

本項では, 3.1.1 項で述べた, 正例および負例の文書について，その選択方法を述べる．以下，正例文書をポジティブパッセージとする. また, 負例文書 をネガティブパッセージおよびハードネガティブ パッセージの二つに分ける.

ポジティブパッセージ文書集合のうち，与え られた質問に対する解答が文書中にも含まれ，か つ, BM25 スコアによる質問と文書間の関連度の高 い上位 100 件に含まれる文書をポジティブパッセー ジとして定義する。なお上位 100 件以内に解答が含 まれない場合, その質問解答ぺアはデータセットと して使用しないものとする.

ネガティブパッセージ 質問 $q_{i}$ に対して，同一 ミニバッチ内に存在する他の質問解答ペアが保持す るポジティブパッセージを，質問 $q_{i}$ に対するネガ ティブパッセージとして定義する1).

ハードネガティブパッセージ 質問に対する解答が含まれない 文書集合のうち, 質問との関連度が 最も高い文書をハードネガティブパッセージとして 定義する.

## 3.2 reader による解答推定

本節では, reader の解答推定について説明する. reader では, retriever が検索した関連文書から問題 の解答となる箇所を推定する．retriever が検索した 上位 $k$ 件の文書を, BERT [8] でエンコードし, 分散表現 $\mathbf{P}_{i} \in \mathbb{R}^{L \times h}(1 \leq i \leq k)$ を獲得する. ここで， $L$ は文書の最大長, $h$ は BERT の隠れ層の次元数であ る. 解答を推定するための文書を決定するため, 獲得した分散表現に対して, 式 3 を用いて各文書のス コアを求める. また, $i$ 番目の文書について, 文書中の位置 $s$ のトークンが解答スパンの開始トーク ンになる確率 $P_{\text {start }, i}$ と, 位置 $t$ のトークンが解答ス パンの終了トークンになる確率 $P_{\mathrm{start}, i}$ を，それぞれ 式 4,5 で求める.

$
\begin{aligned}
P_{\text {selected }}(i) & \left.=\operatorname{softmax}\left(\hat{\mathbf{P}}^{\top} \mathbf{w}_{\text {selected }}\right)\right)_{i} \\
P_{\text {start }, i}(s) & =\operatorname{softmax}\left(\mathbf{P}_{i} \mathbf{w}_{\text {start }}\right)_{s} \\
P_{\text {end }, i}(t) & =\operatorname{softmax}\left(\mathbf{P}_{i} \mathbf{w}_{\text {end }}\right)_{t}
\end{aligned}
$

ここで, $\mathbf{P}=\left[\mathbf{P}_{1}^{[\mathrm{CLS}]}, \ldots \mathbf{P}_{k}^{[\mathrm{CLS}]}\right]$ ([CLS] は BERT の [CLS] トークン) であり, $\mathbf{w}_{\text {selected }}, \mathbf{w}_{\text {start }}, \mathbf{w}_{\text {end }} \in \mathbb{R}^{h}$ は, reader が学習する重みベクトルである。また, softmax

1）訓練時にはランダムにミニバッチの作成が行われる度，プ ログラム上で動的にネガティブパッセージの作成を行う.
表 1 データセットの質問数

の添字 $i, s, t$ は，それぞれ $\operatorname{softmax}$ の結果から添字 $i, s, t$ の行を取得するという意味である. 最終的 に, 式 3 で求めたスコアが最も高い文書について, $P_{\text {start }, i}(s) \times P_{\text {end }, i}(t)$ の值が最大となるスパン $(s, t)$ を, reader が予測結果として出力する.

## 4 実験設定

## 4.1 データセット

本実験では, QA タスクの日本語データセットと して JAQKET [9] を用いた。また, 検索対象の文書 となるオープンソースの文書集合として，920,172 の記事からなる日本語 Wikiepdia のデータを用いた。

## 4.2 データセットの前処理

MeCab [10] を使用して Wikipedia の 記事をトーク ナイズし, 各文書のトークン数が 200 となるよう に各記事を分割した ${ }^{2}$ ．トークナイズによる文書 の作成をにより, 合計で $6,125,433$ からなる文書集合を取得した。また3.1.2 項における正例および負例の文書の選択は, ElasticSearch ${ }^{3)}$ を用いて質問と Wikipedia の文書間の関連度となる BM25 スコアを 算出し, 求めた関連度に基づいて選択を行った。前処理を行ったデータセットの統計情報を表 1 に示 す4).

2) トークン数は， $\{50,100,150,200\}$ から，開発セットにおけ る順位平均値が最も低い値を示した 200 を選択した。

3) https://github.com/elastic/elasticsearch

4）前処理の前後でデータサイズが減少しているが，これ は3.1.2 項で述べたように，質問と解答が含まれる文書との関連度が上位 100 件に含まれない場合，その質問はデータセッ トとして使用しないことが原因である.

## 4.3 モデルアーキテクチャ

本実験で用いる $\mathrm{QA}$ システムは， 3 章で述べた， retriever と reader の二つのモジュールから構成さ れるモデルを使用した。エンコーダには retriever, reader 共に事前訓練済みの日本語 $\mathrm{BERT}^{5)}$ を用いた.表 2 に retriever および reader のハイパーパラメータ の値を示す6). retriever による関連文書の抽出には，質問および文書に関する二つのエンコーダから取得した密なべクトル表現を用いて，式 1 の内積值に 基づく関連度を算出した。関連度の計算ツールに は，検索時間の効率化を図るため， faiss ${ }^{7)}$ を使用し た. faiss の検索手法には，最大内積探索に基づいた IndexFlatIPを用いて，関連文書の検索を行った。な お全ての文書のエンコードに要する時間は，TITAN X（Pascal）を用いた場合，およそ 5 時間 25 分ほど であった. reader の性能を測る評価指標として，質問に対する正解の解答との完全一致を用いた。

## 5 実験

本実験では，DPR の要素の 1 つである密なべク トル表現の次元数が $\mathrm{QA}$ システムの性能に与える 影響を明らかにするために， ベクトルの次元数を変 えたときの性能評価を行った。retriever の性能評価 として，5.1 節では， faiss を用いて関連文書の検索 を行った際の検索時間の結果を，また 5.2 節では,抽出した関連文書の評価結果を示す. さらに 5.3 節 では，質問に対する QA システムの正解率の結果を 示す.

## 5.1 関連文書の検索時間

retriever の文書エンコーダを用いて，Wikipedia の 全文書のエンコードを行い，faiss を用いた関連文書 の検索を行った．密なべクトル表現の各次元に対し て, faiss のインデックスの構築時間，および関連文書の検索時間を表 3 に示す。なお GPU は TITAN X （Pascal）を使用した。また関連文書は上位 300 件ま でを対象に抽出を行った。実験結果より，関連文書 の検索に要する時間は，検索に用いる質問および文書におけるべクトル表現の次元数におおよそ比例す ることが分かった。これは関連文書の検索に用いた

5) https://github.com/cl-tohoku/bert-japanese

6）開発セットを用いて, retriever では順位平均值が最小となっ た值，reader では完全一致した数が最多となった值を，設定值とした.

7) https://github.com/facebookresearch/faiss
表 3 faiss によるインデックス構築時間および検索時間

図 2 開発セットにおける retriever の正解率

手法が，式 1 に示す内積計算に基づいたもので，べ クトル表現の次元数に比例して, 演算の計算量が増加するためであると考えられる.

## 5.2 retriever の性能評価

各質問に対して, retriever が抽出した上位 $k$ 件 までの文書中に解答が含まれる場合を正解とし， retriever の性能評価を行った。評価結果を図 2 に示 す. 図 2 より，密なベクトル表現の次元数が大きい ほど，解答を含む文書の抽出漏れが少ないことを確認した。しかし，上位 100 件までの文書集合でさえ 解答が含まれる割合は七割程度であり, 残り三割程度の質問は解答不可能であることを示している。

## 5.3 QA システムの性能評価

retrieverが抽出した関連文書の集合のうち，上位 $k$件までの文書を使用した時の正解率を評価指標とし て，QA システムの性能評価を行った。評価結果を 図 3 に示す. 図 3 より, 密なベクトル表現の次元数 が最も大きい 768 次元での正解率が, 最も高い値と なった。また，与えられた質問に対して，reader が 予測した解答のスパンに対して, 正解のスパンと部分的に一致している事例がどれほど存在しているか 調查を行った。具体的には，式 6 に示す Intersection over Union の値を算出し， $\lambda$ の値を超えた場合の予測事例を正解と判定した場合の正解率を算出した。

$
\frac{T_{\text {gold }} \cap T_{\text {pred }}}{T_{\text {gold }} \cup T_{\text {pred }}} \geq \lambda
$

ここで, $T_{\text {gold }}, T_{\text {pred }}$ は, 正解の解答およびモデル が予測した解答を，それぞれ MeCabでトークン単

図 3 開発セットにおける QA システムの正解率

表 4 密ベクトルの次元数に対する QA システムの正解率

位に分割した集合を表す. $\lambda$ はモデルの予測が正解 とどの程度一致しているかを定めるハイパーパラ メータである.今回は抽出された上位 100 件の文書を対象として, readerの予測に対する正解率を， $\lambda=1.0$ と $\lambda=0.5$ それぞれについて算出した. 評価結果を表 4 に示す. 表 4 より, $\lambda=1.0$ および $\lambda=0.5$ では性能の差がほとんどみられなかった。このこと から，モデルの予測が誤っている場合，その予測ス パンは，正解の解答スパンとは異なった部分を文書 から抜き出しているということが考えられる。

## 6 おわりに

本研究では，DPR を用いた密なべクトル表現が， $\mathrm{QA}$ システムの性能にどのような影響を与えるか調査するため, JAQKET データセットを用いて, QA シ ステムの予測性能や関連文書の検索時間に与える影響を評価した。結果として，密なベクトル表現の次元数が文書の検索時間やモデルの性能に与える影響 が明らかになった。本実験では，一つのデータセッ トに対象を限定して実験を行ったが，今後は複数の データセットに対して同様の実験を行い，データ間 での横断的な比較について調査を行っていきたい。

謝辞本研究の一部は JSPS 科研費 JP19H04425 の助成を受けたものである.

## 参考文献

[1] Ellen M. Voorhees. The TREC-8 question answering track report. In TREC, 1999.

[2] Vladimir Karpukhin, Barlas Oguz, Sewon Min, Patrick S. H. Lewis, Ledell Wu, Sergey Edunov, Danqi Chen, and Wen-tau Yih. Dense passage retrieval for open-domain question answering. In $E M N L P, 2020$.

[3] S. Robertson and H. Zaragoza. The probabilistic relevance framework: Bm25 and beyond. Found. Trends Inf. Retr., Vol. 3, , 2009.

[4] Wen-tau Yih, Kristina Toutanova, John C. Platt, and Christopher Meek. Learning discriminative projections for text similarity measures. In CoNLL, 2011.

[5] Po-Sen Huang, Xiaodong He, Jianfeng Gao, Li Deng, Alex Acero, and Larry P. Heck. Learning deep structured semantic models for web search using clickthrough data. In ACM CIKM, 2013.

[6] Daniel Gillick, Sayali Kulkarni, Larry Lansing, Alessandro Presta, Jason Baldridge, Eugene Ie, and Diego GarcíaOlano. Learning dense representations for entity retrieval. In CoNLL, 2019.

[7] Yi Luan, Jacob Eisenstein, Kristina Toutanova, and Michael Collins. Sparse, dense, and attentional representations for text retrieval. CoRR, Vol. abs/2005.00181, , 2020.

[8] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: pre-training of deep bidirectional transformers for language understanding. In $N A A C L-H L T$, 2019.

[9] 鈴木正敏, 鈴木潤, 松田耕史, 西田京介, 井之上直也. JAQKET: クイズを題材にした日本語 QA データセッ 卜の構築. 言語処理学会, 2020.

[10] Taku Kudo, Kaoru Yamamoto, and Yuji Matsumoto. Applying conditional random fields to japanese morphological analysis. In $E M N L P, 2004$.
 加藤 拓真 $1 *$ 宮脇峻平 $1 *$ 西田京介 2 鈴木潤 1,3 }  1 東北大学 ${ }^{2} \mathrm{NTT}$ メディアインテリジェンス研究所 3 理化学研究所   }^{1}$ takuma.kato, miyawaki.shumpei, jun.suzuki\}@ecei.tohoku.ac.jp  ${ }^{2}$ kyosuke.nishida.rx@hco.ntt.co.jp 