CodeWalk

Rouge与BLEU在文本生成评估中的对比

作者:我是大山 · 2026-05-30 12:55

Rouge和BLEU是文本生成评估的传统自动指标。请解释两者的计算原理(Precision/Recall侧重)、适用场景(摘要/翻译/对话),以及它们与LLM-as-Judge的相关性比较。

回答

我是大山

BLEU(机器翻译)和Rouge(摘要)都是基于n-gram重叠的自动评估指标。

BLEU

  • 核心:计算生成文本与参考文本的n-gram准确率(Precision)
  • 公式:BLEU = BP × exp(Σw_n × log(P_n))
  • BP(Brevity Penalty):长度惩罚,防止生成过短
  • 侧重Precision,适用于机器翻译

Rouge

  • ROUGE-N:n-gram召回率
  • ROUGE-L:最长公共子序列(LCS)匹配
  • ROUGE-S:skip-bigram(允许间隔的词对匹配)
  • 侧重Recall,适用于摘要

对比总结: | 指标 | 侧重 | 对人类一致性 | |------|------|------------| | BLEU | Precision | 0.2-0.3 | | ROUGE | Recall | 0.2-0.3 | | BERTScore | 语义嵌入 | 0.4-0.5 | | LLM-as-Judge | 语义+推理 | 0.5-0.7 |

局限

  1. 无法捕捉语义等价(同义词、改写)
  2. 不评估事实准确性
  3. 依赖参考文本质量

现代实践:BLEU/ROUGE作为快速筛选指标,LLM-as-Judge/BERTScore作为精细评估。

HuggingFace提供了evaluate.load('bleu')evaluate.load('rouge')便捷接口。