izmyonの日記

奈良の山奥で研究にいそしむ大学院生の学習記録。

今日の論文2023/05/04,05:Long-term Control for Dialogue Generation: Methods and Evaluation

Long-term Control for Dialogue Generation: Methods and Evaluation

aclanthology.org

Ramya Ramakrishnan, Hashan Narangodage, Mauro Schilman, Kilian Weinberger, and Ryan McDonald. 2022. Long-term Control for Dialogue Generation: Methods and Evaluation. In Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pages 738–753, Seattle, United States. Association for Computational Linguistics.

©2022 Association for Computational Linguistics

License: Creative Commons Attribution 4.0 International License(CC-BY)

本記事は、原著の内容に基づき筆者が翻訳したものです。以下の図は、そこから引用しています。

This article is my translation based on the content of the original publication. The following figures are taken from it.

要点まとめ

  • 現在の対話応答生成制御のアプローチは、主にスタイル、センチメント、トピックなどの高レベルの属性に焦点を当てている。 本研究では、よりきめ細かい制御を必要とし、生成された応答に現れる制御語のセットを必要とする、制約された長期対話生成に焦点を当てる。この設定では、制御語の発生を直近の文脈で考慮するだけでなく、(もしかしたら遠い)将来のある時点で制御語の発生を促すような発話を生成するモデルが必要である。

  • 我々は、対話生成のための制約された長期制御の問題を定義し、現在の評価方法のギャップを明らかにし、長期制御をより良く測定する新しいメトリクスを提案する。また、ロジット修正技術により長期制御生成の性能を向上させる、検索を利用する手法(retrieve-augmented method)も提案する。我々は、3つのタスク指向の対話データセットでの実験を通して、我々のメトリクスが現在の選択肢と比較して対話制御をより良く評価し、我々の方法がSoTAの制約付き生成ベースラインを上回ることを示す。

github.com

序論

 対話システムにおける最近の進歩(Ser-ban et al., 2016; Ham et al., 2020)にもかかわらず、対話生成の制御(controlling)は依然として大きな課題である。対話における応答生成は、異なるトピックやスタイルに向けて(Madotto et al., 2020)、あるいは一連のハードな制約(すなわち、語彙的な制御語が生成テキストに現れる必要がある)に向けて制御できる(Sha, 2020)。我々は、よりきめ細かいダイアログの制御方法を提供する、制約付き生成(constrained generation)として知られるハードな制約に焦点を当てる。

 例えば、顧客サービスのユースケース(図1)を考えよう。ここでは、エージェントがある問題について顧客と会話する。目標は、一方の話者(エージェントまたは顧客)の応答において、与えられた制御語のセットを生成することである。ナイーブ制約付き生成アプローチ(Pascual et al.,2020; Miao et al., 2019)は、ビームサーチやストキャスティックサーチのような方法を用いて、制御語が単一のユータンスやフレーズに出現する必要がある短期制御のためにこれらの制御語の生成を強制する。将来のことを考慮していないため、これらのアプローチでは、1回の応答で一気に単語を生成したり、会話の中の自然な場所で単語を生成しないことがある(図1左)。

 上記の例は、既存の制約付き生成メソッドを長期対話生成に適用することの課題を強調している。まず、対話には他の話者が参加しているため、モデルは生成されるテキストを完全に制御することはできず、モデルは間接的にしかダイアログを制御することができない。第二に、対話は長くなりうるため、数タイムステップ先の発話を制御することは、非自明である。そこで、本研究では、長期的な対話制御の問題を提案する。この問題では、対話の多くの発言に対して制御語のセットを生成することを目標とし、制御語の生成タイミングを適切に調整する必要がある(図1右)。我々の知る限り、語彙的な制御語によって長期的な対話の生成を制約する研究は、我々が初めてである。

 まず、この問題の評価に関する課題を明らかにする。対話の長期的な制御を成功させることは、測定が困難な場合がある。 我々は、制約付きテキスト生成のための現在の評価指標を定義し、これらの指標は、会話の初期にすべてまたは多くの制御語を生成することによって、危険にさらされる可能性があることを示す。この問題を解決し、制御がどの程度自然であるかを測定するために、我々は指標として、長期成功率(会話のロールアウトのシミュレーションにおける制御語の割合を測定する)とprecision、recall、F1スコア(生成された応答における制御語と過去のデータセットからの参照応答におけるそれらを比較する)を提案する。これら2つ目の指標は、制御語が適切なタイミングで生成されているかどうかを把握するためのものである。

 次に、長期的な制御を明示的に扱う新しい方法を提案する。 先行する手法では、可能な未来のシーケンスの数が指数関数的であるため、このタスクを処理することは不可能である。この問題を解決するために、我々はトレーニングから類似の会話を取り出し、生成時にそれを条件とする。まず、kNNベースのアプローチを用いて類似近傍を特定し、次に、plug-and-play手法(Madotto et al., 2021; Dathathri et al., 2019; Pascual et al., 2020)に触発されて、言語モデルを類似の応答を生成するように誘導する。 これは、検索された会話から、より自然なタイミングで制御語を生成するようモデルを誘導するためである。

