# 知識源との一対多関係を有する対話コーパスによる発話生成

金田龍平 ${ }^{1}$ 芳賀大地 ${ }^{1}$ 杉山弘晃 ${ }^{2}$ 酒造正樹 1 前田英作 ${ }^{1}$
1 東京電機大学システムデザイン工学部
${ }^{2} \mathrm{NTT}$ コミュニケーション科学基礎研究所
\{18aj045, 18aj110\}@dendai.ac.jp
h.sugi@ieee.org \{shuzo, maeda.e\}@mail.dendai.ac.jp

## 概要

End-to-end 発話生成において，発話文脈に加えて外部知識を活用することにより，知識を反映した発話 を生成できることが知られている．外部知識に基づ く発話生成モデルに用いられる学習コーパスとし て，Wizard-of- wikipedia のような，知識を参照しな がらユーザに対話させ，その際の発話と知識の対を 収集する枠組みが提案されている。しかし，ある文脈において利用可能な知識は一意とは限らず，実際 に利用された知識以外にも利用可能な知識は存在す る可能性がある．本研究では，旅行代理店における 客と店員の対話を題材として対話データを収集し，基準対話データセットとした. 基準対話データセッ トの一部に対し, 発話文脈から利用可能な外部知識 にリンクを付与することで，マルチラベル対話デー タセットを構築した. その結果付与されたリンクの 総数は，基準対話データセット 1 に対し，マルチラ ベル対話データセットが 5.8 であった。このような マルチラベル対話データを知識選択モデルの評価に 用いたところ，知識選択モデルの適切な評価には発話と知識が一対多となるデータセットが良いことが わかった. また，発話生成モデルの生成に用いたと ころ，多様で適切な応答が可能になることが示唆さ れた.

## 1 はじめに

対話システムにおける発話生成には，対話履歴など の文脈情報に加えて外部知識を利用する手法が提案 されている $[1,2,3]$. 発話生成部の学習は, 対話履歴, 知識情報, さらにそれらを利用して生成される であろう後続発話からなるコーパスが必要になる.

そうした対話コーパスとして，児玉らによる映画推薦タスクにおける対話コーパスがある [4]. この コーパスでは，ある映画における監督名やキャスト名などの構造化された知識に加え，あらすじやレ ビュー情報といった構造化されていない知識も外部知識源として利用している。そして，これらの外部知識を用いた発話生成を行い，20 ターン以上の約 2,500 件からなる対話データが収集されている.

児玉らの作成したコーパスでは，発話に付与され た知識ラベルは，その発話を生成するのに使われた ものとして知識候補の中から一意に定まる。すなわ ち, 児玉らの作成したコーパスにおける発話と知識源の関係は，「先行発話と使用した知識」である。 しかし，先行発話に対する応答が固定されていなけ れば，利用可能な知識は複数存在するはずであり，「先行発話と利用可能な知識」の関係も利用可能に なると期待できる。したがって，このようなコーパ スを用いて，知識を選択するモデルを評価すること は適切なラベルで評価していないことになる。ま た，利用可能な知識が少なければ，生成できる応答文の多様性も低下してしまう。

そこで，2021 年に開催された対話ロボットコンぺ ティション1)のタスクである旅行代理店対話に着目 し，外部知識に基づく対話コーパスを作成した. こ のコーパスは，クラウドソーシングによって作成し た基準対話データセット，応答文生成に利用可能な 知識に着目して作成されたマルチラベル対話デー タセットなどによって構成される. 作成した旅行代理店対話コーパスの概要図と統計情報を, 図 1 と表 1 にそれぞれ示す.マルチラベル対話データを用い た実験の結果，知識選択モデルを適切に評価するに は発話と知識が一対多の関係となる評価データが 良いことと，このようなデータセットを用いること で，多様かつ適切な応答が可能になることが示唆さ れた.

1) https://sites.google.com/view/crobotcompetition/home

図 1 旅行代理店対話コーパスの概略図

表 1 旅行代理店対話コーパスの統計情報

## 2 関連研究

まず，日本語の対話コーパスに関する研究として，稲葉らの旅行代理店対話コーパス [5] や田中らの ユーザの曖昧な要求に対して適切な応答をするため の対話コーパス [6] などがある。稲葉らは，旅行代理店勤務経験者 5 名と 7 歳〜 72 歳の男女 55 名によ る旅行代理店対話から、音声データやテキストデー タなどを収集した。田中らは，タスク指向型対話に おいて，ユーザが曖昧な要求をしてきたとしても対応できるように，旅行案内のドメインで対話データ を収集した。

