Let the LLMs Talk: Simulating Human-to-Human Conversational QA via Zero-Shot LLM-to-LLM Interactions
https://gyazo.com/164ba47f07bbe3a379050ce0b6635498
なぜ読んだか
LLMの出力の評価方法を知りたかった
INTRODUCTION
情報検索のコミュニティでは、効果的に情報を検索できる対話型の検索システムに注力している
対話型質問応答(CQA)では、ユーザーと対話することで、ユーザーのニーズを理解しつつ目標を達成することに成功している
対話型検索の課題
大きな課題の一つは、相当数の会話を生成するのに大規模なアノテーターチームを維持すること
時間もコストも多大に必要
人間のアノテーターだと生成される会話の品質や一貫性にばらつきが生じる
背景知識を持たないトピックだと会話が困難
膨大な知識をもつLLMを活用することでこの課題を解決したい
ユーザーをシミュレーションする既存研究はいくつかあるが、既存研究では、シミュレートされたユーザーがシステムの発話に受動的に応答するだけという欠点がある
実世界では、ユーザーの行動にはプロアクティブな行動とリアクティブな行動が混在している
本研究の目的
あらかじめ定義されたトピックに関する会話設定で、プロアクティブな行動をするユーザーをシミュレーションする際のLLMの有効性を検証する
Choi et al. の teacher-student 会話シミュレーションを利用
RQ1: 教師と生徒の対話を効果的に自動生成する上で、どのようにLLMを利用することができるか
生徒LLMが質問を生成し、教師LLMがそれに回答する
ゼロショットLLM-to-LLMシミュレーションフレームワークを提案し検証する
RQ2: CQAシミュレーションにおいてLLMの役割をどのように評価できるか
RQ3: LLMが生成した会話と人間が生成した会話をどのように比較するか
上記のRQのために以下を実施
教師に対する独立した評価を実施
生徒のパフォーマンスを評価を実施
読解モデルをベンチマークする分析を実施
本論文の貢献
ゼロショットプロンプトのLLMを活用し、CQA設定における人間同士の会話をシミュレーションした
教師LLMと生徒LLMによって生成したLLM生成データセット SimQuACを提案
LLMの有効性を評価するために、言語分析だけでなく、包括的な自動と手動評価のフレームワークを提案し、実施
LLMが生成した会話と人間が生成した会話について広範に分析し、多くの興味深いパターンを発見した
METHODOLOGY
問題設定
QuACデータを利用
CQAモデル評価によく利用されるデータセット
Wikipediaの記事を中心にした会話
生徒役のクラウドワーカーが質問し、教師役のクラウドワーカーが回答する
教師はWikipediaの記事全体へのアクセスが可能。回答は記事から適切なスパンを選択することに限定
生徒は記事のタイトルのみアクセス可能で、トピックを探求するための質問をする
タスク設定
生徒はアクセスできる情報が限定
Wikipediaの記事タイトル
セクションヘッダー
記事の冒頭のパラグラフ
教師は広範なアクセス権
Wikipediaの記事
セクション全文を含む追加情報
会話は生徒の質問から始まり、教師が回答する。生徒の質問がなくなるまで続く。
教師の回答は、テキストから1つ、または、複数のテキストスパンを選択することに制限
回答の評価が単純化され、幻覚を防ぐことができる
フレームワーク
(1) 初回の質問生成用のプロンプト ($ Instruction_{s}) を用いて質問生成
質問に問題があれば再生成
(2) 生成した質問を教師に与える
(3) 初回の回答生成用のプロンプト ($ Instruction_{t}) を用いて回答生成
回答に問題があれば再生成
テキスト内に回答が見つからない場合、"I cannot found the answer" と回答する
(4) 回答に問題がなければ、生徒に回答
https://gyazo.com/ed188a84a41e5d2e4b63632aa35c8df2
https://gyazo.com/84c23e33aaac3baf98a543c8ff9a5f12
教師のシミュレーション
Answer Generation ($ \phi_{T})
初回は $ Instruction_{T} を使ってゼロショットで初期化
$ Instruction_{t} には与えられた質問に回答するテキストスパンをコピーする指示が含まれている
答えがない場合は "I cannot find the answer" を生成
過度に長い回答を防止するために2段階のメガニズムを採用
40トークンを超えてはいけないことをプロンプトで指示
できるだけ短いスパンを選択することを指示
"Remember that you should select the shortest span from the text"
Answer Validation ($ \sigma_{T})
生成した回答の妥当性をチェックする
回答に1つか複数のテキストスパンとなっているか。または "I cannot find the answer" か。
テキスト検索をしてコピーかどうかを確認
LLMはカッコ内のテキストはコピーせず、テキスト内の空白を無視する傾向がある
2つの正規化バージョンのテキストを生成
(i) カッコを削除
(ii) 空白を削除
回答が正規化バージョンのテキストにも含まれなかった場合、別のプロンプトを発行
"Please copy the answer exactly from the given text"
回答が背景情報からでなく、テキストセクションからのコピーになっているかどうか
回答が背景情報からコピーされていた場合、別のプロンプトを発行
"Please answer from the given section not the given background description"
上記を両方のバリデーションが通るまで繰り返す
妥当な回答が得られたら、それを $ Student_{sim} に渡す
ループが一定回数を超えるか、"I cannot find answer" となるまで繰り返す
生徒のシミュレーション
Question Generation ($ \phi_{S})
初回は $ Instruction_{S} を使ってゼロショットで初期化
$ Instruction_{S}にはトピックと背景情報など、トピックに関する基礎的な情報が含まれている
Question Validation ($ \sigma_{S})
生成された質問の妥当性を検証
構文的な正しさと一貫性の妥当性を検証することが目的
1つの質問を生成することを期待しているが、LLMはよく複数の質問を生成する
以下を確認
長さが25文字を超えないこと
改行文字や箇条書き(ex. 1, 2, 3)が含まれていない
Prompt Selection Student ($ \omega_{S})
会話が進むにつれて、テキストセクションからでは答えられない質問を生成することがある
例えば、「ニューサム市長の市政はサンフランシスコ市民に好評でしたか?」
教師シミュレータが生成された質問に回答できるかどうかを評価することも重要になる
質問の品質を高めるために、生徒のプロンプトを調整する
教師の回答が "I cannot find answer" だった場合に、続く質問も同様に答えられない質問になる可能性が高いため、ガイドプロンプトをランダムで1つ選ぶ
ガイドラインプロンプト
(i) 一般的な質問をし、具体的すぎる質問はしない
(ii) where, when, whoで始まる質問をする
(iii) この記事のどこが面白いかを質問する
(iv) トピックの別の側面について質問する
このガイドラインにより、$ Student_{sim} は効率的にトピックを探索できる
TEACHER EVALUATION
教師の視点からRQ2とRQ3に取り組む
Experimental Setup
データセット
QuACデータセットから50の会話をランダムで選択
$ teacher_{sim} が生成した回答と、QuACの元の回答を比較
パラメータ
GPT-4を利用
事前実験ではGPT-3.5やLLaMAを利用したが、ゼロショットではテキストから正確な箇所をコピーできなかった
$ \sigma_{T} の最大ループ回数は4
人手評価
クラウドソーシングプラットフォーム Prolific を利用
$ teacher_{sim} が生成した回答と、QuACの元の回答をcorrectness, completeness, naturalnessの観点で比較
Correctness: 選択されたテキストスパンが質問に対する回答として正しいどうか
Naturalness: 回答の流暢さと人間らしさ
Completeness: 回答の包括性と完全性
あるアーティストのアルバムについての質問の場合、より多くのアルバムをリストアップしているほうがCompletenessが高い
Preference: $ teacher_{sim} とQuACの回答のどちらが好みか
クラウドソーシングタスク設計
$ teacher_{sim} とQuACの回答を比較
「システムA」「システムB」「AでもBでもない」「AとBの両方」から選択
$ teacher_{sim} とQuACの回答が同じ場合は評価しない
どちらかが "I cannot find answer" の場合は、正しさのみを評価する
アノテーション品質チェック
50の会話を10のバッチに分割
信頼性担保のため、3人以上のクラウドワーカーで評価
多数決で優劣を判定、引き分けの場合もある
ポジションバイアスを排除するため、$ teacher_{sim} とQuACの回答の順序はランダムに配置
アノテーターは英語ネイティブで、オンボーディングテストを突破した人
$ teacher_{sim} がよかったケース
https://gyazo.com/36f28023f0db93a0e99f85bd1047a37d
Experimental Result
回答比較 QuAC vs $ teacher_{sim}
https://gyazo.com/4af0caf5d36025613cfe066e18c812f3
50の会話の中に359の質問
QuACと$ teacher_{sim} が同じ回答: 77質問
QuACと$ teacher_{sim} の回答が重複箇所がある: 106質問
QuACと$ teacher_{sim} の回答に重複箇所がない: 176質問
$ teacher_{sim} が複数の回答をしている: 41質問
回答: 人手評価
フライスのカッパ係数 0.4365 (中程度)
https://gyazo.com/26a3f44209b3fd75ac8a3490806b831d
QuACより$ teacher_{sim} の回答の各観点で優れている
$ teacher_{sim} のほうが87.7%で好まれている
$ teacher_{sim} は複数の回答スパンを選んでおり、よりよい答えを提供できている
このタスクでは、幻覚のリスクを抑えるため、LLMには与えられたテキストから質問に答えるような制限をしている
LLMにはクラウドソーシングのアノテーションを置き換えるポテンシャルを示している
会話: 人手評価
$ teacher_{sim} のほうが87.7%で好まれる結果となった
Siro et al. を参考に、人手評価における自由記入の理由をいくつかのカテゴリに分類し分析
面白いことに、$ teacher_{sim} の回答の方が長いにも関わらず、簡潔という理由で好まれていた
SIMULATION EVALUATION
SimQuAC Dataset
SimQuACデータセット
GPT-4を利用して$ student_{sim} と $ teacher_{sim} を実装しシミュレーション
QuACデータセットからランダムで342会話を選択しそのトピックを利用し、334会話をシミュレーション
4,005の質問、平均1.32の回答
https://gyazo.com/eee5475fcb8e50dbff6e442c8edc52fe
Student Evaluation
会話における生徒の役割は、質問したり、トピックを探索したりすることであり、どちらが「良い」かを決めるのが難しい
言語的特徴などの様々な側面から2つのシステムの動作の違いを強調することに重点をおく
質問比較: QuAC vs $ student_{sim}
表6にそれぞれの質問を記載
GPT-4はより詳細で長い質問をする傾向がある
QuACでは4つ目の質問で終わるが、SimQuACではそれ以降も質問が続いている
https://gyazo.com/66d5644ed335da74bbfd13c623b60ef6
Coverage
質問で得られた回答のCoverageをQuACとSimQuACを比較
SimQuACのCoverageはQuACより有意に高かった
https://gyazo.com/536638f9af827b7883f9787ec2b52903
会話のフロー
会話の流れを形成する質問を比較する
この実験の目的は、会話の流れの自然さとトピック遷移のスムーズさを評価すること
会話の流れが、テキストでの出現順序に全く同じ場合には自然さが低いのではという仮説
KRCC (Kendal rank correlation coefficient)で評価
テキストに回答が出てくる順序(質問順)とシミュレーションした質問の順序との順位相関係数
質問A, B, Cがあり、その回答スパンがテキスト中ではB, A, Cとなっていた場合、質問順はB, A, Cとなる
順位相関係数が小さいほど、2つのリストの距離が異なっている
KRCCはSimQuACのほうが平均的に低い値となった
QuACはテキストと同じ順序のことが多く、SimQuACはテキストの順序とは異なることが多い
どちらが自然かを示すものではないが、違いがあることがわかる
https://gyazo.com/2ea1a52b728cfac9310014dafd1d2531
Reading Comprehension Benchmarking
QuACとSimQuACの違いをより深く理解するために、事前学習済みの識別的および生成的な読解モデルを利用する
SQuADデータセットで事前学習されたモデルを利用し、2つのデータセットでテストする
SQuAD: 100,000+ Questions for Machine Comprehension of Text
ファインチューニングはしてない
正確な比較のため、SimQuACでは回答のない会話の質問は最大3つまでと制限をつける
実験結果
EMはExact Match
QuACより、SimQuACでテストした場合にほとんどのモデルで良い性能となった
LLMでシミュレートしたデータが、これらのモデルでより好まれたと思われる
EMの値はSimQuACが低かった
LLMはより長いスパンの回答を生成する傾向があり、Exact Matchは難易度が高かったと思われる
識別モデルよりも生成モデルのほうがスコアが高い
特定のタスクに生成型LLMを使うことの重要性を示している
https://gyazo.com/543174e45ab5c4f50111b9af6b84a9db
所感
評価に対する試行錯誤が見られるのは面白いが、評価はやはり難しい