# 対話型質問応答における質問書き換えのためのターン強調

小堀智祥 小林哲則 林良彦
早稲田大学理工学術院
kobori@pcl.cs.waseda.jp

## 概要

質問応答を含む対話システムでは，対話内容に 沿った質問の解釈が重要である. 先行研究では, す べての対話履歴と質問を一つの繋がった文章として 入力し, 対話履歴に依存しない質問へ書き換えるこ とが行われているが，書き換えに関係のあるターン を考慮することが難しい，本研究では，対話中の質問応答における各ターンの重要度を推定し，その重要度に応じて強調した表現を用いて質問書き換えを 行う TurnRewrite モデルを提案する. 質問書き換え の上で重要なターンヘルールによるラベル付けを 行ない，各ターンの重要度を推定するターン強調モ デルを学習する. CANARD データセットを用いた 実験結果により，TurnRewrite モデルの有効性を確認 した.

## 1 はじめに

質問応答モデルの精度が向上し，与えられた文書 に関する単一の質問に答えるタスクは人間の性能を 超えるものも出てきている [1]. 近年，より現実に即 したタスクとして，対話型質問応答 (Conversational Question Answering: CQA) タスクと呼ばれる会話の 中で現れる質問に対する回答を生成するタスクが 提案されている.このタスクは質問内容の解釈が 対話履歴に依存するという点で，単一の質問に答 えるタスクと比較して難しい [2]. このタスクのサ ブタスクとして，対話履歴に依存して解釈の決ま る質問を対話履歴に依存しない質問 (以降，書き換 えられた質問) に書き換える質問書き換え (Question Rewriting) タスクが提案され，CANARD と呼ばれる データセットが構築されている [3].

CANARD におけるデータの例を図 1 に示す.こ の例において $Q_{i}, A_{i}$ はそれぞれ質問と回答のターン を表す. $Q_{1}$ は与えられた文書に対する最初の質問 であり， $Q_{2}$ 以降はそれ以前の対話に依存した質問 になっている. CANARDデータセットでは書き換

図 1 書き換えデータセットの例 [3]

えるべき質問 $Q_{i}$ と，それに先行するすべての対話履歴 $\left.\{Q_{j}, A_{j}\right.\}_{j<i}$ が与えられ, クラウドワーカーに よって対話履歴に依存しない形式に書き換えられた 質問（図 1右）が正解として付与されている.

このタスクに取り組んだ先行研究では, 事前学習済み言語モデル (Pretrained Language Model: PLM) に対話履歴と質問を 1 つの繋がった単語系列として 入力しているため，対話履歴に含まれるターンがそ れぞれ別の内容を持つ文章として区別する表現力が 低いことが考えられる. その結果, ターン単位のト ピック遷移をうまく学習することができず，複雑な 履歴参照が必要な質問の書き換えにおいて誤った エンティティの参照などが発生していると考えら れる。

そこで本研究では, 対話履歴に含まれるそれぞ れのターンの重要度を推定し，この重要度を用い て質問書き換えを行うことを提案する。既存の CANARD データセットには，対話履歴のターン毎 に質問書き換え上の重要度が付与されていないた め, 本研究ではルールによりターンへの重要度のラ ベル付けを行い，ターンの重要度を推定するターン 推定モデルを学習した.

## 2 関連研究

CQA タスクの代表的なデータセットとして，物語についての質問応答系列を収集した CoQA デー

タセット [4] や Wikipedia の記事について収集した $\mathrm{QuAC}$ データセット [5] が存在する。これらの CQA データセットの各データは，a.) 答えを探す根拠に なる文書, b.) 対話履歴, c.) 質問という 3 つの構成要素から成る. 対話履歴を考慮する場合，その解釈 が必要となる (History Modeling [2]) 。 また，質問応答システムへの入力文長の制限が問題となる [6]. これらの課題は, BERTやT5 といった近年の事前学習済み言語モデル (PLM) においても問題となる.

対話履歴の扱いに関する先行研究として，初期に は RNN やAttention 機構を用いたモデルが提案され ており $[4,7]$, またより対話履歴を重視したモデル としては，対話履歴内の前の質問に答えた際のモデ ル内部の潜在表現を次の質問に渡すモデル $[8,9,10]$ が提案されてきた. また別のアプローチとして, 対話履歴とそれに依存している質問から, 対話履歴に 依存しない質問を生成することで CQA タスクを一問一答形式の質問応答タスクに帰着させる研究があ る [3]. これらはモデルが解釈したユーザの質問意図をユーザにフィードバックでき，誤りをユーザが 認識しやすいという点と，単一の質問に答える精度 の高い質問応答システムやデータセットを利用でき る点で他のアプローチよりも優位である。

