# 過去の対話セッションを考慮した雑談対話システム

高﨑 環 1 佐藤 翔悦 ${ }^{2}$ 吉永 直樹 2 豊田 正史 ${ }^{2}$
1 東京大学大学院 情報理工学系研究科 2 東京大学 生産技術研究所
\{takasa-m, shoetsu, ynaga, toyoda\}@tkl.iis.u-tokyo.ac.jp

## 概要

スマートスピーカーの普及が進み，対話システム とユーザとの雑談が継続的に行われるようになり つつある.そのような環境下では，これまでに行っ た全ての対話の内容を踏まえて，ユーザの知識や情報を把握した上で応答を行うことが望ましい. しか し，現状の深層学習に基づく雑談応答生成では，モ デルの系列長に制限があるため，限られた対話履歴 しか入力することができない，本研究では，膨大な 過去の対話履歴の中から直前の対話履歴と関連度の 高い対話や単語を離散的に選択し，入力に加えるこ との有効性を検証する．実験では，Twitter 上の対話 ログを用いて GPT-2をファインチューニングする際 に，選択された過去の対話履歴を入力に追加して訓練を行い，未知ユーザ同士の対話において提案シス テムの有効性を評価する。

## 1 はじめに

スマートスピーカーの普及が進み，雑談対話シス テムとの会話を継続的に行う機会が増えつつある。 その際に，システムは同一ユーザとの過去の対話の 内容を踏まえ，過去の類似した話題に関する情報 や，個人特有の知識などを考慮した応答を生成する ことが望ましい，具体的には，過去の対話内容を踏 まえて話題を展開したり（図 1), 過去に話した内容 を繰り返さないような応答を生成することが重要で あると考えられる。また，言葉遣いや特有の話題な ど，ユーザの嗜好に即した対話を展開することが期待される。

雑談対話システムにおいて，過去の対話履歴を活用する研究は広く行われてきた. SNS 上の大規模対話ログを模倣するように学習させる深層学習モデ ルが登場した当初は，直前の 1 文のみを発話履歴と して入力する手法 [1] が提案された. その後, 複数文の発話履歴を入力する研究 [2] が登場し，より効果的な学習をするために, 進行中の対話セッション

図 1 過去の対話セッションに手がかりを得た応答生成

の履歴について, 複数の発話をトークン単位・発話単位の 2 階層に分けて処理を行う研究 [3] が提案さ れた。しかし，アーキテクチャの階層化にも限度は あり，対話履歴が膨大な場合は全てを処理すること は難しい. また，これまでの研究では，現在の対話 セッションを超えるような長い対話履歴をモデル に入力した際に，応答生成に及ぼされる効果につい て，十分に検証されていない。

本研究では，雑談対話システムの応答生成におい て，直前までの対話セッションの履歴に加え，過去 にそのユーザと話した対話セッションから得られる 情報を付与することの有用性を検証する（図 1)。モ デルの入力長制限の問題を解決するために，直前の 会話履歴をクエリとして関連度の高い過去の対話の 選択や，ユーザ特有の単語の抽出を行うことで，大規模な対話セッションの情報から重要な情報を離散的に選択した。

実験では，Twitter から収集された対話ログを使用 ᄂ, GPT-2 [4] のファインチューニングを行なった.訓練データに登場していない未知のユーザ同士の対話を用い，自動評価と人手評価によって提案手法を 検証した。

## 2 関連研究

大規模な対話ログからの学習に基づく雑談対話シ ステムでは，運用を通じて獲得できる対話履歴を発話の改善に使用したり $[5,6]$, 対話履歴から知識を 獲得したり $[7,8]$ する研究が行われてきた.

Hancock ら [5] は，雑談対話モデルの運用中に収集した対話ログを用いてモデルを再訓練し，応答性能を継続的に改善する研究を行なった.この研究で は複数人のユーザからの対話ログを収集するが。対話ログを共有する際は，プライバシーの観点で，使用可能な情報に制限がかかる. 一方，本研究では個人の対話の中で動的に生の対話ログを参照するた め，より多くの情報を使用できると考えられる。