また，外部知識を用いた対話データとして Wizardof-wikipedia [7]がある。これは， wikipediaを直接検索し，それによって得られた情報を用いて対話を行 うことで外部知識と対話がセットになったデータ セットを作成した. 質問分類タスクに関する研究と して，情報検索（Information Retriever）の分野では， クエリと知識を入力とすることで分類問題を解く手法が提案されている [8]. この手法では，まず，知識候補をコーパス全体から BM25 [9] に従って数千程度に絞りこむ。そして，クエリと知識候補を入力と してクエリと知識候補の類似度を BERT に予測させ ることで，知識候補をリランキングし，最終的に回答生成モジュールに渡す知識を決定する。

## 3 旅行代理店対話コーパスの構築

図 2 知識情報の概要図

表 2 知識情報の統計情報量

## 3.1 基準対話データセット

クラウドソーシングを活用することで，東京と大阪 の観光地 441 件を対象に，観光地に関する対話を合計で約 3,000 対話収集した．観光地には，事前に 12 種類の知識情報が与えられている。知識情報は，名称・概要・所在地・営業時間・アクセス・駐車場・料金・レビュー1～ 5 といった 12 のカテゴリで構成 される. 名称・概要・所在地などの基礎情報はじゃ らん ${ }^{2}$ からスクレイピングを行い，レビュー情報に ついては Google Map $\mathrm{API}^{3}$ を用いて取得した. 概要図を図 2 に示し，統計情報は表 2 に示す. クラウド ワーカー（以下，ワーカー）は，店員の発話と客の 発話をそれぞれ 7 発話作成する（以下，店発話，客発話).このとき, 店発話には上記で示した知識情報をなるべく用いて発話を作成してもらった。ま た，使用できる知識情報源は最大で 2 つとし，相槌 などの知識情報を使用しない発話には，知識を使用 しなかったという意味で none ラベルを付与した.具体的な作業手順と作業画面は，付録 A.1，付録 A. 2 にて示す.

これらの作業手順に従い，1つの観光地に対して，複数人のワーカーが作成することで合計 2,971 対話収集することが出来た.


} & \multirow{5}{*}{} &  & 全国の隠れた名産品を扱っているんです。 \\

図 3 外部知識を用いて生成した応答文の一例

## 3.2 マルチラベル対話データセット

応答文生成に利用できる知識は，発話と知識が「先行発話と利用可能な知識」という関係においては,複数存在すると考えられる. しかし, 基準対話で は，最大二つの知識を用いて応答文を作成してい る.したがって，ある発話に対して利用可能な知識 は，最大二つまでとなってしまい，他の知識は利用できない知識ということになる。この利用でき ない知識は，本来「利用していない知識」であって 「利用できない知識」ではない. そこで，400 発話対 （店発話十客発話）を用いてアノテーションを行っ た. アノテーションの対象としたデータは，基準対話データセットから 400 発話対を抽出し，それぞれ に知識を付与した形へ整えたものである．ラベル は，ある発話対から次の応答文を生成する際に，付与された知識が利用可能かどうかを意味する.

マルチラベル対話データセットを作成する際に，単に整合性が取れているかだけではなく以下の点に も着目してアノテーションを実施した.
- 機械が対象の知識を用いて適切な応答文に変換 できるか
- 客発話が相槌のような場合は知識におすすめポ イントが入っているか

・知識の内容がマイナスな内容ではないか

また，生成モデルに渡す知識情報が長くなると，モ デルが知識情報を生成文に反映させることが難しく なると考え，概要とレビュー情報に関しては知識情

図 4 基準対話データセットとマルチラベル対話データ セットそれぞれにおいて，12 種類の各知識源と関連付け られた発話例の総数.

報を句点で区切る処理を行った. この前処理を施し たものに対してもアノテーションをしたが，本稿で は発話と知識情報の関係性に着目しているため，詳細は付録 A. 3 にて述べる. アノテーションを実施し た結果，利用可能な知識がどの程度増加したかを図 4 に示す. 基準対話データセットの分布とマルチラ ベル対話データセットの分布を比較すると，多くの 知識源が利用可能であることが分かる. すなわち，基準対話データセットでは，正解となる知識以外は 利用できない知識となってしまうが，実際は利用で きる知識が多く含まれていることを示している.

## 4 実験

## 4.1 実験概要

対話システムでは，外部知識を用いた生成を行う場合に，知識候補から最適な知識を選択する必要があ

