# 強化学習を用いたキャラクタらしさを持つ雑談応答の生成

清水健吾 上垣貴嗣 菊池英明
}

早稲田大学人間科学研究科

\{k.bi.sket@akane., t-gappy@fuji., kikuchi@\}waseda.jp
## 概要

雑談対話システムがユーザに「また対話したい」 と思わせるための方法として，特定のキャラクタら しさをシステム応答に付与する方法が考えられる。本研究は，強化学習を用いてニューラル対話生成モ デルを fine-tuning することで，特定のキャラクタら しい雑談応答を生成できる対話生成モデルを提案 する. Fine-tuning の際に，特定のキャラクタらしさ を持つ単一の発話データのみを必要とし，対話形式 のデータを必要としない点で既存研究と大きく異 なる。提案手法に基づく対話システムを評価した結果，対話システムのユーザに特定のキャラクタらし さの印象を与え，「また対話したい」と思わせる効果を確認した。

## 1 はじめに

雑談対話システムの研究において「ユーザにまた 対話したいと思わせられるか」という観点は大きな 課題となっている。ユーザに「また対話したい」と 思わせられる対話システムを開発することを目的と したコンペティションも開催されている $[1,2]$.

また，近年，人と極めて自然な雑談対話を行うこ とが出来る大規模なニューラル対話生成モデルが登場した $[3,4]$. これらの対話生成モデルに基づく対話システムが，よりユーザに「また対話したい」と 思わせるための方法として，システム応答に特定の キャラクタらしさを付与する方法が考えられる.

対話生成モデルに特定のキャラクタらしさを付与 する研究として, [5] が挙げられる. [5] は, 特定の キャラクタらしさを持つ対話データを収集すること で，特定のキャラクタらしい発話を生成する対話シ ステムを提案した。しかし，特定のキャラクタらし さを持つ対話形式のデータを収集するには大きなコ ストを要する。本研究の目的は，ある特定のキャラクタらしさを 持つ応答を生成する手法を提案することである. 特 に，対象のキャラクタらしさを持つ対話形式のデー タではなく，対象のキャラクタらしさを持つ単一の 発話データのみを使用して，発話にキャラクタらし さを付与する手法を提案する．具体的には，強化学習を用いて対話生成モデルを fine-tuning すること で，システム応答に特定のキャラクタらしさを付与 する．また，本研究が提案する手法によって，対話 システムのユーザに「このシステムとまた対話した い」と思わせることができるかについても併せて検証する。

## 2 提案手法

提案手法は以下の 3 つの段階で構成される.

1. 対話生成モデルを学習するために，Twitter 疑似対話データセットとキャラクタツイートデータ セットの 2 種類のデータセットを構築する.

2. Twitter 疑似対話データセットを用いて大規模言語モデルを学習することで対話生成モデルを構築する。

3. 強化学習を用いて，構築した対話生成モデル を fine-tuning する。まず，キャラクターツイー トデータセットを用いて，「対象のキャラクタ らしさ」を算出する報酬モデルを構築する．次 に，報酬モデルが算出する報酬を用いて対話生成モデルに強化学習を行う。

## 2.1 データセットの構築

## 2.1.1 Twitter 疑似対話データセット

Twitter のツイートとそのツイートに対するリプラ イの連鎖を疑似的な対話とみなし，Twitter 疑似対話 データセットを構築した。収集したツイート・リプ

ライ連鎖に対してURL，ハッシュタグ等の削除や，文字の正規化などの前処理を行った. ツイート・リ プライ連鎖の取得は 2020 年 3 月から 2021 年 12 月 にかけて行い，最終的に約 292 万件のデータセット を構築した。

## 2.1.2 キャラクタツイートデータセット

特定のキャラクタらしさを持つツイートを収集 し，キャラクタツイートデータセットを構築した。本研究では対象のキャラクタとして，アニメ「けも のフレンズ」1)に登場する「アライグマ」2)を採用し た. アライグマを取り上げた理由は以下の 2 点で ある.

・Twitter 上にアライグマを模したアカウントが多 く存在し，データを集めやすかった.
- 発言内容にキャラクタらしさが表れやすいキャ ラクタであるため，提案手法の有効性を確認し やすかった。

ツイートを収集した基準を以下に示す。