我々は、複数のタスク指向の対話データセットで実験を行い、我々の方法が、自動評価指標と人手評価において、いくつかの制約付きテキスト生成ベースラインを凌駕することを明らかにする。具体的には、人間による評価で流暢さを維持しながら、長期的な成功率でベースラインと比較して30-40%多くの制御語を生成することができた(5点満点中4.3点以上)。

関連研究

 制御可能なテキスト生成:先行研究により、制御可能なテキスト生成のための多くの方法が開発されている。これらのアプローチは、3つの一般的な領域に分類することができる。1つ目は、デコーディング戦略を変更すること(Grover et al., 2019; Deng et al., 2020)で、サンプリング分布を変更したり(Ghazvininejad et al., 2017; Baheti et al., 2018)、モデル内の隠れた状態を変更したり(Gu et al., 2017)する。 第二の領域は、テキスト生成をガイドするプロンプトを含んでおり(Ribeiroet al., 2018; Jiang et al., 2020; Li and Liang, 2021)、例えばユニバーサルトリガートークンによる(Wal-lace et al., 2019; Shin et al., 2020)を用いる。最後に、ファインチューンは、潜在変数の使用(Fan et al., 2018; Peng et al., 2018)やCTRLコード(Keskaret al., 2019)を通じて言語モデル出力を導くために使用することができる。我々の研究は、1)我々は、語彙的制御語を介して、よりきめ細かい生成を再要求し、2)我々は、別の話者も会話の流れを変更することができる対話の設定に焦点を当てている、という点で制御可能な言語生成の広い領域とは異なっている。

制約付きテキスト生成:制約付きテキスト生成と制御可能なテキスト生成の主要な違いは、ソフトではなくハードな制約に焦点を当てていることである。一般的に、制約付き生成には、ビームサーチ(Hokamp and Liu, 2017; Post and Vilar,2018; Pascual et al, 2020)とストキャスティックサーチ(Miao et al, 2019; Sha, 2020)という2つの生成方法がある。直接的ビームサーチ(DBS:Directed Beam Search)(Pascual et al., 2020)は、言語モデルのロジットを変更し、指定された「ガイド語」または制御語のセットを生成することを促す。ストキャスティックサーチに基づく方法(Miao et al, 2019)は、キーワードの包含を制約条件としてMetropolis-Hastingsを使用する。これらのアプローチは、これらの制約が将来の多くの発話に対して保持される必要がある対話設定には適用されない。