現在の対話セッションと異なる対話の情報を利用 して応答を生成する研究として，Examplar を用いた ものがある，Pandey ら [6] は，学習データから類似 した対話を TF-IDFをもとに検索し，応答生成に使用することで，より情報量が多く多様な応答が生成 できたと主張した.この研究では，ユーザを制限せ ず追加する対話セッションを選択するが，本研究で は特定ユーザ間での対話セッションに制限する。

Mazumder ら [7] は，知識べースを参照した質問応答において，知識ベースにない情報をユーザに問 い, 未知の知識を更新し, 以降の応答生成に使用す る手法を提案した。この手法では限られた状況での 質疑応答を対象としており, 応答はトリプレットを 基に作成される簡潔なものである一方で，本研究で 扱うのは雑談応答生成モデルである.

$\mathrm{Wu}$ ら [8] の研究では, 対話履歴から個人特有の 情報をトリプレットで獲得する.この研究の知識獲得の対象はユーザ属性のみであるが，継続的にユー ザ特有の知識を蓄積し，動的に参照する対話システ 么の研究に有用であると主張している. 本研究にお いても，継続的に獲得可能な対話履歴から個人に有用な情報を入力する手法をとっており，関連性が高 い. 一方で, 本研究の場合は個人情報の使用にとど まらず，話題の繰り返しを避けるなど，より広範な 問題をターゲットにしている.

## 3 提案手法

## 3.1 課題

本研究では，雑談対話システムを大規模コーパス で訓練する際に，進行中の対話セッション内の履歴
だけでなく, 過去の対話セッションの履歴も使用す る手法を提案する。この手法では，特定の 2 ユーザ 間の対話をユーザと雑談対話システムと見做し，そ の過去の対話を継続的に行われた対話履歴として使用する.

膨大な対話履歴を扱う必要がある一方で，高性能 なモデルアーキテクチャには，通常は系列長の制限 がある. 入力される系列長に対して線形以上のオ一 ダの計算量が必要である以上，長い系列長は短縮し て入力しなければならない．また，全ての過去の対話履歴が，現在の対話セッションにおける発話生成 に有効ではないため. モデルの最適化が難しくなる 可能性がある．そこで，既定の検索手法を用いるな どの帰納バイアスによって，入力長の圧縮を行う手法が考えられる。

## 3.2 対話セッションの選択・圧縮

入力する過去の対話セッションを選択または圧縮 するために，本研究では二つの手法を提案する。一 つ目は直前の対話履歴をクエリとして，関連する過去の対話セッションを選択する手法（図 2) で，話題の繰り返しを避けるなど，過去の対話を踏まえた 対話を行うことを期待する。二つ目は話者特有の情報を抽出する手法（図 3）で，話者の口癖や頻繁に 出す話題など，個人特有の情報を考慮することを狙 いとしている.

## 3.2.1 現在の対話と関連する過去の対話履歴の選択

継続的な会話を行う際，対話セッションを跨ぐよ うな文脈も考慮し, 同じ話題を繰り返さないなど，長距離文脈を適切に考慮した応答を生成することが 望ましい，しかし，膨大な履歴を全て入力するのは 困難なため，過去の対話セッションのうち，進行中 の対話と関連性の高いものを選択する必要がある. これを実現するために，同じ 2 ユーザ同士の過去の 対話セッションをベクトルで表現し，進行中の対話 セッションとのコサイン類似度が最も高いものを選択する。対話セッションのベクトルは, 出現単語に ついて，その対話セッション中の出現回数 TF と,同ユーザ間の全対話セッション中での単語の希少性 IDF を計算し掛け合わせることで算出され，語彙毎 のスコアを用いて表現される。

過去の対話セッションを選択後，現在の対話セッ ションの履歴とともにモデルに入力する., 現在の 対話セッションの履歴のうち $i$ ターン目の発話を

