NVIDIAの研究者らは、Llama-2などをベースに「ChatQA」という質問応答タスクに強いモデルを作成し、GPT-4と同等の精度を持つと報告しています。
指示チューニング(モデルをタスクに適応させること)を2段階で行うことにより、LLMの質問応答タスクのゼロショット性能が大幅に改善されるとのことです。

参照論文情報
- タイトル:ChatQA: Building GPT-4 Level Conversational QA Models
- 著者:Zihan Liu, Wei Ping, Rajarshi Roy, Peng Xu, Chankyu Lee, Mohammad Shoeybi, Bryan Catanzaro
- 所属:NVIDIA
- URL:https://doi.org/10.48550/arXiv.2401.10225
研究背景
質問応答はLLMのアプリケーション(例えばChatGPT)で最も好まれている使い方の一つです。GPT-4をはじめとしたLLMは質問応答タスクに秀でており、さまざまな製品開発や研究に大きな影響を与えています。
モデルの質問応答能力には以下の要素が大事だと考えられています。
- 会話形式で直接やりとりできる
- 特定のデータセットに依存していない
- 様々な分野に対応できる
- ゼロショットで回答を生成できる
- 長文のドキュメントを参照できる
- RAGに対応している(情報を検索して統合できる)
質問応答能力で最も強いモデルであるGPT-4はクローズドな商用モデルであり、匹敵するほど精度の高いモデルを手元で構築できるノウハウが求められています。
そのような背景の中、NVIDIAの研究者らはLLMがゼロショットで会話型の質問応答タスクを行う能力を向上させるため、2段階の指示チューニング手法とデータ収集の方法論を編み出しました。
そして、その方法論に基づいて「ChatQAモデル」ファミリーを構築し、最先端のモデルと比較して結果を報告しています。

下記では手法の概要、実験結果などを紹介します。
方法論
今回研究者らは、
人の質問に対して適切な回答を生成する能力に特化したモデルChatQAの開発方法を考案しました。前述した通り2段階の指示チューニング手法に基づいて行われるものですが、ここで指示チューニングとは、より正確に人の指示を理解して従う能力を与える訓練方法のことです。指示と正しい応答がペアになったデータセットを使用して、モデルの微調整を行います。

ステップ1:教師ありファインチューニング
最初のフェーズでは、まず事前学習されたLLMに教師ありファインチューニング(Supervised Fine Tuning:SFT)が適用されます。なお教師ありファインチューニングとは、特定のタスクに特化したデータセットを使って、モデルの性能を向上させる処理方法です。
今回使用される教師ありファインチューニングのためのデータセットには、様々な種類のデータが含まれています。例えば、ソーシャルダイアログデータセット「Soda」や、詳細な回答を含む長文質問応答データセット「ELI5」などです。さらに、FLANや思考の連鎖データセット、LLM用の合成指示チューニングデータセットなども使用されます。
実際にSFTを行う際は、まず全てのデータを会話形式に統一します。具体的には「システム」、「ユーザー」、「アシスタント」という役割を追加して、指示と応答のペアを作ります(指示&応答ペアを作るのがSFTの原則)。そして統一後のデータセットを使用し、LLMにファインチューニングを適用します。
ステップ2:文脈強化指示チューニング
モデルの質問応答力をさらに向上させるために、次の段階として、文脈化された質問応答データセットを指示チューニングに使用します。
なお、この質問応答データセットは人間が注釈付けしたものです。7,000の対話が含まれ、多くの質問と回答が含まれています。なお、インターネットから収集された様々なトピックの文書に基づいて作成されています。
そして以下のデータセットも追加されています。
- GPT-3.5-turboを使用して、合成された会話型質問応答データセット
- 表計算ドキュメントや算数計算を扱うためのデータセット
- 文脈化された単一ターン質問応答データセット
さらにRAGも
文書が長すぎてLLMに入力できない場合も想定して、会話クエリを扱えるリトリーバ(検索エンジン)が必要です。会話の履歴と現在の質問を組み合わせ、関連する文脈を文書から取得します。
なおリトリーバーのSFTは追加の計算コストがかかりますが、クエリの質を高めることができます。

