# JointQA モデルによる質問応答精度向上の日本語データセット JAQKET への適用検討

竹下恭史朗
早稲田大学大学院情報生産システム研究科
tkstria@ruri.waseda.jp

## 1 はじめに

質問応答 (Question answering または Answer generation) タスクとは、与えられた文書などの知識をもと に、入力された質問や読解問題に正しく応答するこ とを目指すタスクである。一方、問題生成 (Question generation) タスクとは、入力された言葉を解答とす る問題を出力することを目指すタスクである。これ らは問題、解答、背景知識の 3 つの要素で構成され ており、2 つの要素から残り 1 つの要素を導くこと ができる。例えば質問応答においては、問題に対し て背景知識を元に解答を導く。問題生成において は、解答になるべき語句に対して背景知識を用いて 問題文を生成する。ここで、背景知識とは問題と解答の関係性を示す文書や、多くの文書から学習した 単語の数学的表現 (word2vec など) が挙げられる。 これらのタスクには多くのモデルが用いられ、これ までに多様な改善が試みられ、優れたモデルは社会 に応用されてきた。

質問応答と問題生成は互いにその質を補完する関係が知られており、同一のモデルで質問応答と問題生成の同時に訓練したモデル (これを JointQA モデ ルと呼ぶ) は、個々のタスクに特化したモデルより も教師データとの一致が高いという報告が見られ る。そこで、本研究では、2020 年に発表された日本語の質問応答データセット JAQKET[12]を用いて、質問応答と問題生成の質の相関を観察した。

## 2 関連研究

WikiQA[11] や SQuAD[6] に代表される質問応答 データセットを用いた研究として、問題から解答を 導く質問応答のみならず、解答からそれを問う問題 を作る問題生成が知られている。そしてこの問題生成は質問応答よりも長い単語列を出力しなくてはな らないためタスクとして難しく、また、受け入れら
れうる問題が教師データとして与えられているもの 以外にも多様に考えられるなど、多くの課題を抱え ている。

ところで、質問応答・問題生成に関する興味深い 事象として、JointQA モデルによる質問応答、問題生成の質の向上がある。JointQA モデルとは、質問応答・問題生成の双方を同時に訓練した深層学習モ デルのことで、JointQA モデルの学習によって、単 に一つのタスクのみを学習したモデルよりも精度の 高い出力が得られるというものがある。

JointQA モデルによる質問応答の精度の向上は多 くのデータセットで確認されており [8]、問題生成 の訓練が、質問応答をする上で有効な Attention 機構 の作用に寄与することが原因と見られている。これ までそういった JointQA モデルの研究の題材となっ ていたのは英語で書かれたデータセットによるもの が多かった。

しかし、2020 年に鈴木らにより日本語で書かれた 質問応答データセット JAQKET がリリースされ、構造化された日本語の質問応答データセットの供給に より、日本語の問題生成や質問応答の研究が行える ようになった。

これまでに行われた質問応答と問題生成の精度の 相関を見る研究は、英語で書かれたデータセットの ものが多く、日本語での問題生成に着目した研究は 見られていない。

## 3 研究目的

本研究では、JAQKETで与えられた問題文、解答、解答についての Wikipedia 記事、これら三つの要素 を用いて、質問応答と問題生成をさまざまな条件で 行い、JAQKET を質問応答のみならず問題生成につ いても活用することを試みる。

もっとも注目する点として、他のデータセットに 見られていた JointQA モデル 1 による質問応答の一

図 1 入力する問題と文書を連結したもの シアン=問題、黄=弁別のための値、緑=文書

図 2 入力する解答と文書を連結したもの マゼンタ=解答、黄=弁別のための値、緑=文書

致度の向上が、JAQKET においても見られるかを観察する。

## 4 実験

入力として、質問応答タスクの場合は問題と解答 に対する情報を含んだ文書を入力し、深層学習モデ ルによって解答を出力することを目指す。問題生成 タスクの場合は解答とその解答に関する情報を含ん だ文書を入力し、教師データに近い問題を生成する ことを目指す。

## 4.1 入出力データ

