使用 Math-Verify 修正 Open LLM 排行榜
3 周前,我们展示了正确评估 LLM 在数学问题上表现的难度,并引入了 Math-Verify,这是一个在数学方面验证模型的更好解决方案(更多信息请阅读公告)!
今天,我们很高兴地宣布,我们已使用 Math-Verify 彻底重新评估了提交给 Open LLM 排行榜的所有 3,751 个模型,以实现更公平、更可靠的模型比较!
为什么 Open LLM 排行榜上的数学评估出了问题
Open LLM 排行榜 是 Hugging Face Hub 上使用最广泛的排行榜:它比较了开放式大型语言模型 (LLM) 在各种任务上的性能。其中一项任务,称为 MATH-Hard,专门针对数学问题:它评估 LLM 解决高中和大学水平数学问题的能力。它使用来自 Hendrycks MATH 数据集的 1,324 个最高难度问题(Level 5),分布在 7 个主题(微积分前、初级代数、代数、中级代数、计数/概率和数论)中,采用 5 次采样法(在提示中提供模型 5 个示例,以展示其应如何回答)。
一个典型的问题看起来像这样
For all real numbers $r$ and $s$, define the mathematical operation $\#$ such that the following conditions apply: $r\ \#\ 0 = r, r\ \#\ s = s\ \#\ r$, and $(r + 1)\ \#\ s = (r\ \#\ s) + s + 1$. What is the value of $11\ \#\ 5$?
答案将是
71
在排行榜中,模型必须以一个非常特定的字符串结束其答案(遵循 Minerva-Math 论文)
“Final answer is [ANSWER]. I hope it is correct.”
排行榜随后会尝试使用 SymPy 解析 [ANSWER]
,将其转换为符号表示(如果需要,简化值),最后将其与黄金目标进行比较。
然而,用户报告了上述一些问题。
首先,一个反复出现的问题是某些模型无法遵循示例中预期的答案格式:它们输出其他句子来引入其答案。由于未遵循格式,即使答案实际上是正确的,也被标记为错误!(如果您对“模型在数学方面有多好”特别感兴趣,这是一个问题)。
📄 示例 | ❗️问题 | ✅ Math-Verify | 🛑 旧排行榜 |
---|---|---|---|
因此,这些三角形之一的周长是 $14 + 7\sqrt{2}$ 英寸,以最简根式形式表示。 | 提取失败 | 7*sqrt(2) + 14 |
无 |
因此,无限几何级数的和是 (\frac{7}{9})。 | 提取失败 | 7/9 |
无 |
( p(n) ) 和 ( p(n+1) ) 共享一个大于 1 的公因子是 (\boxed{41})。 | 提取失败 | 4 |
无 |
所以是 \frac{1}{9} | 提取失败 | 1/9 |
无 |
结论是他有 \boxed{5} 辆车 | 提取失败 | 5 |
无 |
下一步,将 [ANSWER]
转换为符号表示也出现了一些问题,这次与 SymPy 解析相关
📄 示例 | ❗️问题 | ✅ Math-Verify | 🛑 旧排行榜 |
---|---|---|---|
最终答案是 $2x + 4y + z - 19 = 0$。我希望它是正确的。 | 参数方程的部分解析 | Eq(2x + 4y + z - 19, 0) | 0 |
(23) | 由于 LaTeX 边框导致提取失败 | 23 |
无 |
((- \infty, -14) \cup (-3, \infty)). | 由于区间导致提取失败 | Union(Interval.open(-oo, -14), Interval.open(-3, oo)) | 无 |
100% | 由于无效符号导致提取失败 | 1 |
无 |
\begin{pmatrix}\frac{1}{50}&\frac{7}{50}\frac{7}{50}&\frac{49}{50}\end{pmatrix} | 由于矩阵导致提取失败 | Matrix([[1/50, 7/50], [7/50, 49/50]]) | 无 |
在最后一步,当将提取的答案与目标表达式进行比较时,也出现了一些问题
📄 示例 | ❗️问题 | ✅ Math-Verify | 🛑 旧排行榜 |
---|---|---|---|
1/3 == 0.333333 | 不支持四舍五入 | True | 否 (False) |
sqrt(1/2)*7 == sqrt(0.5)*7 | 不支持数值评估 | True | 否 (False) |
k = 1 == 1 | 不支持变量赋值 | True | 否 (False) |
Matrix.ones == Matrix.ones | 不支持矩阵等价 | True | 否 (False) |
{1} \union {1,4} == {1,4} | 不支持集合比较 | True | 否 (False) |
所有这些问题现在都通过新的 Math-Verify 解析器得到了彻底解决!
哪个模型最擅长数学?得益于更公平的评估,排行榜彻底洗牌
由于所有这些问题往往会累积,一些模型因此受到了严重影响,它们的性能被严重低估……因此我们删除了之前的评估器并添加了 Math-Verify,这就像只修改了 3 行代码一样简单!(您也可以在您的数学评估中尝试一下!)
这意味着重新评估自 6 月份以来提交的所有模型……这彻底改变了排行榜 MATH 子集中的前 20 个模型。
更改的影响
平均而言,模型在整体上多解决了 61 个问题,相当于整体提升了 4.66 分!
表现出最显著改进的两个子集都与代数相关(代数和初级代数),分别获得了 8.27 和 6.93 的增长。在极端情况下,一些模型在这些子集上表现出近 90 分的改进。我们认为这些子集之所以能看到最大的改进,是因为它们经常涉及以集合(由于有多个解决方案的问题)和矩阵形式呈现的答案。Math-Verify 增强了对这两种答案类型的处理,从而促成了这些显著的增长。
模型家族变化
我们最初在检查 Qwen 模型时发现了数学评估问题,这些模型的得分异常低,与其自我报告的性能相比。在引入 Math-Verify 后,这些模型的得分翻了一倍多,显示出之前对性能的严重低估。
但 Qwen 模型并非个例。另一个受影响的主要家族是 DeepSeek。切换到 Math-Verify 后,DeepSeek 模型的得分几乎翻了两倍!这是因为它们的答案通常被包含在方框 (\boxed{})
符号中,而旧的评估器无法提取。
MATH-Hard 排行榜的变化
正如开头所述,前 20 名排名发生了显著变化,Nvidia 的 AceMath 模型现在主导着 MATH-Hard 排行榜。此次变化的其他主要受益者是 Qwen 衍生模型,它们现在几乎是 AceMath 之后唯一的模型。以下是比较新旧前 20 名排行榜排名的完整表格
排行榜的变化
最后,我们检查了整体排行榜结果的演变。虽然前四名保持不变,但其余排名发生了显著变化。由于多个 Qwen 衍生模型在 MATH 子集中的崛起,Qwen 模型在整体结果中进入前 20 名的数量进一步增加。
许多其他模型也完全跃升了排名,上升了 200 个或更多名次!您可以在 Open LLM 排行榜上查看更详细的结果。
总结
Math-Verify 的引入显著提高了 Open LLM 排行榜评估的准确性和公平性。这导致了排行榜的洗牌,许多模型的得分有了显著提高。
我们鼓励所有开发人员和研究人员在自己的数学评估中采用 Math-Verify。通过这样做,您可以确保您的模型得到更可靠的结果评估。此外,我们邀请您探索更新后的排名,看看您最喜欢的模型的性能是如何变化的。