AIエージェント活用実践編Capstone-A — RAG型業務QAエージェント

評価 — MRR と hallucination 検知

無料公開レッスン / 読了目安 7


学習のねらい

RAGシステムを開発する上で、システムがどれだけ正確で信頼性の高い回答を生成できるかを客観的に評価することは非常に重要です。 このレッスンでは、RAGシステムの評価指標として広く使われる「MRR(Mean Reciprocal Rank)」と、LLMが事実に基づかない情報を生成する「幻覚(hallucination)」の検知方法について学びます。 これらの評価方法を理解し、RAGシステムの性能を定量的に測定できるようになりましょう。

RAGシステムの評価指標

RAGシステムの評価は、主に「検索の質」と「生成の質」の2つの側面から行われます。

1. 検索の質 — MRR (Mean Reciprocal Rank)

MRRは、検索システムが正しい情報をどれだけ高い順位で提示できるかを測る指標です。 「Golden Set(ゴールデンセット、正解データセット)」と呼ばれる、質問とそれに対する正解のチャンク(または正解の回答)のペアを使って評価します。

MRRの計算方法:

  1. 各質問に対し、RAGシステムが関連チャンクを検索します。
  2. 検索結果の中に正解チャンクが含まれていた場合、そのチャンクが何番目に表示されたか(ランク)を確認します。
  3. ランクの逆数(Reciprocal Rank)を計算します。
    • 1位なら 1/1 = 1.0
    • 2位なら 1/2 = 0.5
    • 5位なら 1/5 = 0.2
    • 正解チャンクが見つからなかった場合は 0
  4. 全ての質問について逆数ランクを計算し、その平均を取ります。これがMRRです。

: 3つの質問に対する検索結果

  • 質問1: 正解が1位に表示 → 逆数ランク 1.0
  • 質問2: 正解が3位に表示 → 逆数ランク 0.33
  • 質問3: 正解が見つからず → 逆数ランク 0

この場合のMRRは (1.0 + 0.33 + 0) / 3 = 0.44 となります。 MRRは 0 から 1 の間の値を取り、1 に近いほど検索性能が高いことを示します。 「MRR@K」は、検索結果の上位K件の中に正解が含まれる場合のみ評価するという意味です。例えば「MRR@10」なら、上位10件の中に正解があれば評価します。

2. 生成の質 — Hallucination (幻覚) 検知

Hallucinationとは、LLMが与えられたコンテキスト情報にない事実を、あたかも真実であるかのように生成してしまう現象です。RAGシステムでは、この幻覚をいかに抑制するかが重要になります。

Hallucination率の計測方法:

Hallucinationの検知には、主に以下の2つのアプローチがあります。

  1. 人間による評価: 最も確実な方法です。専門家がLLMの回答と、その根拠となったチャンクを比較し、回答が事実に基づいているか、幻覚がないかを判断します。時間とコストがかかりますが、初期の評価では不可欠です。
  2. LLMによる自己評価: 別のLLM(または同じLLMを別のプロンプトで)を使って、生成された回答が与えられたコンテキスト情報のみに基づいているかを評価させます。
    • プロンプト例:
      以下の「コンテキスト情報」と「生成された回答」を比較し、
      回答がコンテキスト情報に書かれていない事実を含んでいるか判断してください。
      幻覚がある場合は「True」、ない場合は「False」と出力してください。
      
      <コンテキスト情報>
      {{ 検索されたチャンクのテキスト }}
      </コンテキスト情報>
      
      <生成された回答>
      {{ LLMが生成した回答 }}
      </生成された回答>
      
    • このLLMによる評価は、完全ではありませんが、大規模なデータセットに対して自動的に幻覚率を計測するのに役立ちます。

幻覚率は、幻覚と判断された回答数 / 全ての回答数 で計算されます。目標は、この率をできるだけ低く保つことです。

評価の自動化と継続的な改善

RAGシステムの評価は一度行ったら終わりではありません。ドキュメントが更新されたり、LLMモデルやEmbeddingモデルを変更したりするたびに、システムの性能を再評価し、改善を続ける必要があります。

  • CI/CDパイプラインへの組み込み: Golden Setに対するMRRやHallucination率の計測を、CI/CD(Continuous Integration/Continuous Delivery、継続的インテグレーション/デリバリー)パイプラインに組み込むことで、コード変更がシステムの性能に与える影響を継続的に監視できます。
  • フィードバックループ: ユーザーからのフィードバック(回答の良し悪し)を収集し、それを新たなGolden Setに追加したり、モデルの改善に役立てたりするフィードバックループを構築することも重要です。

まとめ

RAGシステムの評価には、検索の質を測るMRRと、生成の質を測るHallucination検知が不可欠です。 Golden Setを使ったMRR@Kの計算や、人間またはLLMによる幻覚検知を通じて、システムの性能を定量的に把握し、継続的な改善に繋げましょう。

参考リンク


評価 — MRR と hallucination 検知 | AIエージェント活用実践編 第1章 - AI研修