対話履歴に依存しない質問を生成するタスクを質問書き換え (Question Rewriting: QR) タスクといい,本研究ではこのタスクに取り組む。このタスクを代表するデータセットに CANARD データセット [3] がある.このデータセットを扱った先行研究では， RNN ベースのモデル $[3,11]$ や PLM を利用したモデ ル [12], 共参照解消に着目したモデル [13], CQA と $\mathrm{QR}$ タスクを同時に学習させるモデル [14] などが提案されている. 先行研究が対話履歴と質問を単語系列として処理するのに対し, 本研究では対話履歴に 含まれるそれぞれのターン間の関係性を学習するた めのアーキテクチャを導入する，すなわち，ターン 単位で履歴を扱う点がこれらの先行研究と異なる。

## 3 提案手法: TurnRewrite モデル

本研究が提案する TurnRewrite モデルの構成図を 図 2 に示す. 本モデルは, 複雑な履歴参照が必要な 質問の書き換えに対して，対話履歴に含まれるター ンごとの潜在表現を利用してターン単位の重要度を 考慮することで書き換え精度向上を図る. 具体的に は, 単語単位による処理に加え履歴ターン単位で対話履歴の重要度を評価し，その結果を書き換え質問生成に利用する。

図 2 TurnRewrite モデル構成図

## 3.1 人工的なデータセットの構築

TurnRewrite モデルでは，書き換えられた質問を生成するために必要なターンをすべてのターンから 選択し強調することが必要であるが, 既存のデータ セットではターン毎に質問を書き換える上での重要度でのラベル付けが行われていない。そこで本研究 では，事前に CANARD データセットに含まれる対話履歴と書き換え前後の質問を用いるルールベース により，対話履歴の各ターンに対してそのターンが 書き換え質問の生成において必要か不要かのラベル 付け (必要:1, 不要:0)を行った.

手順としては，まず，CQAデータセットに含まれ る書き換え前と書き換えた質問を比較し，書き換え に使われた単語の集合を求め，事前に決められたス トップワードを取り除くことで対話履歴から導入さ れた単語を求めた. 次に, これらの単語が対話履歴 のどのターンから取り出されたものなのかを割り当 てる. 対話履歴を最も質問に近いターンを調べ，上記の手段により求めた単語が 1 つでもそのターン に含まれていれば，ターンと単語を関連付けてター ンに必要とラベル付けした. 続くターンを調べる際 は，それまで調べたターンと関連付けられた単語を 除く，書き換えで導入された単語がターンに含まれ るかを調べた。この手順を具体例で示したものを付録 $\mathrm{A}$ に示す.

## 3.2 ターン強調モデル

ターン強調モデルの構成を図 3 に示す. ターン 強調モデルは対話履歴と書き換え前の質問を入力 として対話ターンごとに書き換える上での重要度 を出力する．まず，対話履歴のそれぞれのターンの

図 3 ターン強調モデル構成図

文 $h_{1}, \ldots, h_{k}$ と，書き換え前の質問 $Q_{\text {raw }}$ について，文エンコーダを利用して文表現を取得する．各対話 ターンの表現を $h^{\prime}{ }_{i}$ と表す.このべクトル表現に，履歴を扱う上で重要と考えられるターンの番号を表 す学習可能ベクトルを連結し, 履歴ターンのベクト ルを生成する．続いて，対話履歴の前後に質問を付 け足した $\left[Q^{\prime}{ }_{\text {raw }}, h^{\prime}{ }_{1}, \ldots, h^{\prime}{ }_{k}, Q^{\prime}{ }_{\text {raw }}\right]$ を bi-GRU を経由させることでターン間の関係性を取り込んだ内部表現を作る. 最後にその表現を多層パーセプトロン に入力することで，それぞれの履歴ターンに対して $[0,1]$ 範囲の重要度の予測を出力する.

## 3.3 質問書き換えモデル