る.そこで, BERTを用いて利用可能な知識情報を 選択し, Transformer ベースの大規模対話モデル（以下，hobbyist）で，知識情報を用いた応答生成を行う 対話システムを構築した. BERT と hobbyist を学習 する際に，基準対話データセットを用いた。また， hobbyist は，NTTコミュニケーションシステム基礎科学研究所が構築した [10].

本実験では，知識選択モデルの評価にマルチラベ ル対話データセットを利用した場合に，基準対話 データセットと比較してどのように変化するか確認 した. また, 先行発話に対する応答文を作成する際 に, 利用した知識から利用可能な知識として用いる ことのできる知識数を増やすことで，文脈として正 しくかつ多様性のある生成が可能であるかも確認 した.

## 4.2 実験設定

Laboro 社の提供している日本語版 BERT の事前学習済みモデル4)を用いた． BERT に用いる学習データ は，基準対話データセットから以下の手順に従って 作成した。

1. 対話データから発話対と知識情報を時系列に 抽出（ただし，知識を使用していない発話対は 除く)

2. 時刻 $\mathrm{t}$ の店発話と客発話に，12 ある知識情報の うち 1つを結合

3. 店発話, 客発話, 知識情報の間にセパレーショ ントークン（[SEP]）を挿入

4. 正解ラベルは, 時刻 $\mathrm{t}+1$ の店発話作成に使用し た知識情報であれば 0 を，そうでない知識情報 であれば 1 を付与

また, 評価時には上記手順によって作成された学習データを 8:2:2 = train:validation:test と分割したもの と, マルチラベル対話データセットから上記手順に 従って評価データを作成し,これを $1: 1=$ validation:test となるように分割したものを用いた. 基準対話デー タセットから作成した test データをシングル test と し, マルチラベル対話データセットから作成した test データをマルチ test とする. 評価指標には正解率を用い，発話対に対して適切な知識を選択するこ とが出来れば正解となる.


## 4.3 実験結果

まず，BERT を用いた知識選択の結果を示す. 学習 したモデルの評価結果はシングル test が 0.46 , マル チ test が 0.90 であった. 本実験では，ある発話対に 対して適切な知識を選択することが出来れば正解と なる. したがって，マルチラベルであるマルチ test に対する精度がシングルラベルであるシングル test と比較して高いのは妥当である。

次に，シングル test とマルチ test の両方を用いて hobbyist による発話生成を行った. 生成文の一例を 図 3 に示す.構築したマルチラベル対話データは人間が，利用可能であると判断したラベルが付与され ている. 図 3 にあるように，人が利用可能と判断し たものであっても, 生成モデルはすべて文脈とし て正しく，知識を反映した生成をしている結果と なった.

## 4.4 考察

BERT の最適な知識選択において，正解率が 0.46 か ら 0.90 に上がったことから，シングル test で誤って いると判断された知識は，実際には利用できる知識 であるということであり，既存手法における使用し た知識という観点での最適な知識では過度に厳しい 評価を行っていることが考えられる。また，実際に hobbyist が生成した発話文から, 複数の利用可能な 知識を用いて発話を複数生成し，その中から適切な 発話をリンランキングなどの処理によって最終的 な発話を生成するような手法に, マルチラベル対話 データセットのような複数の知識が可能であるデー タセットを用いることで, 多様かつ適切な発話が可能になることが考えられる.

## 5 おわりに

本稿では，発話対と知識源が一対一となる基準対話 データセットを作成した. このデータセットを分析 したところ，発話対と知識源の関係が，一対多が望 ましいことが明らかになった. そこで，発話対と知識源が一対多となるマルチラベル対話データセッ トを作成し，これらを用いて実験を行った。実験で は，BERTを用いた知識情報の選択と，hobbyistを用 いた発話生成を行った. その結果, 発話対に対する 知識源が複数存在データセットを用いることで, 多様で且つ文脈情報を考慮した発話生成が可能となる ことが示唆された.

## 謝辞

本研究は JSPS 新学術研究 JP19H05693 の助成を受 けた。

## 参考文献

[1] Pavlos Vougiouklis, Jonathon Hare, and Elena Simperl. A neural network approach for Knowledge-Driven response generation. In Proceedings of COLING 2016, the 26th International Conference on Computational Linguistics: Technical Papers, pp. 3370-3380, Osaka, Japan, December 2016. The COLING 2016 Organizing Committee.

[2] Sixing Wu, Minghui Wang, Dawei Zhang, Yang Zhou, Ying Li, and Zhonghai Wu. Knowledge-aware dialogue generation via hierarchical infobox accessing and infoboxdialogue interaction graph network. In Proceedings of the Thirtieth International Joint Conference on Artificial Intelligence, California, August 2021. International Joint Conferences on Artificial Intelligence Organization.