対話応答生成:多くの研究が制約のない応答生成のための方法を開発しているが(Budzianowski and Vuli ́c, 2019; Penget al., 2020; Cao et al., 2020; Hosseini-Asl et al.,2020; Yavuz et al, 2019)、応答生成の制御に焦点を当てた我々の問題により関連した研究がある。Lippeら(2020)は、テンプレート化された応答を言い換えることによって発話を生成している。これは、プロトタイプを介するのではなく、制御語のセットに基づいて生成をガイドしたいため、我々の設定とは異なる。 ある研究(Xu et al., 2019)は、応答の望ましい属性(例えば、応答の長さや特異性)を含むメタワードを通じて応答生成を制御している。また、訓練に誘導的なバイアスを加えて生成を誘導し、制御語によって応答生成を制御する研究もある(Wu et al., 2020)。しかし、この研究は、単一の応答に対してのみ生成を制御するものであり、複数の応答を将来にわたって制御することはできない。我々の研究に最も近いのは、ターゲットとなる題目に対する長期制御という類似の問題を提案する(Tang et al., 2019)による研究である。セットアップは似ているが、我々は、ターゲット属性ではなく、制御語のセットを与えられた対話応答を制約することについて考え、これはまた、異なるアプローチをもたらす。

検索を利用した生成:また、検索を利用した言語生成(retrieval-augmented language generation)も注目されており、検索を利用した対話生成の制御というアプローチにインスピレーションを得ている。REALM (Guu et al., 2020)は、関連文書を特定するために潜在知識検索を用い、この検索ステップをバックプロパゲートする。別の研究(Fan et al, 2020)では、対話の生成を導くために、外部の知識ベースから関連情報を取得する。Khandelwalらによるいくつかの研究は、追加の訓練なしで性能を向上させるために最近傍アプローチを活用している(Khandelwal et al., 2019, 2020)。これらの研究は、制御されていない生成のための検索を条件としているが、我々は、対話における制御のために特別にこのスペースからアイデアを活用する。

問題定義

 まず、長期的な制約付き対話生成の問題を定義する。会話 X=\{s_1,u_1,s_2,u_2, \ldots ,s_T,u_T \}は、我々が制御しようとしているシステム sと我々が明確に制御していないユーザ uという2人の話者によって生成される発話のリストとして定義する。  Tは会話中の総ターン数である。会話 x=\{s_1,u_1,\ldots,s_t,u_t\}の現在の文脈と、制御語 W=\{w_1,w_2, \ldots ,w_M \}のセットが与えられた時、我々のゴールは、制御語 Wが将来生成される応答に現れるように、会話の残りの応答 R_{t+1:T} = \{ s_{t+1}, \ldots, s_T \} を生み出すことである。我々は、誰かが会話に含めるべき制御語のセットを、その順序を仮定することなく提供するシナリオを考える。

 さらに、会話の履歴データセット D= \{x^{(i)} \}, i \in [1,\ldots,N ]と、このデータセットに対してファインチューニングされた言語モデル Mへのアクセスを仮定する。将来の応答 R_{t+1:T}を制御するために、これらの入力を活用できる。 我々は、plug-and-play設定(Pascual et al, 2020)に焦点を当て、このアプローチでは、追加の再トレーニングなしで、与えられた言語モデル Mを制御語の生成に導くだけである。

評価のためのメトリクスの提案

  生成された回答を先行する評価手法で直接評価すると、誤った結果を導く可能性がある。制約付きテキスト生成に関する先行研究(Pascual et al., 2020)では、流暢さを測定するためにperplexity、生成された制御語の割合を測定するために成功率のようなメトリクスを使用している。しかし、これらの指標は、会話全体に制御語が自然に分布するような設定でゲーム化することができるため、短期間の生成に適している。図1の左側に示すように、最初の応答で数個の単語が強制されると、会話は望ましい展開から離れ、制御語の生成は不適切なタイミングになる可能性がある。モデルが適切なタイミングで適切な単語を生成する能力をより良く評価するために、我々は以下の新しいメトリクスを提案する。

 最初の指標は、長期的な成功率で、ユーザー言語モデルとの会話をシミュレートし、シミュレートしたロールアウトのシステム応答において、生成された制御語の割合を計算するものである。先行研究(Gandeharioun et al., 2019)は、セルフプレイを評価に使用しているが、彼らは対話制御を測定するための手法としてロールアウトを提案していない。