図 2 過去の対話セッションを選択・入力するモデル $\boldsymbol{u}_{i}=\left(u_{i, 1}, u_{i, 2}, \ldots\right)$, 選択された対話セッションのう ち $i$ ターン目の発話を $\boldsymbol{h}_{i}=\left(h_{i, 1}, h_{i, 2}, \ldots\right)$ としたと き，モデルへの入力は,

$[\mathrm{HEAD}] h_{1,1} \ldots h_{m, l_{m}}[\mathrm{EOH}] u_{1,1} \ldots u_{n, l_{n}}$ [EOS]

とした. ここでの $[\mathrm{EOH}]$ トークンは，過去の対話 セッション履歴の終了を表すトークン，[EOS]トー クンは，現在の対話セッション履歴の終了を表す トークンとする. また，[HEAD] トークンは二種類存在し，最初の話者がユーザ側かシステム側かによっ て使い分けることで，過去の対話セッション上の話者情報を提供する。

## 3.2.2 ユーザ特有の重要語の抽出

この手法では，特定ユーザ同士の過去の対話セッ ションの全てから，話者特有の重要語を抽出し. モ デルの入力に加える（図 3). Fikri ら [9] は，生成さ れる応答の多様性を高めるために，ユーザのツイー 卜から抽出される重要語を入力に加えているが，本手法では，過去の対話セッションから抽出された重要語を入力に加えることで，個人特有の話題や語彙 を考慮した応答が生成されることを期待する。

そこで，あるユーザの対話履歴の各単語につい て，重要度を算出する。具体的には，特定の 2 ユー ザ間での対話セッション履歴を全て結合し，一つの 文章と考え，訓練データ中での TF-IDF 值を計算す る. そして，2 ユーザ間での対話において，TF-IDF 値が高い単語を重要語とみなし, 特定個数選択す る.この個数については，対話履歴の単語の $25 \%$ 以下かつ，50 個以下となるようにした。選択された重要語を $\boldsymbol{w}_{i}=\left(w_{i, 1}, w_{i, 2}, \ldots\right)$ とした時，モデルの入力 は, $h_{1,1} \ldots h_{m, l_{m}}$ [EOW] $u_{1,1} \ldots u_{n, l_{n}}$ [EOS] とした. ここで の [EOW] トークンは，重要語の終端を表すトークン である.

図 3 ユーザ特有の重要語を入力するモデル

## 4 実験設定

本研究の提案手法とベースラインに対して自動評価と人手評価を行い，応答生成の性能を比較した。

## 4.1 データセット

本研究では，我々の研究室で Twitter $\mathrm{API}^{11}$ を用い て収集した Twitter データセットから対話データ セットを構築した. Twitter 上でのリプライツリーを 一連の対話セッションとみなし，2 人のユーザが交互に発話する対話のみを使用した。このうち，bot との対話や，画像データや URL を含むものを除外 し，同一ツイートから枝分かれしている対話は最長 のもののみを使用した。また，対象ユーザは過去の 対話セッションが 2〜9 件存在するものに限定した.今回は，2018 年のデータを訓練・検証データ，2019 年のデータを評価データとし，訓練データに出現し たユーザを評価データから除外した，最終的に，訓練・検証・評価データの特定のユーザペアの数は それぞれ 957,799 件，50,411 件，10,901 件であった。最も新しい対話セッションを進行中の対話，それ以外を過去の対話セッションとし，1 組のユーザペア あたり 1 つの発話応答のサンプルを作成した. 人手評価の際には，アノテータが現在の対話セッション から必要な情報を推測しやすいように，未知語を含 む対話や，ツイートへのリプライで開始されるもの を除外した。また，コストの問題から，評価データ のうち対話セッションを抽出した際の類似度が 0.20 以上のサンプルから 100 件，それ未満のサンプルか ら 100 件選択したデータセットを使用した. 抽出時 の類似度別に評価を行い，発話履歴に類似した対話履歴が応答生成により効果的であるかを検証する。


表 1 自動評価の結果

## 4.2 モデル