・有志がまとめた，Twitter 上に存在するアライグ マに模したアカウントの一覧3)に含まれている こと.

・アカウント名に「さん」が含まれ，アカウント のプロフィールに「のだ」が含まれていること.

収集したツィートに対して，2.1.1 節で述べた Twitter 疑似対話データセットと同様の前処理を施 した. さらに，感情分析タスク用に fine-tuning した BERT[6] ${ }^{4}$ を用いてツイートフィルタリングするこ とで，ポジティブな内容のツイートのみを残した.最終的に約 3.5 万件のデータセットを構築した.

## 2.2 対話生成モデルの構築

本研究では，対話を生成するモデルとして GPT2[7] を使用した。事前学習済み GPT-2 として rinna 社が公開しているモデル5)を使用した，GPT-2を 2.1.1 節で構築した Twitter 疑似対話データセットを 用いて学習することで, 日本語版DialoGPT[8]を構築 した. ミニバッチサイズを 16 , gradient accumulation stepsを2，学習率を $2.5 \times 10^{-5}$, optimizerとして


AdamW[9]を使用し，4 エポック学習を行った。

## 2.3 強化学習による fine-tuning

2.2 節で構築した DialoGPT が，対象のキャラクタ らしさを持つ応答を生成できるように強化学習に よって fine-tuning を行った.

## 2.3.1報酬モデル

まず，強化学習における報酬である「対象のキャ ラクタらしさ」を算出するための報酬モデルを構築 した. 報酬モデルとして RoBERTa[10]を使用した.事前学習済み RoBERTa として rinna 社が公開して いるモデル6)を使用した. RoBERTaを2.1.2 節で述 べたキャラクターツイートデータセットを用いて fine-tuning した.「対象のキャラクタらしさを持つツ イートか否か」の 2 値分類タスクを学習すること で，学習したモデルからの出力を「対象のキャラク タらしさ」とみなすことができる.

ミニバッチサイズを 256 , 学習率を $3.0 \times 10^{-5}$, optimizer として AdamW[9]を使用し，1 エポック学習を行った.

## 2.3.2 Proximal Policy Optimization (PPO)

本研究では, 強化学習アルゴリズムの一つであ る Proximal Policy Optimization (PPO)[11]を用いる. PPO を言語生成タスクに適用する際には，損失関数 は以下のように定義される。

$
\begin{gathered}
r(\theta)=\frac{\pi_{\theta}\left(y_{t} \mid s_{t}\right)}{\pi_{\text {old }}\left(y_{t} \mid s_{t}\right)} \\
\text { loss }=-\mathbb{E}_{\hat{Y} \sim \pi_{\text {old }}}\left[\operatorname { m i n } \left(\sum_{t=1}^{T} r(\theta) A\left(s_{t}, y\right)\right.\right. \\
\left.\left.\operatorname{clip}(r(\theta), 1-\epsilon, 1+\epsilon) A\left(s_{t}, y\right)\right)\right]
\end{gathered}
$

式(1)における $A\left(s_{t}, y\right)$ は強化学習の報酬を表す. $\pi_{\text {old }}$ は数ステップ過去のモデルを表す. 現在のモデ ルからの出力と過去モデルからの出力の比 $r(\theta)$ と,報酬の値 $A\left(s_{t}, y\right)$ の積が最大化されるように学習す る.このようにすることで，報酬の値が正の時は現在の出力の確率を上げ，反対に報酬の値が負の時は 現在の出力の確率を下げるように学習される. ただ し, 現在のモデルからの出力と過去モデルからの出力の比が大きすぎるものに対してはクリッピングを

6) https://huggingface.co/rinna/japanese-roberta-base

図 $1 \mathrm{PPO}$ 学習時の報酬の増減

する.これはモデルの急激な変化を防ぎ，学習を安定させる働きがある.

また, さらに学習を安定させるために報酬 $A\left(s_{t}, y\right)$ を次のように設定する。

$
A(x, y)=r(x, y)-\beta \log \frac{\pi(y \mid x)}{\rho(y \mid x)}
$

式 (2)における $\rho$ は初期状態のモデルを表す. 現在のモデルの状態が初期のモデルの状態から離れ過 ぎないように，報酬の值 $r(x, y)$ に対してペナルティ を与えることで，学習の安定化を図る。

