はじめに
本記事は、松尾・岩澤研究室「大規模言語モデル講座 基礎編」で学んだ内容をもとに、講義内容を自分なりに整理し、自分の言葉で説明できるようになることを目的としたまとめです。
今回は基礎編の最終回の講義「学習データと評価ベンチマークの整備」を題材に、
- LLMの学習データの種類と整備方法
- LLMを評価するためのベンチマーク資源と発展的手法
について整理していきます。
LLMの学習パイプラインとデータの役割
LLMの開発は、大きく以下の3つの学習フェーズから構成されます。
-
事前学習(Pre-training)
大規模コーパスを用いた自己教師あり学習により、語彙・文法・知識といった基礎的な言語能力を獲得する段階 -
ファインチューニング(Supervised Fine-Tuning)
ラベル付きデータを用いて、特定タスクや指示追従能力を向上させる段階 -
強化学習(RLHF など)
人間やAIのフィードバックを用いて、モデルの出力を人間の価値観や期待に近づける段階
これらすべての段階の学習にデータが使われています。
モデルがデータから知識や能力を学んでいる以上、データの質と量がモデルの性能を左右する大きな要素になります。
事前学習データと品質向上のための整備
事前学習データの種類
事前学習では、Webページ、書籍、会話データ、コード、科学文書など、多様なテキストが使われます。
これらのデータは、それぞれ異なる知識や表現を含んでおり、モデルの汎用性を高めるために組み合わせて利用されます。
フィルタリングによる品質向上
Web由来のデータは量が膨大である一方、ノイズや重複も多く含まれます。そのため、
- 有害・低品質テキストの除去
- 重複文書の削除(例:MinHashによる類似判定)
- 構造的・言語的なルールに基づく絞り込み
といった厳密なフィルタリングが行われます。
高度なフィルタリングを施したデータセットでは、ベンチマーク性能が向上することが知られています。
データ拡張とLLMを用いたデータ生成
高品質データの確保が難しくなる中、データ拡張(Data Augmentation)は重要な戦略となっています。
代表的な手法として、
- 単語置換やBack-translationなどのシンプルな拡張
- プロンプトを用いたLLMによる生成
- 検索結果を取り込む検索ベース拡張(RAG)
- プロンプトと検索を組み合わせたハイブリッド手法
などがあります。
LLMの性能評価とベンチマーク
評価の目的
LLMの性能評価には、主に以下のような目的があります。
- モデルがどのような能力を持っているかを正確に把握する
- 性能上の課題や改善余地を特定する
- 学習データや学習手法の違いが性能に与える影響を検証する
このため、評価指標やベンチマークの選択は、評価結果の解釈を大きく左右する重要な要素となります。
LLMの性能評価
評価の目的に応じて、適切な評価方法を選択する必要があります。
-
特定の領域・タスクの性能を評価したい場合
各タスクに特化した評価用データセットを用い、精度や正答率などを測定する -
LLMの総合的な性能を把握したい場合
複数タスクを横断的に含むベンチマークデータセットを用いて評価する -
人間による評価が知りたい場合
Chatbot Arenaのように、ユーザが2つのLLMの出力を比較評価し、その結果を集計してリーダーボードとして可視化されたものを参照する -
人手評価の代替として自動化したい場合
ChatGPTやGPT-4などのLLMを評価者として用いる LLM-as-a-Judge により、人間評価に近い基準で出力品質を評価することが可能
今後の課題と展望
LLMの学習データと評価を巡っては、
- 個人情報や著作権への配慮
- 評価に内在するバイアスの問題
- LLMを評価に使うこと自体の限界
といった課題が残されています。
性能向上と社会的要請を両立させるためには、今後も継続的な技術的・制度的対応が求められそうです。
おわりに
事前学習・ファインチューニング・強化学習、そして評価のすべての段階で、データが重要な役割を担っています。
モデルの性能はモデル構造だけで決まるわけではなく、「どんなデータを使い、どう整備し、どう評価するか」にも大きく左右されている、という点が印象に残りました。
フィルタリングやデータ拡張、LLMを使った自動評価といった手法を知ることで、LLMを単に「便利なツール」として使うだけでなく、なぜこの出力になるのか、どうすれば改善できるのかを考えられるようになります。
こうした視点を持つことで、LLMとの向き合い方が少し変わってくるのではないかと思います。
今後は、実際に手を動かしながらデータ作成や評価を試してみたり、より実践的な手法にも触れていきたいと考えています。