先述した提案手法をもとに，GPT-2 [4] の日本語版事前学習済みモデルである, rinna/japanesegpt2-small 2) を最大 3 エポック分ファインチュー ニングした. 入力を直前までの対話履歴のみと し, 同様にファインチューニングを行なったモ デルをべースラインとした. モデルの実装には， huggingface/transformers [10] ライブラリを用いた.評価時の生成応答を多様にするため, 累積確率を 基にした top-p [11] サンプリングを採用した。この 時の $\mathrm{p}$ の値は 0.9 とした. また，対話セッションの 選択や自動評価の際のトークン化には MeCab [12] を用い，GPT-2 のファインチューニングの際には， rinna/japanese-gpt2-small の事前学習で使用される トークナイザーによってトークン化を行った.

## 4.3 評価尺度

生成応答に対し，自動評価および人手評価を行 う. 自動評価指標としては，参照応答との類似度 を測定する BLEU [13], 応答の多様性を測定する dist-n [14]，応答の平均長を用いた.

人手評価では，過去の対話セッションを選択する 提案手法とベースライン間での性能比較を行った. 3 人のアノテータ（著者を含まない大学院生）が, 直前までの発話履歴と選択された過去の対話セッショ ン履歴を踏まえた上で，ベースラインと提案手法の どちらの応答が妥当かを選択した. その上で，提案手法による応答が妥当と選択された問題数が，妥当 でないと選択された問題数に対してどの程度大きい かを示すゲインを測定し，95\%信頼区間を求めた.

## 5 実験結果

## 5.1 自動評価

表 1 に自動評価による結果を示す. 過去の対話 セッションの情報を付与した 2 つの提案手法はべー


表 2 人手評価の結果
スラインに比べ，高い BLEU-2を達成した．提案手法はより参照応答に似た応答を生成すると考えられ る. 生成応答の単語の多様性を測定する dist-2 にお ける評価では，いずれの提案手法でもベースライン を若干下回った。また，提案手法が生成する応答は トークン数が若干多かった。これは，過去の対話の 情報にのみ登場する，音符や三点リーダなどの語尾 やユーザの名前といった追加情報を取り入れ，応答 を生成する傾向が観測されたことと，関連があると 考えられる。

## 5.2 人手評価

表 2 に人手評価による結果を示す. 表に掲載され ている全てのゲインが正であることから．提案手法 がべースラインに比べ，妥当な回答だと選択されて いることがわかる. また，提案手法において対話 セッションを選択した際に，現在の対話との類似度 が低いサンプルについての性能に比べ，類似度が高 いサンプルの方が性能が高いことがわかる。この結果から，現在の対話に関連した過去の対話の情報 が，応答生成に有用な情報を与えていると考えられ る. なお，3人のアノテータの評価について，フラ イスのカッパ係数を用いて相関を測定したところ， 0.3866 とやや低い值となった. これは，挨拶のやり とりなど，過去の対話セッションを用いても応答に 差がつきにくく, 妥当性の判断が難しい対話が含ま れていたためと考えられる。

## 6 おわりに

本研究では，膨大な過去の対話セッションから有用な情報を離散的に選択し，応答生成を行う雑談対話システムを提案した。進行中の対話セッションの 履歴に加え, 過去の対話セッションから関連性の 高いものを選択，もしくは重要語を抽出し， GPT-2 のファインチューニングの入力とした. 実験では, Twitter 上の対話ログを用いて訓練を行い，生成され た応答に対し自動評価および人手評価によって，過去の対話履歴が発話生成に及ぼす効果を検証した。

## 謝辞

この研究は国立情報学研究所 (NII) CRIS と LINE 株式会社とが推進する NII CRIS 共同研究の助成を 受けています. また，人手評価にご協力くださった 同研究室のメンバーに深く感謝申し上げます.

## 参考文献

[1] Lifeng Shang, Zhengdong Lu, and Hang Li. Neural responding machine for short-text conversation. In Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 1577-1586, Beijing, China, July 2015. Association for Computational Linguistics.

