掘金 人工智能 05月08日 12:08
大模型评估排障指南 | 关于 LaTeX 公式解析
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文是大模型评估排障系列文章的第二篇,聚焦于评估输出为LaTeX公式的模型时遇到的解析难题。文章指出,解析LaTeX没有标准方法,即使使用sympy这样的专业数学库,也无法达到100%的准确率,因为sympy无法解析某些标准LaTeX表达式。为了缓解这个问题,可以重写LaTeX语法解析模块或添加人工检查来提高模型得分。作者最终选择在代码中添加字符串比较检查来解决问题,并对比了修复前后模型的Top 25结果。

🔍**LaTeX解析难题**:评估输出为LaTeX公式的大模型时,面临着LaTeX公式解析的挑战,没有标准的解析方法。

📚**Sympy的局限性**:即使使用专业的符号数学Python库sympy,也无法完美解析所有LaTeX表达式,真值自测准确率仅为0.94左右。

🛠️**问题缓解方案**:为了解决LaTeX解析问题,可以考虑重写LaTeX语法解析模块,添加必要功能,或者加入人工检查来提高模型得分。

✅**最终解决方案**:通过在代码中添加字符串比较检查,可以有效地缓解LaTeX解析问题,提升模型评估的准确性。

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

解析 LaTeX 很难。这个问题在评估输出为 LaTeX\LaTeX 的模型时经常会遇到,例如 Hugging Face 的 数学评估基准

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


摘自 sympy 文档

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

例如:

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}~~~~~~~~~~~^

如何缓解这个问题?

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


LM 评估工具修复

结果

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


英文原文: raw.githubusercontent.com/huggingface…

原文作者: Nathan Habib

译者: SuSung-boy

审校: Adeena

Fish AI Reader

Fish AI Reader

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

FishAI

FishAI

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

联系邮箱 441953276@qq.com

相关标签

大模型评估 LaTeX解析 Sympy 问题排障
相关文章