# オープンドメイン質問応答における 文集合と位置情報を用いた抽出精度向上に関する検証

初鹿憂柴田千尋
法政大学 理工学部創生科学科
yu.hatsushika.2r@stu.hosei.ac.jp,chiro@hosei.ac.jp

## 概要

近年，BERT や Transformer を用いた深層学習モデ ルが様々な自然言語処理のタスクで高い精度を上げ ているが，質問応答もその例外には当たらない. 特 に，最近，鈴木ら [1] によって作成された日本語版質問応答データセットが公開されたことにより，日本語でも質問応答に関する研究を進めることが容易になった. 本研究では，日本語版質問応答データ セットを用いて Retriever-Reader とよばれる質問応答のためのモデルに対して，精度改善に向けた手法を 2 つ提案し，その結果を検討する. Retriever 側 は，質問文に対する関連度が高い記事候補を関連度 の高い順に抽出する。一方，Reader が正解の解答を 出力できる場合は，候補となる記事中に正解が含ま れている場合がほとんどであることが，上記データ セットを用いた実験の結果わかっている. したがっ て, Reader が出力する候補に正解が含まれる確率 を，なるべく上げることが重要となる。記事は通常多数の文を含むが，そのすべての文が質問文に関連 しているわけではない。そのため，同じ数のトーク ンを Reader に入力する場合，記事よりも文のほう がより多数の候補を入力することができる．本稿で は，提案手法の 1 つとして，Retriverに，記事の代わ りに文ごとに候補を抽出させることを提案する。

## 1 はじめに

近年，ニューラルネットワークを用いたモデルが クイズ形式の質問に対して高精度に解答する研究が 盛んに行われている [2]. これらの研究が進むことで 従来の検索システムに比べて，より自然な言葉での 質問応答が可能になると考えられている.

出題範囲に制限のない広範囲な一般常識が必要と なるようなクイズに対して，高精度で解答するため には，なるべくたくさんの知識を利用することが必要である。そのため，正解するためには膨大な記事 の中から，答えを含む可能性の高いものを抽出する プロセス，及び，抽出された記事のなかから，文脈 を考慮して答えとなる短いフレーズを導くためのプ ロセスが必要となる。

与えられた質問に対して答えを正しく導き出すた めに用いられる主な手法としては， Retriever-Reader モデルが挙げられる [3]. Retriever とはある記事集合から質問文の情報を用いて関連する記事を抽出す ることが行われ Reader では Transformerを元にした 言語モデルを用いて抽出した関連する記事から答え を導き出すことが行われる．正答数を上げるために は Retriever と Reader 両方の精度を上げる必要があ る. Retriever の精度は抽出した $N$ 件の記事の中に答 えを含んだ記事が含まれるかで測られ，Reader の精度は答えが出力できるかで測られる。今回の実験で は Retrieverに Dense Passage Retriever [4]を，Reader に Fusion-in-Decoder [5] を採用する。本研究では 2 つの手法を提案する. 1 つ目は Retriever に従来用い ていた記事集合を文ごとに分割した文集合を用い る. 2 つ目は抽出された記事に対して位置情報を用 いる.

## 2 関連研究

## 2.1 Retriever-Reader モデル

Retriever-Reader モデルは文を抽出する役割である Retriever と答えを生成する役割である Reader という 2 つの部分から構成されている. Retriever では記事集合と質問文の類似度を計算することによって全て の記事に対して質問文との関連度スコアを付け，ス コア上位から順番に抽出する。 Reader では抽出した 記事集合から, 答えとなるフレーズを Transformer モ デルにより生成する. 今回は埋め込み表現に変換し 連結させることにより言語モデルの入力として解答

を生成する。

図 1 Retriever-Reader モデル

## 2.2 DPR (Dense Passage Retriever)

DPR[4] は質問に対して関連する記事を大規模な 記事集合から意味的に抽出するモデルである. まず 質問文 $q$ と記事集合 $p$ に対して，BERT [6] を用いて 密なべクトル表現 $E(q), E(p)$ にエンコードする.次に式 1 のように内積を計算し関連性の高い記事を 順番に出力する.

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

DPR の学習データセットは，Elasticsearch ${ }^{1)}$ を用 いて作られ, $\left(q_{i}, p_{i}^{+}, p_{i 1}^{-}, p_{i 2}^{-}, \cdots, p_{i N}^{-}\right)$で定義される. $q$ は質問文, $p^{+}$はポシティブパッセージ， $p^{-}$はネ ガティブパッセージを表す. モデルは式 1 の損失関数が最小になるように 2 つの BERT エンコーダを学習する. ポジティブパッセージとの類似度が高く, ネガティブパッセージとの類似度が低いほど損失関数は小さくなる.

$
\begin{aligned}
& \mathrm{L}\left(q_{i}, p_{i}^{+}, p_{i 1}^{-}, p_{i 2}^{-}, \cdots, p_{i N}^{-}\right) \\
& =-\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 FiD (Fusion-in-Decoder)