[2] Alessandro Sordoni, Michel Galley, Michael Auli, Chris Brockett, Yangfeng Ji, Margaret Mitchell, Jian-Yun Nie, Jianfeng Gao, and Bill Dolan. A neural network approach to context-sensitive generation of conversational responses. In Proceedings of the 2015 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 196-205, Denver, Colorado, May-June 2015. Association for Computational Linguistics.

[3] Iulian V. Serban, Alessandro Sordoni, Yoshua Bengio, Aaron Courville, and Joelle Pineau. Building end-toend dialogue systems using generative hierarchical neural network models. In Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence, AAAI'16, p. 3776-3783. AAAI Press, 2016.

[4] Alec Radford, Jeff Wu, Rewon Child, David Luan, Dario Amodei, and Ilya Sutskever. Language models are unsupervised multitask learners. 2019.

[5] Braden Hancock, Antoine Bordes, Pierre-Emmanuel Mazare, and Jason Weston. Learning from dialogue after deployment: Feed yourself, chatbot! In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 3667-3684, Florence, Italy, July 2019. Association for Computational Linguistics.

[6] Gaurav Pandey, Danish Contractor, Vineet Kumar, and Sachindra Joshi. Exemplar encoder-decoder for neural conversation generation. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 1329-1338, Melbourne, Australia, July 2018. Association for Computational Linguistics.

[7] Sahisnu Mazumder, Bing Liu, Shuai Wang, and Nianzu Ma. Lifelong and interactive learning of factual knowledge in dialogues. In Proceedings of the 20th Annual SIGdial Meeting on Discourse and Dialogue, pp. 2131, Stockholm, Sweden, September 2019. Association for Computational Linguistics.

[8] Chien-Sheng Wu, Andrea Madotto, Zhaojiang Lin, Peng $\mathrm{Xu}$, and Pascale Fung. Getting to know you: User attribute extraction from dialogues. In Proceedings of the 12th Language Resources and Evaluation Conference, pp. 581-589, Marseille, France, May 2020. European Language Resources Association.

[9] Abdurrisyad Fikri, Hiroya Takamura, and Manabu Okumura. Stylistically user-specific response generation. 自然言語処理, Vol. 28, No. 4, pp. 1116-1140, 2021.

[10] Thomas Wolf, Lysandre Debut, Victor Sanh, Julien Chaumond, Clement Delangue, Anthony Moi, Pierric Cistac, Tim Rault, Remi Louf, Morgan Funtowicz, Joe Davison, Sam Shleifer, Patrick von Platen, Clara Ma, Yacine Jernite, Julien Plu, Canwen Xu, Teven Le Scao, Sylvain Gugger, Mariama Drame, Quentin Lhoest, and Alexander Rush. Transformers: State-of-the-art natural language processing. In Proceedings of the $\mathbf{2 0 2 0}$ Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 38-45, Online, October 2020. Association for Computational Linguistics.

[11] Ari Holtzman, Jan Buys, Li Du, Maxwell Forbes, and Yejin Choi. The curious case of neural text degeneration. In 8th International Conference on Learning Representations, ICLR 2020, Addis Ababa, Ethiopia, April 26-30, 2020. OpenReview.net, 2020.

[12] T. KUDO. Mecab : Yet another part-of-speech and morphological analyzer. http://mecab.sourceforge.net/, 2005.

[13] Kishore Papineni, Salim Roukos, Todd Ward, and WeiJing 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.

[14] Jiwei Li, Michel Galley, Chris Brockett, Jianfeng Gao, and Bill Dolan. A diversity-promoting objective function for neural conversation models. In Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 110-119, San Diego, California, June 2016. Association for Computational Linguistics.
 高﨑 環 1 佐藤 翔悦 ${ }^{2}$ 吉永 直樹 2 豊田 正史 ${ }^{2}$ 1 東京大学大学院 情報理工学系研究科 2 東京大学 生産技術研究所 \{takasa-m, shoetsu, ynaga, toyoda\}@tkl.iis.u-tokyo.ac.jp  