データ資源として、2020 年に鈴木らが発表した JAQKET を用いる。JAQKET は各タプルに ID、問題、解答、真の解答と 19 のダミーを含んだ選択肢、正規化 (全角文字を半角にするなど) 前の問題文・解答を含んだデータセットで、別のデータが、各選択肢についての Wikipedia 記事全文を与えている。実際の JAQKET の一部を図 1 に示す。訓練用デー タとして 13,061、開発用データとして 997、評価用 データとして 995 の問題 - 解答対がある。今回の研究では、JAQKET から問題と解答と Wikipedia 記事 を sentencepiece で分かち書きしたものの先頭 500 サ ブワードを抽出し、質問応答の場合は問題文に、問題生成の場合は解答の語句にそれを連結した。この 際、各タスクのどちらを行うかの弁別のために、問題あるいは解答と記事の間に、問題生成の場合は 「0」を、質問応答の場合は「1」を付与し、モデルが どちらの学習を行っているか把握する上での助けと した。(図 1,2 )表 1.JAQKET に含まれるデータの一例

 \\

実験の条件として、解答と文書から問題 (q-gen の み)、問題と文書から解答を導く (a-gen のみ) ものに 加え、JointQA による精度の改善を観測するために、全データを半分に分けてそれぞれ a-gen と q-gen を 一つのモデルで同時に行う a-gen $\vee \mathrm{q}$-gen、全データ を a-gen にも q-genにも用いる a-gen $\wedge$ q-gen、これら 四つの条件で実験を行った。各条件の入力におけ る、訓練データ、開発データの数を表 2 に示す。

表 2. 各条件における入力

このとき、a-gen $\vee$ q-gen は一つの問題 - 解答対は 質問応答と問題生成のどちらかにしか使わない一方、a-gen $\wedge$ q-gen は一つの問題－解答対を質問応答 と問題生成の双方に使うことに注意されたい。

## 4.2 実験条件

先述の入出力を扱うため、ニューラル機械翻訳に 用いられるフレームワークである OpenNMT[3] を用 いて深層学習モデルを構築した。

具体的には、モデルとしてLSTMを用い、SQuAD を用いた過去の研究および OpenNMT が推奨する設定を参考に、学習係数は 1.0、バッチサイズは 32、入出力次元は 500 、ドロップアウトは 0.3 とした。最適化関数として、Adadeltaを用いた。

## 4.3 評価の手法

既存の質問応答・問題生成の研究においては、 データセットごとに推奨される評価の手法があり、 たとえば SQuAD の場合は a-gen の場合 F1 スコアと EM(Exact match)、q-gen の場合 BLEU[5]を用いてい る。今回は a-gen と q-gen の評価について、SQuAD に倣い a-gen は EM とF1 スコア、q-gen は BLEU を 用いた。

## 5 結果

各条件の a-gen、q-gen の結果を表 3 に示す。表 3. 各条件で訓練したモデルの出力の評価

結果から、a-gen(EM) においては、a-gen のみの入力よりも a-gen $\wedge$ q-gen の入力のほうが大きい値を得 ており、JointQA による精度の向上が見られた。一方、a-gen(F1)においては、a-gen のみも a-gen $\wedge$ q-gen も同じ值を得た。出力の一例を付録中の表 5,6 に 示す。

また、q-gen に関して、過去の研究で Sachan ら [8] がデータセットとして SQuAD を用いて報告した值 を表 4 に示す。

表 4.SQuAD を用いた既存研究の q-gen の評価 [8]より引用

IR は編集距離を元にした生成アルゴリズム、MOSES は統計的機械翻訳に用いられるモデル、DirectIn は longest sub-sequence を問題として出力するモデル、 H\&S はあらかじめ設定されたルールベースで問題を多く生成し、ランキングするというモデルで ある。「Tang ら，2017」は GRUを用いたニューラル ネットワークを用いたモデルで、「Du ら，2017」は
LSTM を用いたニューラルネットワークを用いたモ デルである。

出力の例を付録の

## 6 考察

## 6.1 a-gen の評価の SQuAD との比較

