Hugging Face 05月14日 00:51
大模型评估排障指南 | 关于 LaTeX 公式解析
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文探讨了大模型评估中,模型输出包含LaTeX公式时遇到的解析难题。由于LaTeX解析没有标准方法,即使使用sympy这样的专业库,也难以保证100%的准确率。文章分享了一种通过添加字符串比较检查来缓解此问题的方法,避免了重写语法解析模块或添加人工检查的复杂方案。实验结果表明,该方法能有效提升模型评估的准确性,为大模型评估提供了一种实用的解决方案。

🧪 大模型评估中,当模型输出包含LaTeX公式时,会遇到公式解析的难题,直接影响评估的准确性。

📚 Sympy是一个用于符号数学的Python库,常被用于LaTeX公式的解析和比较,但在实际使用中,即使使用sympy对真值进行解析,也只能达到约94%的准确率,存在一定的解析失败情况。

✅ 通过在代码中添加字符串比较检查,可以有效缓解LaTeX公式解析问题,无需重写语法解析模块或进行人工检查,是一种相对简单且有效的解决方案。

📈 实验数据表明,采用字符串比较检查后,模型评估的准确性得到了显著提升,验证了该方法在实际应用中的有效性。

原创 Hugging Face 2025-05-07 22:00 广东

缓解评估输入中带有 LaTeX 公式场景下的解析问题

这是 大模型评估排障指南 系列文章的第二篇,敬请关注系列文章:

解析 LaTeX 很难。这个问题在评估输出为  的模型时经常会遇到,例如 Hugging Face 的数学评估基准https://hf.co/datasets/lighteval/MATH

这个基准使用  来表示数学领域的计算和符号。评估难点在于对模型输出与标准答案的解析和比较。 结果表明,解析  没有标准方法。


摘自sympy文档

lm-evaluation 框架使用sympy(一个用于符号数学的 Python 库) 来对 LaTeX 进行解析和比较。 使用 sympy 解析真值 (用真值自身对比测试) 只能得到约 0.94 的准确率。 怎么会是这样呢?后来发现 sympy 无法解析某些 (标准的 ) 表达式。https://github.com/sympy/sympy

例如:

couldn't parse one of [0,1) 或 [0,1), I expected one of these: ']'
[0,1)
~~^
couldn't parse one of (-\iny,-5]\cup[5,\iny) or (-\iny,-5]\cup[5,\iny), I expected something else here
(-\iny,-5]\cup[5,\iny)
~~~~~~^
couldn't parse one of -\frac{1}{{}2x} or -\frac{1}{{}2x}, I don't understand this
-\frac{1}{{}2x}
~~~~~~~~~~~^

如何缓解这个问题?

重写 语法解析模块并在代码中添加必须功能;或者往代码里添加人工检查来提高模型得分。 在几乎陷入问题陷阱之后,我们认为在代码中添加字符串比较检查差不多就能缓解这个问题了。https://github.com/sympy/sympy/blob/master/sympy/parsing/latex/lark/grammar/latex.lark


LM 评估工具修复

结果

修复前后模型 Top 25 对比结果表格如下:


英文原文: https://raw.githubusercontent.com/huggingface/evaluation-guidebook/refs/heads/main/contents/troubleshooting/troubleshooting-math-parsing.md

原文作者: Nathan Habib

译者: SuSung-boy

审校: Adeena

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

大模型评估 LaTeX公式 Sympy 字符串比较
相关文章