LLM 评估汇总:真的吊打 LLaMA-3,媲美 GPT-4 吗?
一、背景
在过去的一年多里,国内在大模型领域的发展异常迅速,涌现出上百个大模型,许多模型已经迭代了多个版本,并且各种指标不断刷新。与此同时,我们也经常在国内的一些文章中看到声称“吊打 LLaMA 3”或“媲美 GPT-4”的说法。那么,国内的大模型真的已经达到对标 OpenAI 的水平了吗?
实际上,由于大模型的评估指标种类繁多,各种文章中所对比的模型也不尽相同,甚至有时会出现一些误导信息。因此,我们决定系统性梳理一下公认性能较强的大模型的相关指标,以全面了解各种模型的能力。
如下图展示了我们梳理的一部分常见文本类基准评估指标(图中的不同底色表示数据来源,比如淡绿色表示数据来自 LLaMA 3 官方,淡蓝色表示数据来自 Claude 3 Paper,灰色表示来自 OpenAI 官方,淡紫色表示来自 Mixtral 官方等)。需要说明的是,这仅仅是部分常见指标,也并未涉及多模态基准评估。此外,由于数据比较多,且来源繁杂,难免会有遗漏或错误的地方,欢迎指出和纠正。本文中,我们也会简单介绍在收集这些数据时发现的一些问题,遇到的困惑,以及具体数据的来源,以便大家也能更准确的分辨各种大模型的能力。
二、引言
2.1 评估指标
常见的文本任务评估指标包括如下几个:
- MMLU:通用知识和推理能力。
- MATH:数学解决问题能力。
- GSM8K:小学数学。
- HumanEval:Python 编码任务。
- GPQA:大学生物、物理和化学问答。
- DROP:阅读理解和算术。
- Big-Bench-Hard:综合评估。
- ARC-Challenge:常识推理。
- HellaSwag:常识推理。
- AGIEval:大学入学考试和资格考试。
- MT-Bench:多轮对话基准测试。
- AlpacaEval 2.0:指令跟随能力。
2.2 评估框架
Harness 是 EleutherAI 开源的 LLM 评估框架,对应的代码库为:GitHub - EleutherAI/lm-evaluation-harness: A framework for few-shot evaluation of language models.。也是 Huggingface 官方 Open-LLM-Leaderboard (a Hugging Face Space by open-llm-leaderboard)后端使用的评估框架,在很多论文中被使用。
Helm 是斯坦福大学开发的 LLM 评估框架,对应的论文为:[2211.09110] Holistic Evaluation of Language Models,对应的代码库为:https://github.com/stanford-crfm/helm。其可以评估模型在 12 个方面的能力。
simple-evals 是 OpenAI 最近开源的针对几个常见指标的评估工具 (GitHub - openai/simple-evals),也是其 GPT-4o 使用的评估工具。如下图所示为其对应的评估结果:
OpenCompass 是一个国内常用的评估框架,对应的代码库为:OpenCompass is an LLM evaluation platform, supporting a wide range of models (Llama3, Mistral, InternLM2,GPT-4,LLaMa2, Qwen,GLM, Claude, etc) over 100+ datasets.。其也提供详细的 Leaderboard:OpenCompass司南。如下图所示:
2.3 Few-shot & CoT
在评估中经常会使用 few-shot 和 CoT 方法,如下图所示(图片来自 [2205.11916] Large Language Models are Zero-Shot Reasoners)为 0-shot,few-shot 以及是否包含 CoT 的区别,简单来说:
- few-shot就是表示 Prompt 中会提供一些示例,没有示例表示为 0-shot,5 个示例为 5-shot。
- CoT就是在 Prompt 中会提供 CoT(Chain of Thought,[2201.11903] Chain-of-Thought Prompting Elicits Reasoning in Large Language Models),也就是推理过程。其中最经典的 CoT 为 “Let’s think step by step.”。
在基准评估中,为了公平对比,使用相同的配置才有参考价值。然而部分评估中并未清晰的列出对应的配置,如下图所示分别为 Introducing Qwen1.5 | Qwen 官网上关于 Qwen1.5 和 零一万物 上关于 Yi-1.5 模型的各种指标,很多都没有明确指出对应的配置,导致部分指标无法对齐:
2.4 Base 模型 & Instruction 模型
现在有很多开源的 LLM 都会提供 Base 模型和 Instruction 模型,其中:
- Base 模型:是在大量未标注的通用文本数据上进行无监督训练,比如网页、书籍、代码、新闻文章等。Base 模型适用于需要广泛自然语言理解和生成的场景,但对具体的任务可能不如专用模型。
- Instruction 模型:通常是在 Base 模型基础上,使用经过人工标注或筛选的指令数据通过有监督微调训练而来。这些数据的质量通常很高,而且有些时候会针对特定场景。这类模型更适合需要特定指令进行操作的场景。
虽然 Instruction 模型也是基于 Base 模型微调,但是他们的评估指标可能会有比较大的区别,如下图所示(meta-llama/Meta-Llama-3-70B · Hugging Face),对于 MMLU 指标:
- LLaMA 2模型的 Base 模型都比 Instruction 模型高,甚至差了 10 分以上。
- LLaMA 3模型的 Base 模型都比 Instruction 模型低。
我们在收集数据的时候发现很多地方会混淆两个模型的指标,比如经常看的 LMSys Chatbot Arena Leaderboard - a Hugging Face Space by lmsys 中就混淆了 Qwen1.5-110B 以及 Qwen1.5-72B 的 Base 模型和 Instruction 模型。参考 Qwen-1.5 的官方博客 Qwen1.5-110B:Qwen1.5系列的首个千亿参数开源模型| Qwen,下图中的 MT-bench 指标确实是 Qwen1.5-110B-Chat(Instruction)和 Qwen1.5-72B-Chat(Instruction)模型,但 MMLU 对应的是 Qwen1.5-110B(Base)和 Qwen1.5-72B(Base)模型:
2.5 不同模型版本
早期的 LLM 通常都会发布详细的技术报告,包括具体版本和性能指标的说明。然而,最近的很多 LLM 仅以简单的博客页面形式发布,甚至缺乏对模型及其评估指标的详细介绍,特别是一些闭源模型。这种变化为不同模型之间的横向对比带来了很大的挑战。如下图所示为 LMSys Chatbot Arena Leaderboard - a Hugging Face Space by lmsys 榜单,可以看出,排名前 12 的模型中,GPT-4 就有 4 个版本,Gemini-1.5 也有三个版本:
2.6 评估工具差异
很多公司都有自己的评估工具,其有些时候不会和开源社区的评估方式完全对齐,导致评估指标的差异。比如在 DeepSeek-V2([2405.04434] DeepSeek-V2: A Strong, Economical, and Efficient Mixture-of-Experts Language Model)中,作者使用了内部评估工具,导致有些结果和我们从 Qwen1.5 72B、Mixtral 8x22B 和 LLaMA3 70B 官方报告中看到的结果不太一致,图中红色部分为相应的官方数据:
在浪潮的源 2.0-M32 [2405.17976] Yuan 2.0-M32: Mixture of Experts with Attention Router 中,作者也提供了 Qwen1.5-72B Chat 的结果,但是看着是直接引用了下图所示 DeepSeek-V2-Chat 的结果。但是源 2.0-M32 中并没有说明自己使用的评估工具。
2.7 数据污染
数据污染问题在大模型训练中非常常见,没有经过仔细的数据清理过程,很可能会在训练集中混入部分基准评估数据。比如,OpenAI 的 GPT-4 Paper 中提到,其发现训练集中不小心混入了 BIG-Bench 数据,所以 GPT-4 Paper 中并未提供 BIG-Bench Hard 的评估结果。
最近 Scale AI 的研究员研究了 GSM-8K 数据泄漏问题,对应的 Paper 为:[2405.00332] A Careful Examination of Large Language Model Performance on Grade School Arithmetic。作者通过人工标注方式构建了 GSM-1K 数据集,其难度与 GSM-8K 类似,包含 1250 道小学数学题。作者使用该数据集对一些开源和闭源 LLM 进行了基准测试,发现部分模型在 GSM-1K 上的性能甚至比 GSM-8K 低 10% 以上,比如 math-shepherd-mistral-7b-rl 指标低了将近 13%;而 Claude 3 和 GPT-4 模型指标没有下降:
如下图所示为部分详细数据,可以看出其包含了多个我们常见的模型,甚至是微软最近发布的非常强大的小模型 Phi-3:
三、MMLU
[2009.03300] Measuring Massive Multitask Language Understanding 评估集是为了衡量文本模型的多任务准确性,其涵盖涵盖人文科学(humanitities)、社会科学(social science)、自然科学(hard sciences)等领域的 57 个子任务,比如小学数学、美国历史、计算机科学、法律等。题目都是多项选择题,通过测试语言模型在不同领域的知识和推理能力来评估其综合性能。
与其他语言理解评估集(如 GLUE、SuperGLUE 等)相比,MMLU 的任务种类更多,覆盖面更广,能够更加全面地评估大规模语言模型的能力。这使得 MMLU 成为当前评估大规模预训练语言模型的一个重要工具。几乎每个 LLM 都会评估并对比其在 MMLU 基准上的能力,而且绝大部分都是评估 5-shot 能力,少量模型会评估 5-shot+CoT 能力,比如 The Claude 3 Model Family: Opus, Sonnet, Haiku。
MMLU 指标相对比较统一,基本不会有太多歧义。然而,在 Massive Multitask Language Understanding (MMLU) on HELM 中,作者发现很多模型声称的 MMLU 指标和 Helm 中评估出来的有较大差距,如下图所示:
四、GSM-8K
各种模型基本都会提供 GSM-8K 评估结果,但对应的评估结果比较混乱。比如,有些是 0-shot+CoT 结果,有些是 8-shot+CoT,有些是 5-shot+CoT,甚至有些是 11-shot。Google Gemini([2403.05530] Gemini 1.5: Unlocking multimodal understanding across millions of tokens of context) 之前被吐槽的一个点就是拿 GSM-8K 11-shot 的结果和其他模型 8-shot,5-shot 的结果对比。
如下图所示为 GPT-4([2303.08774] GPT-4 Technical Report)中的关键结果,可以看出其 GSM-8K 的 92.0 为 5-shot+CoT 的结果,而 GPT-3.5 的 57.1 为 5-shot 的结果:
如下图所示为阿里的通义千问 Qwen1.5 介绍 | Qwen 中的官方评估结果,其并没有具体介绍 GSM8K 是 5-shot 还是 8-shot(不过从其开源的评估工具可以看出是 8-shot+CoT 的结果,具体可以参考 https://github.com/QwenLM/Qwen/blob/main/eval/gsm8k_prompt.txt),但是对应的结果中 GPT-4 的 92.0 为 5-shot+CoT 结果,Mixtral-8x7B 的 74.4 确实为 8-shot+CoT 结果。
实际上 Mixtral 官方提供了相应 5-shot 和 8-shot 的结果,如下图 Figure 4 所示(Cheaper, Better, Faster, Stronger | Mistral AI | Frontier AI in your hands)其 Mixtral 8x7B 的 5-shot 结果只有 58.4:
如下图 Table 3 所示,零一万物的 Yi 模型([2403.04652] Yi: Open Foundation Models by 01.AI)也存在同样的情况,论文中介绍的是 GSM-8K 的 8-shot 结果,但是 GPT-3.5 和 GPT-4 的是 5-shot 的结果。此外 Mistral 7B 的 GSM-8K 和 MATH 结果也比上图中 Mistral 的官方结果或者 [2310.06825] Mistral 7B 论文中的结果要低。
在浪潮的源 2.0-M32 [2405.17976] Yuan 2.0-M32: Mixture of Experts with Attention Router 中作者同样将 8-shot 的 GSM-8K 结果与 5-shot 的 Mixtral-8x7B,Mixtral-8x22B 进行比较,实际上两个模型对应的 8-shot 应该为 74.4 和 88.4:
五、MATH
MATH 的评估相对比较统一,基本上都是 4-shot 的结果,但是 GPT-4o,GPT-4T 相关结果都是 0-shot 的,具体也可以参考 OpenAI 的评估脚本 GitHub - openai/simple-evals,此外 Claude 3 同时提供了 0-shot 和 4-shot 结果,如下图所示:
六、GPQA
[2311.12022] GPQA: A Graduate-Level Google-Proof Q&A Benchmark 是一个比较新的评估集,是由生物、物理和化学领域的专家编写的多项选择题,问题的质量高且难度大。其全集 full(extended) 包含 546 个问题,main 和 diamond 是对应的两个子集,分别包含 448 和 198 个问题。如下图 Table 6 所示为作者针对 LLaMA-2-70B-Chat、GPT-3.5 和 GPT-4 的评估结果,可以看出,其也包含了 0-shot,0-shot+CoT,以及 few-shot+CoT 的配置:
在 Meta 的 LLaMA-3 meta-llama/Meta-Llama-3-70B · Hugging Face 中,作者并未特别说明使用的哪个集合,只介绍其为 GPQA(0-shot),不过在 llama3/eval_details.md at main 中提到是 Main 集合,并且没有说明使用 CoT,如下图所示:
在 The Claude 3 Model Family: Opus, Sonnet, Haiku 中,作者给出了 Claude 3 在 3 个集合上详细的评估结果:
在 Gemini Pro - Google DeepMind 中,Google Gemini 提供了 main 集合下的评估结果:
在阿里的通义千问 Qwen1.5-110B:Qwen1.5系列的首个千亿参数开源模型| Qwen 中同样没有介绍 GPQA 对应的集合,甚至未介绍是否是 0-shot:
七、HumanEval&BBH&HellaSwag&ARC-C&DROP
如下的几个指标相对比较统一,各个模型基本也都有相应的结果,如下图所示:
- HumanEval通常都是采用0-shot评估
- BIG-Bench Hard(BBH)通常采用3-shot+CoT评估
- HellaSwag通常采用10-shot评估
- ARC-C通常采用25-shot评估
- DROP通常采用3-shot评估
八、AlpacaEval 2.0
AlpacaEval 2.0 是一个指令遵循评估,它利用 LLM 来评估生成质量。在 AlpacaEval 中,会倾向于生成较长输出的模型。因此,在 AlpacaEval 2.0 中,作者引入了长度控制(Length-Controlled AlpacaEval),来缓解这种偏好。对应的论文为:[2404.04475] Length-Controlled AlpacaEval: A Simple Way to Debias Automatic Evaluators。对应的 Leaderboard 为:AlpacaEval Leaderboard。
九、LMSYS Chatbot Arena
国外社区经常会使用 Chatbot Arena(LMSys Chatbot Arena Leaderboard - a Hugging Face Space by lmsys)来评估 LLM 的能力。其相当于大模型的竞技场,都是通过真实用户打分结果来评估人类对模型的偏好,其更接近真实用户场景,也更加客观。对应的论文为:[2403.04132] Chatbot Arena: An Open Platform for Evaluating LLMs by Human Preference。这也是“零一万物 Yi-Large 在 LMSYS 中文榜单排名第一”的来源,如下图所示为按照 Arena Elo 排序的结果(截止 2024-06-01):
在 Chatbot Arena 中也提供了 MT-bench 和 MMLU 的相关指标,如下图所示为按照 MT-bench 排序的结果:
十、参考链接
- https://github.com/EleutherAI/lm-evaluation-harness
- https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard
- https://arxiv.org/abs/2211.09110
- https://github.com/stanford-crfm/helm
- https://github.com/openai/simple-evals
- https://github.com/open-compass/OpenCompass/
- https://rank.opencompass.org.cn/home
- https://arxiv.org/abs/2205.11916
- https://arxiv.org/abs/2201.11903
- https://huggingface.co/meta-llama/Meta-Llama-3-70B
- https://huggingface.co/spaces/lmsys/chatbot-arena-leaderboard
- https://qwenlm.github.io/zh/blog/qwen1.5-110b/
- https://arxiv.org/abs/2405.04434
- https://arxiv.org/abs/2405.17976
- https://crfm.stanford.edu/2024/05/01/helm-mmlu.html
- https://arxiv.org/abs/2405.00332
- https://arxiv.org/abs/2009.03300
- https://www-cdn.anthropic.com/de8ba9b01c9ab7cbabf5c33b80b7bbc618857627/Model_Card_Claude_3.pdf
- https://arxiv.org/abs/2403.05530
- https://arxiv.org/abs/2303.08774
- https://qwenlm.github.io/zh/blog/qwen1.5/
- https://github.com/QwenLM/Qwen/blob/main/eval/gsm8k_prompt.txt
- https://mistral.ai/news/mixtral-8x22b/
- https://arxiv.org/abs/2403.04652
- https://arxiv.org/abs/2311.12022
- https://arxiv.org/abs/2404.04475
- https://tatsu-lab.github.io/alpaca_eval/
- https://arxiv.org/abs/2403.04132
本文转载自 AI闲谈,作者: AI闲谈