a-gen に関して、a-gen のみでの訓練で 37.81 の EM、 0.7500 の F1 スコアを得た。また、a-gen に加え て q-gen の訓練をすることで 52.76 の EM、0.7500 の F1を得た。本研究で参考としているSQuAD の公式 サイトでは、コンペティションの形式で各モデルの EM と F1 スコアを載せるリーダーボードを公開し ている1)。そこでは末席である 63 位のモデル (匿名) でも、EM 53.698 を記録しており、当研究で得ら れた最大の EM である 52.76 を上回っている。一方 で、当研究で記録した F1 スコアの 75.00 に関して は、リーダーボードの 55 位と 56 位の間に位置して いる。なお、 57 位には、当研究でも実装した LSTM を含む、CNN モデルが大っている。

低いスコアを記録した一因として JAQKET が SQuAD に比べて新しく、探索がされていないデー タセットであるという以外にも、JAQKET が本来 20 の選択肢の中から正しい選択肢を選択する課題のた めのデータセットとしてリリースされたため、問題 から自由に解答を出力する形式のタスクとしては困難なことが考えられる。

## 6.2 q-gen の BLEU の低さ

q-gen に関して、本研究の BLEU を考察する。本研究では LSTM を用いているため、その他のハイ パーパラメータの影響はあるにせよ、表 4 に挙げた なかでのモデルでは、LSTM を用いて SQuAD を処理した Du らの実装により近いといえるだろう。Du らの結果 12.28 に比べ、本研究では q-genのみの訓練で 3.9、a-gen $\wedge$ q-gen の条件で 2.8 とそれを大きく 下回る結果となった。

原因として考えられるのは、一つは単にハイパー パラメータやモデルの選択に余地がある可能性であ る。今回の学習では、特に q-gen, a-gen $\vee$ q-gen, a-gen $\wedge$ q-gen の学習において過学習の傾向がある。より 適切に実装を行うことで、精度が改善する可能性が ある。

他にもデータセットの特徴が影響している可

能性がある。例えば SQuAD は英語で書かれた、 Wikipedia の一段落に基づいて作成された問題 - 解答対を含むデータセットである。対して JAQKET は 日本語で書かれた、あらかじめ存在したクイズ問題文に Wikipedia の全文を文書として与え、それが情報として十分であることが保証されていないデータ セットである。

## 6.3 a-gen $\vee$ q-gen における値の低さ

a-gen $\vee$ q-gen の入力条件について、単一のタスク を訓練したモデルや a-gen $\wedge$ q-gen を訓練したモデル よりも、各タスクにおいて低い数值を得ることがわ かった。

この研究において、a-gen $\vee$ q-gen は一つのデータ セットを半分に分け、片方を質問応答、もう片方を 問題生成のみに用いる入力である。つまり、質問応答だけに使われる問題と、問題生成だけに使われる 解答が存在することになる。一方、a-gen $\wedge$ q-gen は データセットに含まれるデータすべてを質問応答に も問題生成にも用いる入力である。つまり、すべて の問題・解答が、質問応答にも問題生成にも用いら れることになる。向上が a-gen $\wedge$ q-gen だけに見られ たのだとすれば、一つの問題－解答対の両方を学習 に用いることが必要になるということである。

JointQA による精度の向上のメカニズムは未だ議論されているが、一説には文書への attention 機構が より効果的に訓練されることが述べられている。本研究での a-gen $\vee$ q-gen で向上が起こらなかったのに は、ある一つの文書を質問応答・問題生成のどちら かにしか使わず、文書への attentionへの訓練を、質問応答と問題生成の両方で訓練しなかったことが一 つの原因として考えられる。

## 6.4 a-gen $\wedge$ q-gen における a-gen のみとの比較

a-gen $\wedge$ q-gen について、a-gen(EM) については 52.76、a-gen(F1)については 75.00 の値を得た。a-gen のみと比較して、F1 スコアは同程度のものを得 たが、EM については、q-gen の訓練を行うことで 37.81 から 52.76への向上を得た。q-genについては、 q-gen のみの訓練が 3.9 に対して、a-gen $\wedge$ q-gen は 2.8 を得たため、q-gen については向上を得られなかっ た。また、表 4 におけるDu らの結果はLSTMを用 いたモデルであるから、本研究で実装したものと近 いものであるが、それは SQuAD においては 12.28 の BLEU を記録しており、それに比べると低い值を得たことがわかった。これは SQuAD における q-gen のみの訓練をしたモデルの結果だが、これが本研究 と同じ LSTM を用いて実装されたものであることを 考えると、その他のハイパーパラメータの影響を無視すれば、この差はデータセットによるものだと考 えられる。