実験
使用されたモデル
研究者らは、異なるサイズのモデルに対して実験を行いました。
まず、各種サイズのLlama2に対してSFTを行ったLlama2-SFT-7B, 13B, 70Bが比較対象です。
次に、強力な指示に従う能力と会話型質問応答能力を持つとされるLlama2-Chat-7B, 13B, 70Bも比較対象です。
これに加えて、自社(NVIDIA)で事前学習したGPT-8B, 22Bモデルに対しても実験を行いました。3.5兆トークンで事前学習されており、さらにSFTを施しました。
上記のモデル群をチューニングしたものと、OpenAIのモデル、GPT-3.5-turbo-0613 (4k) とGPT-4-0613 (8k) とを比較しました。
評価ベンチマーク
1. 長文ドキュメントデータセット
会話型質問応答タスクの評価には、長い文書を含む5つのデータセットが使用されます。そのままLLMに入力するには長すぎるのが特徴です。
例えば、Doc2Dialは、複数のドメインをカバーする文書(とそれに基づく質問応答)データセットです。ユーザーが文書に関する質問をし、エージェントがそれに回答する形式のダイアログサンプルが含まれてます。
またQuACやQReCCは、Wikipediaの文書をベースにしたデータセットで、各ダイアログには複数のWikipediaリンクが関連付けられています。
そしてTopiOCQAとINSCITは、Wikipedia全体を基にしており、より広範なトピックをカバーします。
2. 短文ドキュメントデータセット
実験の多様性を高めるために、短い文書(1.5Kワード以下)を含む5つの会話型質問応答データセットも収集されました。LLMにすぐに入力できるボリュームです。
例えばCoQAデータセットは、子供の物語や文学、学校の試験、ニュース、Wikipediaなど、幅広いドメインをカバーしています。
またDoQAは、料理、旅行、映画といったドメインをカバーするデータセットです。
そしてConvFinQAやSQA、HybridDialは、金融レポートやWikipediaの表など、より複雑な数値推論を必要とするデータセットです。
実験結果
実験の結果、llama-2-70Bを2段階指示チューニングしたモデル(ChatQA-70B)がGPT-4よりも平均スコアで匹敵する結果となりました。
GPT-3.5に対しては大きく上回っています。

分析すると以下のことがわかりました。
ステップ1の教師ありファインチューニング(SFT)は、ChatQAの指示に従う能力を高めるために重要でした(SFTを除外すると、平均スコアが低下する)。
また単一ターン質問応答データセットが、モデルの複数ターンQA能力にどのように影響するかといえば、全てのベンチマークデータセットでスコアが向上しています。
さらに、会話型質問応答データがモデルの複数ターン質問応答能力にどのように影響するかを調べるために、HumanAnnotatedConvQAデータを取り除いた場合が分析されています。結果、性能が著しく悪化することが分かりました。
また、人間による注釈付きデータとGPT-3.5-Turboによる合成データを使用したChatQAモデルを比較すると、両方のデータセットで平均スコアがほぼ同じであることが分かりました。ただし、人間による注釈付きデータは特定のデータセットでは大きく貢献しています。
ChatQA-70BとGPT-4にフォーカスして性能をまとめると、多くの場合において同等の結果を示し、特定のタスク(例えば算数計算)ではChatQAの方が優れていることが分かりました。

さらに細かい分析
ChatQA-70Bは、テキストのみのドキュメント(avg-text)で優れた結果を示し、優れたテキスト理解能力を持っていることが分かります。
一方、GPT-4は表データ(avg-table)でより優れたQA能力を示しています。
また、検索が必要ないデータセットではChatQA-70BとGPT-4がほぼ同等の結果を示しています。

「答えられないケース」について
研究者らは、モデルが与えられた文脈内で質問に答えられるかどうかを判断する能力にも焦点を当てています。
この能力を評価するために、「答えられないケース」が含まれているQuACとDoQAのデータセットが使用されました。「答えられないケース」とは、文脈内で適切な答えが見つからない状況を指します。
答えられないケースでも適切に応答することがモデルの信頼性につながります。逆にそれができないと、信頼性が低い(=ハルシネーションが発生する)とみなされることもあります。

ChatQAモデルとOpenAIモデルを比較した結果、ChatQAに関しては人間による注釈付きデータ(HumanAnnotatedConvQA)を使用することで、「答えられないケース」における平均正確性が顕著に向上することがわかりました。これは、人間によるデータの注釈の質が高いためです。
GPT-4は、このタスクで強力な能力を示しています。ただしChatQA-70BもGPT-3.5-turboを上回る平均正確性を達成しており、GPT-4にもせまる性能です。
なお「答えられるケース」に高い正確性を示すモデルは、「答えられないケース」では正確性が低下する傾向があり、その逆もまた然りという結果でした。
まとめ
本記事では、NVIDIAの研究者らが開発したGPT-4レベルの質問応答タスク性能をオープンソースモデルのLlama 2で実現する手法について、方法論と実験結果を紹介しました。
研究者らは、7Bから70BのサイズのChatQAモデルを開発し、10の会話型QAデータセットでGPT-3.5-turboとGPT-4と比較しています。ChatQA-70Bはテキストのみのドキュメントで顕著な結果を示し、GPT-4は表データでわずかに優れています。
また、ChatQAは「答えられないケース」での正確性も高く、単一ターンと複数ターンのQAデータセットを用いたファインチューニングが功を奏したと考察されています。
2段階の指示チューニングを工夫することで、高性能な会話型QAモデルの構築が可能であることが示されている研究結果です。