質問書き換えモデルの構成を図 4 に示す. 本モデ ルは，書き換え前の質問，対話履歴，履歴ターン毎 の必要度ラベルを入力として，対話履歴の文脈なし に質問意図が理解できる質問を出力する.

図 4 質問書き換えモデル構成図

本モデルは，書き換え前の質問と対話履歴を並 べて 1 つの文章として PLM に入力してファイン チューニングするが，モデルの入力となる単語べク トルに対話履歴の重要度に応じたべクトルを加算し ている点が通常の PLMを利用するモデルとは異な
る.この手法は，入力のうち重要な部分にマーカー を引く様子をモデル化した [15] の手法を参照してい る. 加算するべクトル turn_importance_emb はター ン強調モデルが単語の属するターンに対して出力 する重要度である importance $\left(h_{i}\right)$ と学習可能べクト ル $I, U$ を用いて式 1 で計算される. すなわち，同じ ターンに属する単語のべクトルそれぞれに対して常 に一定のベクトルを足し合わせている。なお，I と $U$ はそれぞれ最も重要・非重要なターンであるを示 す学習可能なべクトルである.

turn_importance_emb $\left(h_{i}\right)$

$=$ importance $\left(h_{i}\right) \times I+\left(1-\right.$ importance $\left.\left(h_{i}\right)\right) \times U$

## 3.4 学習過程

TurnRewrite モデルの学習は 2 ステップで行っ た.まず 3.1 節で作成したデータセットを利用し てターン強調モデルがルールで割り当てられたラ ベルを出力するように Binary Cross Entropy ロスで 学習させた. この際，ラベルに不均衡があったた め，バッチ内のラベルの出現回数の逆数の重みをロ スに掛け正規化した。続いて，ターン強調モデル と質問書き換えモデルを接続し，質問書き換えモ デルを teacher forcing しながら次トークンを予測さ せる Cross Entropy ロスを最小化することで提案の TurnRewrite モデル全体を学習させた.

## 4 実験

## 4.1 実験設定

CANARD データセット [3] (統計情報を付録 B に 示す)を用いて質問書き換えの評価実験を行った。対話トピック，書き換えるべき質問，先行する対話履歴を大力とし，対話履歴を見ないで解釈が定まる 質問を出力することがタスクとなる。実験において は文エンコーダとして SimCSE [16]を用いた。また 質問書き換えモデルとして関連研究 [12] で最も良い 精度を達成した PLM である T5 (T5-base) を用いた。 SimCSE および T5 は Hugging Face Transformers ライ ブラリによる実装を利用し，bi-GRU や実験環境は Pytorch を用いて実装した。学習時の学習率，ター ン強調モデルにおける層の深さや幅はグリッドサー チでパラメタチューニングを行い，オプティマイザ は AdamWを利用した。

## 4.2 実験結果

BLEU スコアによる各モデルの書き換え精度の評価結果を表 1 に示す.ここで，Human は [3] にて報告されたクラウドワーカーが書き換えを行った際 の BLEU スコアである. upperbound は, ターン強調 モデルの gold データを利用した場合を示す.すな わち, ターン強調モデルが正解するという設定であ り, TurnRewrite モデルの書き換え精度の上限を与え る.なお，Human 以外のそれぞれのスコアは seed を変えて 3 回平均を取っている。

表 1 の $5^{1}{ }^{1}$ と TurnRewrite モデルの BLEU 値の比較からターン強調の効果が確認できる. TurnRewrite モデルと upperbound の比較からは, 性能向上の余地 があることが示唆される. 基本的にはターン強調モ デルの改善により性能向上が可能であるが，ターン の必要性に関するラベルの品質も問題となる. すな わち今回利用したデータセットである CANARD で は，書き換えられた質問として正解が 1 例しか与え られておらず，クラウドワーカーによる誤りや解釈 の違いが存在すると考えられる。例えば，[3]によ ると $10 \%$ の書き換え質問は履歴参照が残っている.

## 4.3 質問形式ごとの効果

CANARDデータセットにおける質問を大きく「列挙型」と「置換型」に分類し ${ }^{2)}$ ，それぞれの質問種別のデータをもとにモデルを個別に学習させ，複雑 な履歴参照が必要な列挙型質問の書き換えにおける ターン強調モデルの有効性について評価した.