Fusion-in-Decoder[5] は Retriever-Reader モデルの Readerとして用いられている。言語モデルをべース に作られており，質問文と記事から答えを生成でき る. Retriever 側で抽出された複数の記事をエンコー ドした後に連結することで複数の記事を大力可能に していることが特徴である。モデルとしては，一般


的な翻訳モデルと同じように, 次トークンの予測す るデコーダを用いている.

## 3 提案手法

提案手法としては，以下に述べるように，Retriever と Reader に対してそれぞれ 1 つずつ工夫を行なう.

## 3.1 文集合

記事集合として wikipedia などのクイズとは直接関連のない一般的な文書セットを用いた場合，記事 の中に多数の文が含まれ，さらに質問文の解答には 必要のない文も多数含まれている。例えば表 1 の例 に示すように, 質問「ゴルフボールの表面につけら れているくぼみのことをなんと言うでしょう」に 対し，正答が「ティンプル」であるような問題に対 して，「乱流」というタイトルの記事が抽出されて いる。記事には，3文含まれているが，回答には赤 く色付けした 2 文目のみが関係していると考えら える。

本研究では，関連する文をより多く正確に抽出す るために，分け方を記事ごとから文ごとにすること を提案する。具体的には Retrieverに用いる記事集合 を文集合に変更して，事前学習を行なう。文集合で

 \\

学習をした Retrieverを用いて文章抽出を行なう。

表 1 抽出した記事に含まれる文章の例

## 3.2 位置情報

もう一つの提案は，Readerの入力に関するもので ある．前述のように，Retriver は関連度の高い順に 記事を列挙する. Retriver が関連度が高いと推定し たとしても，必ずしも正答となるフレーズがその 記事の中に含まれているわけでは当然ないが，実際に，実験結果から，図 2 に示すように，Retriever

で抽出した記事を分析した結果，解答を含んだ記事が検索順位上位に集まる傾向が高いということ がわかる．そこで，情報の重要度を記事位置ごと 与えることで，精度が向上する可能性があるため， Reader に入力する際に位置情報を加える手法を提案 する. 方法としては記事の埋め込み表現に位置エン コーディングを加算する．位置エンコーディングは Transformer Encoder [7] の位置エンコーディングと同 じものを用いる.

図 2 解答が含まれる記事の分布

## 4 データセット

## 4.1 コンテキスト

記事集合や文集合といった DPR で抽出する際の 検索元のデータセットをコンテキストと呼ぶ.

## 4.1.1 記事集合

$\mathrm{AI}$ 王クイズ日本一決定戦に公開されていたウィ キペディアを用いて作られた記事集合を利用した。記事数としては 4,288,199 件のものを利用する. 実際， 1 件の記事サイズは大きいため, 段落ごとに 区切ったデータを記事集合として, 記事に段落が あった場合同タイトルの別の記事として保存されて いる。

## 4.1.2 文集合

今回記事ごとではなく，文ごとのインデックスを 作成するために，AI王クイズ日本一決定戦に公開さ れていたウィキペディアのデータとコードを用いて 集められていた記事集合を句点で区切り, 再度ラべ ルを付け直す。その結果，表 2 に示したようにラべ ルの総数が約 430 万件から約 2,000 万件に増加した.
このため記事または文べクトルを作成する際に約 5 倍の時間がかかった。

表 2 検索インデックスの総数

## 4.2 訓練データ

本研究では $\mathrm{AI}$ 王クイズ日本一決定戦で公開され ていた質問応答タスクの日本語データセットを用 いる. JAQKET [1]をもとにして作られている. 訓練データセットとして 22,335 件の質問文と解答が 含まれている。また，質問文に対して Elasticsearch を用いることで正解が含まれている記事であるポ ジティブパッセージを抽出する. さらにネガティブ パッセージとして回答が含まれていない記事を付与 する. Retrieverの訓練データは質問文, $p^{+}$はポシ ティブパッセージ， $p^{-}$はネガティブパッセージを 用いて $\left(q_{i}, p_{i}^{+}, p_{i 1}^{-}, p_{i 2}^{-}, \cdots, p_{i N}^{-}\right)$で定義される.

Readerにおける訓練データは，質問文を Retriever に入力し検索をかけて得られる記事, 記事タイト ルと質問文を上位 $\mathrm{N}$ 件まで組み合わせて作る. 評価データは JAQKET から訓練データに含まれない 1,000 件の問題を利用して，同様にして作られる.

## 5 実験

## 5.1 実験設定

表 3 亿示したハイパーパラメータを基準として コンテキストと Reader の入力情報に対して変更 を加えて提案手法の有効性を検証する． Retriever に事前学習済みの日本語 BERT ${ }^{2}$ を用いた Dense Passage Retriever, Readerに事前学習済みの日本語 $\left.\mathrm{T} 5^{3}\right)$ を用いた Fusion-in-Decoder を採用する。また， Fusion-in-Decoder に入力するコンテキスト数は 50 と 100 で実験を行う.