[3] Sixing Wu, Ying Li, Dawei Zhang, Yang Zhou, and Zhonghai Wu. TopicKA: Generating commonsense knowledgeaware dialogue responses towards the recommended topic fact. In Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence, California, July 2020. International Joint Conferences on Artificial Intelligence Organization.

[4] 児玉貴志, 田中リベカ, 黒橋禎夫. 外部知識に基づく 発話生成に向けた日本語映画推薦対話データセット の構築. 言語処理学会第 27 回年次大会, 2021 .

[5] 稲葉通将, 東中竜一郎, 千葉祐弥, 駒谷和範, 宮尾祐介, 長井隆行. 多様な年代の話者による旅行代理店 タスク対話コーパスの収集と分析. 人工知能学会研究会資料 言語・音声理解と対話処理研究会, Vol. 93, pp. 192-197, 2021.

[6] 田中翔平, 吉野幸一郎, 須藤克仁, 中村哲. 曖昧な要求 と気の利いた応答を含む対話コーパスの収集と分類. 言語処理学会第 27 回年次大会, 2021.

[7] Emily Dinan, Stephen Roller, Kurt Shuster, Angela Fan, Michael Auli, and Jason Weston. Wizard of wikipedia: Knowledge-powered conversational agents. In International Conference on Learning Representations, 2019.

[8] Rodrigo Nogueira and Kyunghyun Cho. Passage reranking with BERT. arXiv [cs.IR], January 2019.

[9] Stephen Robertson and Hugo Zaragoza. The probabilistic relevance framework: BM25 and beyond. Foundations and Trends in Information Retrieval, Vol. 3, No. 4, pp. 333-389, 2009.

[10] Hiroaki Sugiyama, Masahiro Mizukami, Tsunehiro Arimoto, Hiromi Narimatsu, Yuya Chiba, Hideharu Nakajima, and Toyomi Meguro. Empirical analysis of training strategies of transformer-based japanese chit-chat systems. September 2021.

## A 付録

## A. 1 対話収集の教示文

対話データ収集のために，ワーカーに示した作業手順と，注意事項を図 5 に示す.

1. 作業について

1.1人で店員と客の二役をこなして対話文を作文

2.「名称」〜「料金」の情報を確認.

3. 各7ターンの対話（店7発話, 客7発話の合計14発話）

4. 対象の観光地をどのような「観点」に沿ってお勧めするか選択.

5. 店員の発話は, 可能な限り与えられた情報を用いて作成.

6. 利用した知識は「利用知識」に記載し，最大で2つまで選択。

2. 注意事項

1. 対話中，客は1回は質問とそれに対する回答を行う。

2. 対話中, 店員は1回は客の興味や経験を尋ね，より客に合ったお勧めをできるよう にする。

3. 店員の発話は, 自身の知識や別途検索した結果ではなく, 与えられた情報に基づ いて発話を作成する。

4. 概要などの与えられた情報は，あくまで参考にしてコピーしない.

5. 発話数が7ターンになっているか確認する.

6. 観点を選択しているか確認する.

図 5 具体的な作業手順と注意事項

## A. 2 対話収集時の作業画面

対話コーパスを作成するにあたって，クラウドワーカーに依頼した作業ファイルを図 6 に示す。ワーカーは 指示書に従って，該当の Excel ファイルに対して，記入する形とした。

図 6 実際の作業画面

## A. 3 文区切りを施したマルチラベル対話データセット

使用した知識情報は，本文で示した通り 12 種類存在する.しかし，概要やレビュー情報にはテキスト長がと ても長いものが含まれる。深層学習モデルには，扱えるトークン長があり，発話対に対して知識情報が極端 に長いと知識の選択においても，発話生成においても，偏った学習を行ってしまうことが考えられる。した がって，概要とレビュー情報に関しては，句点で文を区切り，区切った後の一文で一つの知識情報として 扱った対話データも作成した。これにより，概要とレビュー情報の知識情報が約 1,200 件から約 3,200 件に増加した.
 金田龍平 ${ }^{1}$ 芳賀大地 ${ }^{1}$ 杉山弘晃 ${ }^{2}$ 酒造正樹 1 前田英作 ${ }^{1}$ 1 東京電機大学システムデザイン工学部 ${ }^{2} \mathrm{NTT}$ コミュニケーション科学基礎研究所 \{18aj045, 18aj110\}@dendai.ac.jp h.sugi@ieee.org \{shuzo, maeda.e\}@mail.dendai.ac.jp  