BLEU, ROUGE, F1スコアなど

RAG(Retrieval-Augmented Generation)の「評価指標(Evaluation Metrics)」では、生成されたテキストの品質や検索精度を測るために、BLEUROUGEF1スコアなどが広く用いられます。以下では、それぞれの指標の意味、特徴、RAG文脈における使い方について詳しく説明します。


1. BLEU(Bilingual Evaluation Understudy)スコア

  • 概要:
    BLEUは、生成文がどれだけ「参照文(正解文)」とn-gram単位で一致しているかを測定する指標で、特に機械翻訳の評価に多く用いられています。

  • 計算方法:

    • 1-gram、2-gram、…といった複数のn-gramについて、生成文と参照文との一致率を算出。

    • ブレベティペナルティ(短すぎる文へのペナルティ)を適用。

  • 値の範囲: 0〜1(または0〜100点としてスケールされる場合あり)

  • RAGにおける使い方:

    • Generatorが生成した回答が、ゴールドスタンダード(正解回答)とどれだけ一致しているかを確認。

    • 固定表現に強く、一語一句一致が求められる応答に向いている。

  • 注意点:
    意味の正確性よりも文字列の一致に偏るため、柔軟な自然言語応答の評価には限界がある。


2. ROUGE(Recall-Oriented Understudy for Gisting Evaluation)スコア

  • 概要:
    ROUGEは、生成文と参照文の**重複語(オーバーラップ)**を評価する指標で、特に要約タスクでよく使われます。

  • 主な種類:

    • ROUGE-N: n-gramベースの一致(例:ROUGE-1、ROUGE-2)

    • ROUGE-L: 最長共通部分列(LCS: Longest Common Subsequence)に基づく一致

  • 値の範囲: 0〜1

  • RAGにおける使い方:

    • 生成文が参照文に含まれる語句やフレーズをどれだけカバーしているか(主にRecallベース)を評価。

    • 複数の適切な言い回しがある応答にもある程度対応できる。

  • 利点:
    語順が多少違っても対応可能で、柔軟な評価が可能。


3. F1スコア(調和平均)

  • 概要:
    F1スコアは、**Precision(適合率)Recall(再現率)**の調和平均です。生成文がどれだけ「正確」かつ「網羅的」かをバランスよく評価できます。

  • 計算式:

    F1=2PrecisionRecallPrecision+RecallF1 = \frac{2 \cdot \text{Precision} \cdot \text{Recall}}{\text{Precision} + \text{Recall}}

  • RAGにおける使い方:

    • トークンやキーワード単位でのマッチングに用いられる。

    • QAタスク(質問応答)において、予測文とゴールド文との共通トークンを用いて計算される。

  • 利点:

    • RecallとPrecisionのトレードオフを調整する指標。

    • 特に「回答の一部が正しいが一部抜けている」といった場合の評価に有効。


補足:RAGにおける評価の難しさ

RAGはRetrieverGeneratorが協調して動作するため、評価には複数の観点が必要です。

評価対象 指標例 説明
Retriever Recall@k、Precision@k 正しいドキュメントが検索結果に含まれているか
Generator BLEU、ROUGE、F1 正しい情報に基づいた自然言語文が生成されたか

まとめ

指標名 特徴 向いているケース
BLEU n-gramの精度を重視 固定表現の正確な出力
ROUGE 参照との語句の重なり 柔軟な自然言語生成、要約など
F1スコア PrecisionとRecallの調和 回答の部分的正答・網羅性のバランス

これらの指標を組み合わせることで、RAGによる生成結果の内容の正確さ・表現の自然さ・網羅性を総合的に評価できます。

生成日:2025/06/07