それぞれの質問形式の例を表 2 に示す. 列挙型 は，質問書き換えにおいて対話履歴におけるエン ティティの列挙が必要な質問群である. 本研究で は，"any other"などの特定の語句を含むものを列挙型として扱った. また，列挙型意外の質問を置換型 に分類した. これらの質問の多くは代名詞の参照解

1）[12] の報告では BLEU が 58.1 と報告されているが，実験設定が明記されておらず再現することができなかった.

2) Train/Dev/Test のデータ数はデータ数が最も小さい列挙型 に揃えた。結果，Train, Dev, Test はそれぞれ 5595, 631, 1060 質問からなるデータセットになった.表 2 列挙型，置換型質問の例

質問形式 元質問 $\rightarrow$ 書き換え質問

列挙型 Any others?

$\rightarrow$ Any other \{songs were featured on films besides "Dear Lover", "Walking After You" for the ...\}

置換型 Who did they play in the super bowl? $\rightarrow$ Who did $\{$ the Colts $\}$ play in the super bowl?

表 3 質問種別ごとのモデル性能 (BLEU スコア)

決を必要とする. 4.2 節と同じモデルで学習させた 結果を表 3 に示す. 結果から，より履歴参照が必要 である列挙型ではべースラインである T5を利用し た場合に比べてターン強調モデルを利用した場合の 方が性能が向上することがわかった。これは複雑な 参照を含むデータについては履歴ターンの強調が有効であることを示唆している。一方，置換型の T5 と upperbound を比較すると，置換型の質問種別に対 しては T5 のみで高い精度を出しており，ターン強調モデルによる履歴ターンの強調があまり効果を持 たないことが示された.これは置換型は列挙型に比 べ 1 ターンに含まれる人名などを参照することで 質問を書き換えることができ，対話履歴に含まれる ターンの関係性を考慮したターン強調を行う有効性 が低いためであると考えられる。また履歴強調モデ ルを学習させた TurnRewrite と弱教師データセット を利用した upperbound を比較すると，ターンの誤選択による性能劣化が存在することがわかった. これ は，履歴ターンの強調よりもターンの誤選択による 性能劣化が大きいことを示唆している.

## 5 まとめ

本研究では $\mathrm{CQA}$ タスクのサブタスクである $\mathrm{QR}$ タスクに対してターン単位で履歴から重要なターン を強調することによる書き換え精度向上を目指し た. ターン強調モデルの学習を行うため, 履歴のそ れぞれに対して重要であるか否かのラベル付けを ルールで行ったデータセットを作成した. 評価実験 の結果から，ターン強調をする機構がないモデルに 比較して書き換え精度の向上が見られたことから， ターン強調の有効性が確認できた。

## 参考文献

[1] Hariom A. Pandya and Brijesh S. Bhatt. Question answering survey: Directions, challenges, datasets, evaluation matrices. CoRR, Vol. abs/2112.03572, , 2021.

[2] Gupta Somil, Rawat Bhanu Pratap Singh, and Yu Hong. Conversational machine comprehension: a literature review. In Proceedings of the 28th International Conference on Computational Linguistics, pp. 2739-2753, 2020.

[3] Ahmed Elgohary, Denis Peskov, and Jordan Boyd-Graber. Can you unpack that? learning to rewrite questions-incontext. In Empirical Methods in Natural Language Processing, 2019.

[4] Siva Reddy, Danqi Chen, and Christopher Manning. Coqa: A conversational question answering challenge. Transactions of the Association for Computational Linguistics, Vol. 7, No. 0, pp. 249-266, 2019.

[5] Choi Eunsol, He He, Iyyer Mohit, Yatskar Mark, Yih Wen-tau, Choi Yejin, Liang Percy, and Zettlemoyer Luke. QuAC: Question answering in context. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pp. 2174-2184, 2018.

[6] Zhao Jing, Bao Junwei, Wang Yifan, Zhou Yongwei, Wu Youzheng, He Xiaodong, and Zhou Bowen. RoR: Read-over-read for long document machine reading comprehension. In Findings of the Association for Computational Linguistics: EMNLP 2021, pp. 1862-1872, 2021.

[7] Chenguang Zhu, Michael Zeng, and Xuedong Huang. Sdnet: Contextualized attention-based deep network for conversational question answering. ArXiv, Vol. abs/1812.03593, , 2018.

[8] Hsin-Yuan Huang, Eunsol Choi, and Wen tau Yih. Flowqa: Grasping flow in history for conversational machine comprehension. ArXiv, Vol. abs/1810.06683, , 2018.