## 2.3.3 PPO による fine-tuning

2.2 節で構築した DialoGPT に対して，PPO を用い て fine-tuning を行った. 報酬として 2.3.1 節で構築 した報酬モデルが算出する「対象のキャラクタらし さ」を利用する。「対象のキャラクタらしさ」を最大化するように学習することで，DialoGPT が生成 する応答に対象のキャラクタらしさを付与する.

ミニバッチサイズを 8 ，学習率を $1.41 \times 10^{-5}$, optimizer として Adam[12] を使用し，200 ステップ 学習した. その他のパラメータは [13] に準拠した.学習時の報酬の増減を図 1 に示す. 学習終了後, 報酬が安定した 60 ステップ目のモデルの重みを保存 した.

また，学習したモデルが生成した実際の対話例を 表 1 に示す.

## 3 評価実験

## 3.1 実験目的

以下の 2 点を目的に評価実験を行った。

1. 提案システムによる発話が，発話の受け手に対 してある特定のキャラクタらしさを感じさせる かを検証する。表 1 PPOによって学習した DialoGPT との対話例

User|こんにちは一

System こんにちはなのだ!今日もよろしくお願いしま すのだ!

User

System

User

System

User

System

User

System

$
\text { こちらこそよろしくねー！ }
$

よろしくお願いしますのだ!今日寒いけど、アライグマさんは寒くない？寒いのだー!暖かくして過ごすのだ! アライさんはもふもふしていて暖かそう もふもふなのだー!

私はアイスが好きで、今日もアイス食べ ちゃった。

アイス美味しいのだー!アライさんも食べるの だー!

表 2 評価項目

評価項目名 |アンケート質問文

自然さ|この対話システムの対話は自然で あった。

キャラクタらしさ この対話システムは「アライさん」 だと思う。

対話継続欲求 この対話システムと今後も対話をし たい。

2. 提案システムのユーザが「このシステムと今後 も対話をしたい」と思わせる効果があるかを検証する。

## 3.2 実験設定

実験では 2.2 節で構築した fine-tuning を行う前 の DialoGPT（ベースラインシステム）と，2.3 節で fine-tuning を行った後の DialoGPT（提案システム） を比較した。

評価項目を表 2 に示す. 被験者はクラウドソー シングを利用して 50 名募集した. キャラクタらし さを判断できるように，被験者はアニメ「けもの フレンズ」の視聴経験がある者に限定した. 被験者はLINE 上で 8 回対話システムと対話を行い，そ れぞれの対話に対して，表 2 の評価項目について 1 （まったくそう思わない）から5（とてもそう思う） の 5 段階で評価した。なお，被験者はベースライン システムと提案システムのどちらと対話をしている か知らされなかった。

## 3.3 実験結果

評価実験の結果を図 2 に示す.キャラクタらしさ の評価項目に対してはウィルコクソンの符号順位検定を行い，他の 2 つの評価項目に対しては対応のあ る $t$ 検定を行った。検定の結果，キャラクタらしさ の項目 $(W=15.5, p<.001 ）$ と対話継続欲求の項目

Baseline Proposed

Baseline Proposed

Baseline Proposed

図 2 評価実験の結果（左から順に自然さ，キャラクタら しさ，対話継続欲求を表す.)

表 3 各評価項目の組み合わせごとの無相関検定

$(t(49)=2.26, p=.028)$ において，提案システムが ベースラインシステムを有意に上回った（有意水準 5\%未満). したがって，提案システムが生成する応答が，ユーザに特定のキャラクタの印象を与え，「こ のたいわシステムとまた対話をしたい。」と思わせ る効果を確認した. また，自然さの項目において， ベースラインシステムと提案システムの評価值の同等性を確認するために Two One-Sided Test (TOST) を おこなった. 許容する差の閾値は $\pm 0.5$ とした. 検定の結果，2つのシステムの評価值間において有意 な同等性が確認された $(p=.0043)$. したがって提案手法は，対話の自然さを損なわずに特定のキャラ クタらしさを付与できることを確認した.

また，各評価項目間の組合せにおいて無相関検定 を行った. 相関係数としてはスピアマンの相関係数 を用い， $p$ 值にはボンフェローニ補正を施した. 各項目の組み合わせごとの検定の結果を表 3 に示す。