## 5.2 抽出精度の比較

記事ごとのインデックスを使用した基準モデルと 文ごとのインデックスを使用したモデルに関して比較実験を行なった，結果は表 4 のようになり，数値 は，上位 $N$ 件までの記事または文を抽出した際に，

表 3 ハイパーパラメーター

答えが含まれた記事が抽出された割合を示す.イン デックスのサイズは表 2 より文集合は記事集合の 4 から 5 倍であるため，コンテキスト 1 つ当たりのサ イズは小さいと推測される. 文ごとで精度が約 0.85 になるのは上位 100 件の時であるのに対して記事ご とでは上位 50 件の時であるため, 抽出精度が同等 に達するために必要なコンテキストの差は 2 倍であ る.そのため，少ない量の文で解答を抽出できてい ることが分かる.

## 5.3 解答生成精度の比較

次に記事集合を用いて学習させた FiD と文集合を 用いて 60,000 ステップ学習させた FiD に対して評価を行う. 結果は表 5 のようになった. 記事集合でテ キスト数 50 の時と, 文集合でテキスト数 100 の時 を比較すると表 4 より解答を含んだコンテキストの 数は同等であったが精度は記事集合の方が高いが,実際に Reader 入力されている文数やトークン数は，文集合のほうが少ないため，入力する文数やトーク ン数を揃えて，精度を比較をする必要がある.

表 5 FiD の結果

## 5.4 位置情報を入力した結果

DPRを用いて抽出した記事 50 件に対して Transformer の位置エンコーディング [7] を参考に位置情報を追加する. 位置情報を加えたモデルと基準 モデルに対して 90,000 ステップ学習する. 位置情報 を加えて学習された FiDに対して行なった評価を表 6 に示す。

次に DPR を用いて抽出した文 50 件， 100 件に対 して位置エンコーディングを加えて 60,000 ステッ プ学習する. 位置情報を加えて学習された FiD に対 して行なった評価を表 7 に示す. 表よりわかるよう に，少なくとも本稿で述べた位置情報の入力の手法 では，精度向上に寄与しないことがわかる.

表 7 文集合と位置情報を用いた結果

## 6 結論

本稿では，コンテキストとして用いていた記事集合を文集合に変えたることにより，DPR での抽出精度がどのように変化するかを検討した．その結果，少ない文章数で解答を含めることができている と言える。一方で，FiD で記事集合と文集合で解答 を含むコンテキストを抽出する精度が同等であった 場合は, Reader の精度は記事集合の方が高くなって いる事がわかる.これは，記事集合の場合は，入力 の文数が少なくなっているためであり，入力の文数 やトークン数を揃えた上で比較する必要があるた め，フューチャーワークとする．位置情報の入力に 関しては, 精度の改善は認められなかったが，問題 それぞれで分布が少しずつ変わっている可能性があ るため，今後は広い範囲に対して位置情報を取る改善が必要である.

今後の展望として,コンテキストを増やして記事集合と文集合の比較実験を行うことを考えている.位置情報に関しては抽出データに対して更に分析を 行う必要がある. また Retriever-Reader モデルにおい て FiD の出力精度を向上させるために DPR で抽出 する情報の性質を検証する必要がある.

## 謝辞

今回研究するにあたり，町田秀輔氏には実験の準備やコードのエラーの解消に助言を頂いたこと深 く感謝申し上げます。本研究の一部は JSPS 科研費 JP18K11449 の助成を受けたものです.

## 参考文献

[1] 鈴木正敏, 鈴木潤, 松田耕史, 西田京介, 井之上直也. Jaqket: クイズを題材にした日本語 qa データセットの 構築. 言語処理学会 第 26 回年次大会 発表論文集, pp. 237-240, 2020.

[2] Ai王クイズ日本一決定戦，（2022-9 閲覧）.https:// sites.google.com/view/project-aio/competition3.

[3] Fengbin Zhu, Wenqiang Lei, Chao Wang, Jianming Zheng, Soujanya Poria, and Tat-Seng Chua. Retrieving and reading: A comprehensive survey on open-domain question answering, 2021.

[4] 加藤拓真, 宮脇峻平, 西田京介, 鈴木潤. オープンドメ イン qa における dpr の有効性検証. 言語処理学会 第 27 回年次大会 発表論文集, pp. 1403-1407, 2021.

[5] Gautier Izacard and Edouard Grave. Leveraging passage retrieval with generative models for open domain question answering. In Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics, pp. 874-880, 2021.

[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert:pre-training of deep bidirectional transformers for language understanding. In In NAACL-HLT, 2019.

[7] Denis Rothman, 黒川利明 (訳). Transformer による自然言語処理. 朝倉書店, 2022.
 初鹿憂柴田千尋 法政大学 理工学部創生科学科 yu.hatsushika.2r@stu.hosei.ac.jp,chiro@hosei.ac.jp  