## 7 おわりに

今回の研究では JAQKET を用いて質問応答・問題生成、およびそれらの相互関係について踏み込 む研究を行った。今後の課題として、問題生成を SQuAD などの既存のデータセットを用いた研究と 同程度の精度で出力を得ること、単に正解データと の一致度だけでなく、問題生成の解答可能性や多様性を評価することなどが挙げられる。

## 参考文献

[1]Xinya Du, Junru Shao, and Claire Cardie. Learning to ask: Neural question generation for reading comprehension, 2017.

[2]Michael Heilman. Automatic Factual Question Generation from Text. PhD thesis, USA, 2011.

[3]Guillaume Klein, Yoon Kim, Yuntian Deng, Jean Senellart, and Alexander Rush. OpenNMT: Open-source toolkit for neural machine translation. In Proceedings of ACL 2017, System Demonstrations, pp. 67-72, Vancouver, Canada, July 2017. Association for Computational Linguistics.

[4]Philipp Koehn, Hieu Hoang, Alexandra Birch, Chris Callison-Burch, Marcello Federico, Nicola Bertoldi, Brooke Cowan, Wade Shen, Christine Moran, Richard Zens, Chris Dyer, Ondřej Bojar, Alexandra Constantin, and Evan Herbst. Moses: Open source toolkit for statistical machine translation. In Proceedings of the 45th Annual Meeting of the Association for Computational Linguistics Companion Volume Proceedings of the Demo and Poster Sessions, pp. 177-180, Prague, Czech Republic, June 2007. Association for Computational Linguistics.

[5]Kishore Papineni, Salim Roukos, Todd Ward, and Wei-Jing Zhu. Bleu: a method for automatic evaluation of machine translation. In Proceedings of the 40th Annual Meeting of the Association for Computational Linguistics, pp. 311-318, Philadelphia, Pennsylvania, USA, July 2002. Association for Computational Linguistics.

[6]Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. SQuAD: 100,000+ questions for machine comprehension of text. In Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pp. 2383-2392, Austin, Texas, November 2016. Association for Computational Linguistics.

[7]Alexander M. Rush, Sumit Chopra, and Jason Weston. A neural attention model for abstractive sentence summarization. In Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pp. 379-389, Lisbon, Portugal, September 2015. Association for Computational Linguistics.

[8]Mrinmaya Sachan and Eric Xing. Self-training for jointly learning to ask and answer questions. In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers), pp. 629-640, 2018.

[9]Linfeng Song, Zhiguo Wang, Wael Hamza, Yue Zhang, and Daniel Gildea. Leveraging context information for natural question generation. In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 2 (Short Papers), pp. 569-574, New Orleans, Louisiana, June 2018. Association for Computational Linguistics.

[10]Duyu Tang, Nan Duan, Tao Qin, Zhao Yan, and Ming Zhou. Question answering and question generation as dual tasks, 2017.

[11]Yi Yang, Wen-tau Yih, and Christopher Meek. WikiQA: A challenge dataset for open-domain question answering. In Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pp. 2013-2018, Lisbon,
Portugal, September 2015. Association for Computational Linguistics.

[12]鈴木正敏, 鈴木潤, 松田耕史, 西田京介, 井之上直也. JAQKET: クイズを題材にした日本語 QA データセッ トの構築. 言語処理学会第 26 回年次大会 (NLP2020), 2020.

## A 付録

## A. 1 質問応答・問題生成出力の例と正解データとの比較

各入力条件の出力結果と、目標となる正解データを表 5、表 6 に示す。

表 5. 質問応答の出力の例

 &  \\

表 6. 問題生成の出力の例

 &  & (空出力) &  &  &  \\


 竹下恭史朗 早稲田大学大学院情報生産システム研究科 tkstria@ruri.waseda.jp  