長期成功率:我々の修正成功率メトリックは、会話の完全なシミュレーションロールアウトで発生した制御語の割合として計算される。 s= \frac{n_w}{|W|}、[tex: n_wは将来のシステム応答 R_{t+1:T}の全てに現れる制御語の数であるとして計算される。

 長期成功率の限界は、会話における制御語のタイミングを測定していないことである。そこで、次に、会話中の適切なタイミングで制御語を生成する方法を評価したい。 そのために、制御語のPrecision、Recall、F1スコアの計算を提案する。この評価は、シミュレーションでは行わない。その代わりに、評価データセットの真のシステム応答を分離して考え、その時点までの会話履歴を考慮した応答をそれぞれ生成する。 生成された制御語のうち、正しく予測された制御語の数を、同じ時間ステップのground truthの応答の制御語と比較して計算する。

 例えば、図1の右側で、2番目の顧客の応答を生成する場合(それまでの真の会話履歴がある)、「シャツ」という単語を含む応答(応答内のどの位置でも)は、その時間ステップのground truth応答に現れる制御単語であるので、P/R/F1の「正しい」予測にカウントされるであろう。 確かに、制御語は会話の後半に現れることもあるが、この設定はすでに長期的な成功率で評価されている模擬ロールアウトである。各レスポンスについて、正しく予測された制御語の数を個別にカウントした後、すべてのレスポンスについて集計する。

Precision:Precisionは、コーパスレベルで、予測された制御語の総数に対する正しく予測された制御語の数として計算される( p=\frac{| \text{correct} |}{| \text{predicted} |})。

Recall:Recallはコーパスレベルで同様に、実際の制御語の総数に対する正しく予測された制御語の数として計算される( r=\frac{| \text{correct} |}{| \text{actual} |} )。

F1-score:最後に、F1-scoreはPrecisionとRecallを1つの指標に統合する( f1 =\frac{(2∗p∗r)}{(p+r)} )。

 これらの指標は、全ての制御語を1つの回答に集約するモデルにはペナルティを与えない。しかし、我々は制御語が関連するときに自然に生成されるようにすることを望んでいる。これらの指標は、制御語が会話中の適切な位置で生成されるかどうかを評価するものである。 柔軟性を持たせるために、ground truthの位置からN回以内の発話に制御語が出現するかどうかに基づいて発話を評価するソフトバージョンのprecision、recall、F1スコアを計算することもできる。

 最後に、生成された応答がどれほど現実的で適切かを評価するために人間評価を使用する。具体的には、会話の流暢さ、制御語の生成の一貫性、関連性、コヒーレンス、多様性を評価する。

検索ベースの制御

 本論文では、対話生成に制約を与えるアプローチを提案する。検索を利用する生成(retrieval-augmented generation)(Guu et al., 2020;Fan et al., 2020)の研究に触発され、我々は現在の文脈 xに基づいて類似の過去を検索し、その未来を使って対話応答生成を制御する。ここで重要なのは、人々が過去に類似の会話でこれらの制御語をどのように使用したかを調べることで、より自然な対話にモデルを偏らせることができるという点である。つまり、過去の会話から現在の応答生成の指針を得るのである。この問題で検索を使うことをより動機づけるために、図1の会話例を考えてみる。エージェントは、顧客がどの商品を返品したいかを尋ね、多くの可能な答えがある(例えば、"I want my pant refund.", "I want to return gloves I bought yesterday." など)。 キーワードベースの検索では、制御語であるシャツに関する応答が表示され、モデルはそのワードで自然な応答を生成するように促す。例えば、 “It’s a Nike shirt I bought a week ago."など。

 我々は、検索にヒントを得たFutures of the Past (FOP)アプローチの2つのバリエーションを紹介する。1)FOP-retrieval:歴史的データから望ましい未来を検索し、検索された発話を生成された応答として単純に使用する。2)FOP-guided:FOP-retrievalからの発話を参照文として、モデルを同様の応答に誘導する。

 我々のアプローチの単純な型であるFOP-retrievalを図2に示す。FOP-retrievalは、将来的に制御語を導き出すために、モデルが今何を言うべきかを特定することに重点を置いている。今、何を言うべきかを特定する必要があるのは、この問題の制御語が長い会話に分散しているためである。 現在の応答を生成する方法として、会話のロールアウトを何度も行い、制御語の数が最も多くなる応答を選択することが考えられる。しかし、この総当たり的なアプローチは計算量が多く、豊かで多様な会話には有効ではない。そこで、過去の会話データを活用し、現在の文脈と制御語から、最も関連性の高い未来を特定する。このようにして得られた未来は、望ましい未来に導くために今何を言うべきか、モデルを導くことができる。図3に示す誘導型は、検索された発話に類似した応答を生成するように言語モデルを誘導するものである。

 我々が提案するアプローチは、対話生成のための長期制御の課題のいくつかを解決する。第一に、別の話者が会話の流れを変える可能性があるため、各時間ステップで類似した過去の文脈を新たに取得し、現在の文脈に再整列させることができる。 第二に、何段階も先の応答を制御するために、希望する未来(制御語の割合が高い)を持つ過去の会話を検索し、その方向に会話を誘導することで、現在の発話だけでなく、会話の未来も制御することができる。