[9] Yeh Yi-Ting and Chen Yun-Nung. FlowDelta: Modeling flow information gain in reasoning for conversational machine comprehension. In Proceedings of the 2nd Workshop on Machine Reading for Question Answering, pp. 86-90 url =, 2019.

[10] Yu Chen, Lingfei Wu, and Mohammed J. Zaki. Graphflow: Exploiting conversation flow with graph neural networks for conversational machine comprehension. In Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence, IJCAI-20, pp. 12301236, 2020.

[11] Vakulenko Svitlana, Longpre Shayne, Tu Zhucheng, and Anantha Raviteja. Question rewriting for conversational question answering. p. 355-363. Association for Computing Machinery, 2021.

[12] Sheng-Chieh Lin, Jheng-Hong Yang, Rodrigo Nogueira, Ming-Feng Tsai, Chuan-Ju Wang, and Jimmy Lin. Conversational question reformulation via sequence-to-sequence architectures and pretrained language models. CoRR, Vol. abs/2004.01909, , 2020.

[13] Tseng Bo-Hsiang, Bhargava Shruti, Lu Jiarui, Moniz Joel Ruben Antony, Piraviperumal Dhivya, Li Lin, and
Yu Hong. CREAD: Combined resolution of ellipses and anaphora in dialogues. In Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 3390-3406. Association for Computational Linguistics, 2021.

[14] Kim Gangwoo, Kim Hyunjae, Park Jungsoo, and Kang Jaewoo. Learn to resolve conversational dependency: A consistency training framework for conversational question answering. In Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 6130-6141, 2021.

[15] Qu Chen, Yang Liu, Qiu Minghui, Croft W. Bruce, Zhang Yongfeng, and Iyyer Mohit. Bert with history answer embedding for conversational question answering. p. 1133-1136, 2019.

[16] Gao Tianyu, Yao Xingcheng, and Chen Danqi. SimCSE: Simple contrastive learning of sentence embeddings. In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, pp. 68946910. Association for Computational Linguistics, 2021.

## A 対話履歴のラベル付けルール

対話履歴のラベル付けの手法を図 5 を用いて説明 する。

図 5 ラベル付けの手法

この例では, 図上部に示すようにターン 1 から ターン 3 までの 3 ターンが会話履歴として与えら れ，図下部に示すようにターン4の質問を書き換え る場面を想定している．まず，ラベル付けのために データセットから4ターン目を人手で書き換えられ た質問を用意する (図黄色背景). 次に，4ターン目 の書き換え前後の単語を比べ，書き換えられた質問 に増えた単語を求める (図の例では”daffy”など，中央青枠に示した). ここで, "at" や"the" といった単語も増えているが，これらはストップワードのため 除外されている，続いて，これらの単語を含む対話履歴を「書き換えに必要」とラベル付けしていく が，このとき最も新しいターン（例では 3 ターン目 の"first appeared ..."）から調べる. 例では最も新しい ターン 3 をまず調べ，\{”Porky", "Duck", "Hunt”\}が含 まれるため，必要とラベルされる．続いて 2 ター ン目も同様に調べるが，この際には 3 ターン目に 含まれていた\{"Porky", "Duck", "Hunt”\}以外の単語と マッチングを行う．ここでも\{”Daffy”\}が含まれるた め必要とラベルされる. 1 ターン目も同様に調べる と，確かに”Daffy"や”Duck"が含まれるが，これらは ターン 2, 3 でマッチングされているため，ここでは マッチングが起こらず，ターン 1 は不要とラベルさ れる。

## B CANARD データの統計

CANARD データセットは QuAC データセットの Dev セットと一部の Train セットを利用して作成さ れている. CANARDデータセットの各種統計を表 4 に示す.

表 4 CANARDデータセットの統計

特に，書き換えられた質問の単語数と書き換え前 の質問の単語数の比率を図 6 に示す.

図 6 CANARD Train データセットにおける書き換え前後 の単語数の比率

図 6 より，多くの書き換えた質問の単語長は書き 換え前の単語長の 2 倍を下回るが，それ以上になる 質問書き換えも一定数存在することが確認できる.
 小堀智祥 小林哲則 林良彦 早稲田大学理工学術院 kobori@pcl.cs.waseda.jp  