2023年12月3日

离线评测

离线评测是在标准化 benchmark 数据集上,通过自动化指标(准确率、pass@k、LLM 打分等)量化评估模型能力,是模型选型和迭代过程中成本最低、效率最高的评测方式。

知识库大模型评测evaluationoffline

离线评测

先说结论

离线评测是在标准化 benchmark 数据集上,通过自动化指标(准确率、pass@k、LLM 打分等)量化评估模型能力,是模型选型和迭代过程中成本最低、效率最高的评测方式。

自动评测基准

通用知识评测

基准 说明 覆盖领域 特点
MMLU 多任务语言理解 57 个学科 已趋于饱和,顶级模型 90%+
MMLU-Pro 更难的知识评测 14 个学科 10 选项(而非 4 个),更难
HellaSwag 常识推理 日常场景 句子完形填空
ARC 科学推理 多选科学题 Challenge/Easy 两级
WinoGrande 共指消解 常识推理 需要世界知识
GPQA 研究生级专家问答 物理/化学/生物 专家验证,极难

编程能力评测

基准 说明 评估方式
HumanEval Python 函数补全(164 题) pass@k
HumanEval+ 80x 测试用量的增强版 pass@k(更可靠)
MBPP 基础 Python 编程(974 题) pass@k
LiveCodeBench 从竞赛平台持续抓取新题 动态更新,防泄露
SWE-bench 真实 GitHub issue 修复 解决率
MultiPL-E 多语言代码生成 pass@k

数学与推理评测

基准 说明 难度
GSM8K 小学数学应用题(8,500 题) 中等
MATH / MATH-500 竞赛数学
AIME 美国数学邀请赛 极高
BBH Big-Bench Hard,难题子集
DROP 离散推理 中高

指令遵循评测

基准 说明 评估方式
MT-Bench 多轮对话质量(80 题) GPT-4 打分 1-10
AlpacaEval 2.0 指令遵循自动评测 胜率
IFEval 指令格式遵循 规则匹配(严格)
Arena Hard Chatbot Arena 难题子集 GPT-4 打分

多模态评测

基准 说明
MMMU 多模态多学科理解
MathVista 视觉数学推理
MMBench 多模态综合评测
DocVQA 文档视觉问答

HumanEval pass@k

QUESTION 面试高频:pass@k 的含义和计算公式?

pass@k 衡量模型在 k 次采样中至少一次通过所有单元测试的概率:

pass@k=1(nck)(nk)\text{pass@k} = 1 - \frac{\binom{n-c}{k}}{\binom{n}{k}}

其中 nn 为总采样次数,cc 为通过次数。

  • pass@1:一次性通过率,反映实际部署体验(用户通常只看一次生成)
  • pass@10:10 次中至少一次通过,反映模型潜力上限
  • pass@100:100 次中至少一次通过,理论上限

HumanEval+ 的改进:原始 HumanEval 平均仅几个测试用例,模型可能通过巧合而非正确实现通过。HumanEval+ 增加了约 80 倍的测试用例,大幅减少假阳性。

LLM-as-a-Judge

核心思路

使用更强的模型(如 GPT-4、Claude)作为评委,评估模型输出质量。

评估方式

方式 说明 适用场景
成对比较 给评委两个输出,选择更好的 排名、模型对比
单点评分 给评委一个输出,打 1-10 分 绝对质量评估
参考评分 与参考答案对比打分 有标准答案的场景

评估维度

维度 说明
Helpfulness 回答是否解决了用户问题
Relevance 回答是否与问题相关
Accuracy 事实是否正确
Completeness 是否全面回答了问题
Fluency 语言是否自然流畅

LLM-as-a-Judge 的偏差

QUESTION 面试高频:LLM-as-a-Judge 有什么偏差?

偏差类型 说明
长度偏差 偏好更长的回答
格式偏差 偏好 Markdown 格式、列表结构
自偏好 偏好自己的输出风格
位置偏差 成对比较中偏好排在前面的回答
冗余偏差 偏好"先肯定后补充"的模式

研究表明 GPT-4 作为裁判与人类判断的一致率约为 80%,虽不完美但已具备实用价值。

SFT 前后对比评测

回归检测

  • 确保 SFT 没有退化基座模型的能力
  • 在通用基准上比较 SFT 前后的得分
  • 特别关注微调领域外的能力退化(灾难性遗忘

目标领域验证

  • 在微调目标领域的测试集上验证提升
  • 使用领域专家评估
  • 检查是否过拟合训练数据

评测工具

工具 用途 特点
Open LLM Leaderboard 标准化评测排名 HuggingFace 维护
HELM 多维度全面评测 Stanford CRFM
lm-eval-harness 灵活的评测框架 EleutherAI 开源
Promptfoo 回归测试 CLI 支持自定义评测
DeepEval 多维度 LLM 评估 支持 LLM-as-a-Judge

前沿趋势

  1. 更难的基准:MMLU-Pro、GPQA 取代趋于饱和的旧基准
  2. 动态更新基准:LiveCodeBench 等持续引入新题
  3. 真实任务基准:SWE-bench 评估工程能力而非竞赛能力
  4. 多模态评测:MMMU、MathVista 覆盖视觉理解
  5. Agent 评测:BFCL、ToolBench 评估工具调用能力

如果要对外讲,可以怎么概括

"离线评测是模型选型和迭代的基础。我会按维度选择基准:知识广度看 MMLU/MMLU-Pro,代码能力看 HumanEval+/LiveCodeBench,对话质量看 MT-Bench/Chatbot Arena。关键是要理解每个基准的局限:MMLU 已饱和且有数据泄露风险,MT-Bench 的 LLM-as-a-Judge 有长度偏差,HumanEval 测试用例不足导致假阳性。我的做法是多基准交叉验证,同时构建与业务场景匹配的私有评测集。评测结果必须注明设置(few-shot 数、prompt 模板、温度),确保可复现。"

最后记几条

  1. 多基准交叉验证——不依赖单一基准
  2. pass@1 反映部署体验,pass@10 反映潜力上限
  3. HumanEval+ 优于 HumanEval——80x 测试用例减少假阳性
  4. LLM-as-a-Judge 约与 80% 人类一致性——有偏差但实用
  5. SFT 必须做回归检测——确保不退化基础能力

参考资料

  • Hendrycks, D. et al. "Measuring Massive Multitask Language Understanding" (2021)
  • Chen, M. et al. "Evaluating Large Language Models Trained on Code" (2021)
  • Zheng, L. et al. "Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena" (2023)
  • Wang, Y. et al. "MMLU-Pro" (2024)
  • LiveCodeBench: https://livecodebench.github.io/

延伸阅读