過去の未来の検索(FOP-retriveal)

検索コンポーネントでは、制御語に基づいて、関連する過去の文脈を持つ未来と、希望する未来を選択することを目標とする。このために、多段階のアプローチを採用する。まず、履歴データセット D中の各会話[tex x^{(i)}]を、過去と未来の会話ペア x^{(i)}= \{ (p,f)^{(i,j)} \} のセットに分割する。 言語モデル Mを用いて、現在の文脈 M(x)と過去の会話 M( p^{(i,j)} ) を符号化する。次に、高速最近傍検索ライブラリFAISS(Johnson et al., 2019)に基づくkNNsearchを用いて、現在のコンテキスト xと密接に一致する k個の類似した過去を履歴データから特定する。次に、これらの過去の会話の未来は、制御語の割合が最も高いものに基づいてフィルタリングする。

 
\begin{align}
\text{KNN}_x &= \text{faiss} ( M(x), M(p^{(i,j)}, k) \\
f^* &= \text{argmax} ( [ \text{count} (f^{(i, j)}, W) ]_{ f(i,j) \in \text{KNN}_x } \\
\tilde{s}_{t+1} &= f^{*} [0 ], f^{*} = \{s_1,u_1, \ldots,s_T,u_T \}
\end{align}

上式において、count関数は未来 f^{(i,j)} に含まれる制御語 Wの数を数える。参照応答 \tilde{s}_{t+1} は単に検索された未来の最初の発話である。

ガイドされた過去の未来(FOP-guided)

参照応答 \tilde{s}_{t+1}の候補ができたので、同様の応答を生成するよう言語モデルを誘導することができる。そのために、制御語や類似語の生成を促すように、言語モデルからロジットを修正する。我々は \tilde{s}_{t+1}の最初の単語 w_0から始め、DBS(Pascualet al., 2020)に似た方法で、GloVeベクトル埋込みの類似性を利用してロジットをアップウェイトする。

 
l'_i = l_i + \lambda \cdot \text{min} ( 0, cos ( \gamma (t_i ), \gamma (w_j ) ) )^2,

ここで、 \gammaはGloVe埋め込みを表し、 t_i言語モデルの語彙 V i番目のトークン、 w_jは現在の参照単語、 \lambda w_jに類似する単語の生成にどれだけの重みを置くかを指定するハイパーパラメータである。

 この方法では、モデルが最初の単語で止まってしまい、それ以降の単語に移らないことがあることが確認された。より柔軟な制御を可能にするために、次の単語に移る前にすべての単語を生成することを要求する代わりに、サイズ qのウィンドウを含み、ウィンドウ内の各単語の対数を \frac{1}{2^i} i \in qの減衰倍率で増加させる。ウィンドウ内の単語が生成されたものであれば、ウィンドウは生成された単語から同じウィンドウサイズ qでシフトされる。この作業を、全レスポンスが生成されるまで繰り返す。

 この減衰倍率は、モデルが参考回答の早い単語を生成するように促し、可能性が高い場合を除き単語をスキップしないようにするために使用される。この方法で N個の回答を生成し、最適なものを選択するために追加のランキングステップを含む。 まず、生成されたレスポンスに含まれる制御語の単語の数でソートする。複数の回答が最も多くの制御語を生成した場合、モデルからの損失でソートし、最も低い損失 lを持つ回答を選択する。


\begin{align}
\tilde{R}_{t+1} &= \{ M^j (l') | j \in [1, \ldots, N ] \} \\
s* &= \text{max} \left( [ \text{count}( r, W) ]_{r \in \tilde{R}_{t+1} } \right) \\
\tilde{R}_{t+1} &= \{ r | \text{count} ( r, W) = s* , r \in \tilde{R}_{t+1} \} \\
r_{t+1} &= \text{argmin} \left( [ \text{loss} (r) ]_{r \in \tilde{R}_{t+1} } \right), 
\end{align}

ここで \tilde{R}_{t+1}は、ロジット l'でモデル化して N個生成した応答のセットである。最終的に生成されたレスポンサート r_{t+1}は、2段階のランク付けプロセスに基づいて選択される。他のアプローチでは、このランキングの要素は含まれていない。

実験のセットアップ

タスク指向対話のデータセット

 この問題とアプローチは、一般的な対話制御の設定に適用可能である。我々の実験では、タスク指向の対話で顧客を制御した。これは、現実の顧客を模倣する顧客ロボットを構築するのに有効である。顧客シミュレータを制御することにより(例えば、制御語により)、様々な多様な状況での接客を指導するためのトレーニング環境を開発することができる。すべてのデータセットにおいて、tf-idfに基づいて上位 M位以内にランクされた単語を選択することにより、顧客の発話から制御語を選択する。実際のアプリケーションでは、制御語をデザイナーが手動で選択することもあります。

MultiWoz 2.3:最初のデータセットとして、対話コミュニティで広く利用されているMultiWoz 2.3(Han et al., 2020)を用いて評価した。このデータセットには、10K以上の対話と5つのドメインがある。

TaskMaster-3:2つ目は、もう一つのよく使われるタスク指向の対話データセットTaskMaster-3 (Byrne et al., 2019)。 このデータセットには、映画チケットのドメインにおける23,757の対話がある。

Action-Based Conversations Dataset(ABCD):最後のデータセット(Chen et al., 2021)は、顧客の問題を解決することに焦点を当てたエージェントと顧客の会話セットである。このデータセットには10k以上の対話が含まれ、また1つのドメインに焦点を合わせている。

ベースライン

 W_{first}:最初のベースラインは、会話の最初の応答ですべての制御語を出力し、その後は何も出力しないナイーブなアプローチであり、単語の出現タイミングが適切に制御されていないことを意味している。

Fine-tuned:このアプローチは、ファインチューンされた言語モデル Mを使用して応答を生成するだけである。

Prompt:この方法は、promptアプローチ(Li and Liang, 2021; Ribeiro et al, 2018;Jiang et al, 2020; Madotto et al, 2021)に基づいている。 今回はplug-and-playの設定に重点を置いているため、制御語をコンテキストの先頭に追加し、この変更された入力を使って生成します。

Directed Beam Search(DBS):これは制約付きテキスト生成アプローチであり(Pascual et al.,2020)、ロジット修正とビームサーチを使用してキーワードを生成するものである。長期的な制御には最適化されておらず、制御語の順序に大きく依存する。

Metropolis-Hastingsサンプリングによる制約付き文の生成(CGMH):この方法(Miao et al., 2019)は、文中の単語を挿入、削除、置換するストキャスティックサーチに基づいており、制御語が存在する必要があることを要件としている。制御語の長期的な生成や前方生成には最適化されておらず、特に1回の応答で全ての制御語を積極的に生成することに弱くなる。また、元々はキーワードからフレーズを生成するタスクに適用されていたため、言語モデルを対話文脈でプロンプトすることでダイアログ生成に適応し、双方向RNNモデルを我々のトランスフォーマーベースのモデルに置き換えた。

結果

集約結果

各評価指標は、性能の異なる側面を捉えているため、まず、主なベースラインと手法のトップレベルの概要を紹介することにする。表1には、表2、3、図4の主な結果について、タスク、パラメータ、メトリクスごとに平均化されたスコアが示されている。これには、我々が提案した長期成功率と制御語F1スコアの2つの自動測定基準と、人間による品質測定基準の結果が含まれている。次節以降では、これらの結果について、より詳細に検討する。

 これらの結果を総合すると、FOPベースの手法は、各指標において常に最高のパフォーマンスを発揮するわけではないが、一貫して最も信頼性の高いシステムであるということがわかる。具体的には、CGMHは成功率が高いが、F1と人手評価のスコアが低い。一方、Promptは、人間による評価スコアは最も高いが、成功率は最も悪い。結局のところ、修正されていない言語モデルなので、人間が見たときに流暢でトピックに沿ったものであるべきである。。しかし、成功率が極端に低いため、長文制御の生成には使えない。一方、FOPベースの手法は、すべての統計データで上位1位か2位を占めている。

長期成功率

最初の分析では、生成されたシミュレーションロールアウトに含まれる制御語の割合を示す長期成功率について、すべての手法を比較する。このために、トレーニングデータセットで別のユーザーモデルをトレーニングする。10個のシステム応答と10個のユーザー応答が生成されたロールアウトのテスト例を実行し、生成されたシステム応答に含まれる制御語の割合を計算する。生成された単語の数を数えるときは、単語ステムを比較する。

 図4は、制御語の数を変化させたときの全アプローチの性能を示している。我々のアプローチのバリエーション(FOP-retrievalとFOP-guided)はいずれも、PromptとDBSよりも高い成功率を示している。Promptは最も性能が低い手法であるが、これは、再トレーニングを行わずに制御語を最初に含めると、制御語を生成するのに十分な情報をモデルに提供できないためである。DBSは、制御語の数が少ないときはうまくいくが、制御語の数が増えると苦戦する。これは、DBSが現在の時間ステップで無関係な単語をフィルタリングすることができず、代わりに単語を1つずつ生成しようとするためである。また、この方法では、単語が正確な順序で表示されていない場合に対応することができない。

 FOP-retrievalは、場合によってはFOP-guidedよりも、検索されたレスポンスに含まれるすべてのキーワードを正しく取得することができるので、パーフォーマンスが高くなることがある。FOP-guidedは、LMの指示により、これらのキーワードを無視することができる。 そのため、FOP-guidedに比べ、FOP-retrievalはこの指標でより良い結果を出すと予想される。また、付録A.1.1では、FOP-guidedのスライディングウィンドウを移動させた場合の効果を分析するために、アブレーション実験も行っている。CGMHは長期的な成功率では優れているように見えるが、人手による評価の結果、生成された回答はあまり流暢でないことがわかった。この方法は、1つの発話に多くのまたはすべての制御語を凝縮する傾向があるため、以前の評価指標をゲーム化することができる方法である。したがって、これらの手法は、次の評価指標であるPrecision、Recall、F1スコアによって評価するのがよい。

制御語のP/R/F1

 次に、Precision、Recall、F1スコアを用いて、各アプローチがどの程度適切なタイミングで制御語を生成できたかを測定する。表2は、すべてのデータセットでこれらの指標を比較したものである。すべてのデータセットで平均すると、FOP-guidedはベースライン手法と比較して高いF1スコアを獲得していることがわかる。これは、類似した未来を検索することで、会話中の適切なタイミングで制御語を生成するよう、言語モデルを誘導することができるためである。FOP-guidedは、MultiWozでは、より多くのドメインを含むデータセットであり、会話のバリエーションが豊富であるため、より悪い結果となった。この多様性により、検索ベースの手法では、生成のガイドとなる類似の会話をうまく見つけることが難しくなる。

 ナイーブなアプローチである W_{first}は、最初の発話で制御語を出力するだけなので、低いRecallとPrecisionとなる。 CGMHは、 W_{first}と同様に、自然なタイミングではなく、会話の初期に多くの制御語を生成するため、F1スコアが低くなっている。また、DBSは制御語の順序に大きく影響されるため、これらの評価指標では良い結果を得られなかったが、本手法は類似の未来を検索して現在の時間ステップで適切な語を生成することが可能である。最後に、Promptは、制御語を生成するように明示的に誘導されていないため、Precisionでは良好であるが、Recallでは良好ではない。

人手評価

 最後に、すべての手法を人手で評価する。我々は、テキスト生成アプローチの優れた評価方法に関する最近の研究(Karpinska et al, 2021)に従っている。詳細は付録A.4.に示す。

Fluency: 応答は流暢で文法的か?

制御の一貫性:応答に制御語が現れる場合、それらは適切に使用されているか?

関連性:その応答は、会話の中の前の発話に対する自然な返答か?

一貫性:会話中のすべてのシステム応答は、互いに対して首尾一貫しているか?

多様性:システム応答の多様性はあるか?

 2人の評価者が各例にアノテーションを行い、5つのメトリクスごとにKrippendorffのalphaを用いて同意度を測定した(0.84, 0.74, 0.82, 0.76, 0.67 )。5つのアプローチすべてと、ground truthの会話について、結果を表3に示す。DBS、CGMH、FOPの3つの手法の比較に焦点を当てる。これらの手法は、コントロールメトリクスで比較可能なパフォーマンス(長期成功率で少なくとも40%)を示したため、長期制御のベースラインとして妥当なものであった。

 DBSと比較すると、FOP-guidedは、流暢さ、関連性、一貫性ではほぼ同じであるが、制御一貫性と多様性でははるかに優れている。これは、検索が会話を通して自然に何を言うべきかを決めるのに役立つためと考えられる。FOP-guidedは、関連性、一貫性、多様性についてはFOP-retrievalと同等であり、流暢性と制御一貫性についてはわずかに悪い。これは、FOP-guidedが文脈と検索された文を用いて応答を生成するのに対し、FOP-retrievalは既に流暢な過去の応答を選択するためであると考えられる。全体として、人間による評価結果は、我々の提案する方法がどちらも現実的で首尾一貫したテキストを生成し、同時に高い割合の制御語を生成することを強く示している。

結論

本論文では、制約付き対話生成の問題を提案する。この問題は、会話の将来のある時点で制御語のセットが現れるように、対話応答を制御することを含む。本論文では、将来生成される応答を制御するために、関連する会話の検索を活用する新しい方法と、新しいメトリクスのセットを提案する。我々は3つのデータセットにおいて、我々の方法が定量的な指標と人間による評価において、いくつかの制約付きテキスト生成ベースラインを凌駕することを示す。我々の知る限り、これは対話生成のための長期制御の問題を扱った最初の研究である。