検定の結果，自然さと対話継続欲求，キャラクタ らしさと対話継続欲求のそれぞれの評価值間で有意 な正の相関が確認された。

## 4 おわりに

本研究の貢献は以下のとおりである.

1. 強化学習を用いて，ある特定のキャラクタらし さを持つ対話応答を生成する手法を提案した. モデルの学習には対象のキャラクタらしさを持 つ単一の発話データのみを必要とし，対話形式 のデータである必要はない.

2. 本研究が提案した手法で応答を生成することに

よって，対話システムのユーザに「このシステ ムと今後も対話したい」と思わせる効果がある ことを確認した。

本研究で提案した手法によって，より容易に特定 のキャラクタらしい対話システムを構築できる可能性が示唆された。今後は，提案手法が他のキャラク タやより高精度で大規模な対話システムに対しても 応用可能かを検証する予定である.

## 参考文献

[1] Raefer Gabriel, Yang Liu, Anna Gottardi, Mihail Eric, Anju Khatri, Anjali Chadha, Qinlang Chen, Behnam Hedayatnia, Pankaj Rajan, Ali Binici, et al. Further advances in open domain dialog systems in the third alexa prize socialbot grand challenge. Alexa Prize Proceedings, 2020.

[2] 東中竜一郎, 西川寛之, 宇佐美まゆみ, 船越孝太郎, 高橋哲朗, 稲葉通将, 赤間怜奈, 佐藤志貴, 堀内颯太, ド ルサテヨルス, 小室允人, 西川寛之, 宇佐美まゆみ. 対話システムライブコンペティション 4. 第 93 回 言語・音声理解と対話処理研究会, pp. 92-100, 2021.

[3] 藤原吏生, 岸波洋介, 今野颯人, 佐藤志貴, 佐藤汰亮,宮脇峻平, 加藤拓真, 鈴木潤, 乾健太郎. ILYS aoba bot:大規模ニューラル応答生成モデルとルールベースを 統合した雑談対話システム. 第 90 回 言語・音声理解と対話処理研究会, pp. 110-115, 2020.

[4] 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. arXiv preprint arXiv:2109.05217, 2021.

[5] Ryo Ishii, Ryuichiro Higashinaka, Koh Mitsuda, Taichi Katayama, Masahiro Mizukami, Junji Tomita, Hidetoshi Kawabata, Emi Yamaguchi, Noritake Adachi, and Yushi Aono. Methods for efficiently constructing text-dialogueagent system using existing anime characters. Journal of Information Processing, Vol. 29, pp. 30-44, 2021.

[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Vol. 1, pp. 4171-4186, 2019.

[7] Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei, Ilya Sutskever, et al. Language models are unsupervised multitask learners. Technical report, Open AI, 2019.

[8] Yizhe Zhang, Siqi Sun, Michel Galley, Yen-Chun Chen, Chris Brockett, Xiang Gao, Jianfeng Gao, Jingjing Liu, and William B Dolan. DIALOGPT: Large-scale generative pre-training for conversational response generation. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics: System Demonstrations, pp. 270-278, 2020.

[9] Ilya Loshchilov and Frank Hutter. Decoupled weight decay regularization. arXiv preprint arXiv:1711.05101, 2017.

[10] Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. RoBERTa: A robustly optimized BERT pretraining approach. arXiv preprint arXiv:1907.11692, 2019.

[11] John Schulman, Filip Wolski, Prafulla Dhariwal, Alec Radford, and Oleg Klimov. Proximal policy optimization algorithms. arXiv preprint arXiv:1707.06347, 2017.

[12] Diederik P Kingma and Jimmy Ba. Adam: A method for stochastic optimization. In International Conference on Learning Representations (ICLR), 2015.

[13] Daniel M Ziegler, Nisan Stiennon, Jeffrey Wu, Tom B Brown, Alec Radford, Dario Amodei, Paul Christiano, and Geoffrey Irving. Fine-tuning language models from human preferences. arXiv preprint arXiv:1909.08593, 2019.
 清水健吾 上垣貴嗣 菊池英明 }  早稲田大学人間科学研究科  \{k.bi.sket@akane., t-gappy@fuji., kikuchi@\}waseda.jp 