如果说 GSM8K 是 AI 学生“小算”的小学口算测验,那么 MATH 基准就是摆在他面前的一张全国高中数学联赛试卷。小算在 GSM8K 上已经能轻松答对八成应用题,可当他走进 MATH 考场时,面对的却是 12500 道真正的竞赛级难题——代数、几何、数论、计数与概率轮番上阵,每一题都需要好几步严密的推导,如同奥赛题需要把零散的思路织成完整的证明。这张卷子的出题委员会(Hendrycks 团队)刻意让题目“面生”,几乎没有套公式就能走通的路,于是当年再强的模型(GPT-3)也只勉强拿到 6.9 分,而人类高手的成绩单上是 90 分。在下面的旅程中,我们会跟着小算一起分析考卷结构、对比两场考试的难度差异、研究密封格(boxed)里藏着什么秘密,再看看思维链、代码执行和多数投票这些“考试技巧”如何把他从 7 分一路送到 90 分俱乐部,最后还要警惕:考场上有没有人偷偷把真题泄露给了他。

岗位关联

对 AI 从业者而言,MATH 是检验大模型数学推理能力的“试金石”,理解它的设计原理与优化手段,能帮你科学地评测模型、设计训练策略,而不是被一张分数的表面光鲜所迷惑。

目录
  1. 可视化演示
  2. MATH基准概览:一道奥赛入场券
  3. 与GSM8K对比:小学口算 vs 全国联赛
  4. 评测机制原理:密封格里交答案
  5. 模型性能表现:分数榜的十年跃迁
  6. 数据构建方法:命题组的匠心工艺
  7. 性能优化策略:教练的三板斧
  8. 局限与争议:考场软肋与争议
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

MATH竞赛数学基准评估模型的数学推理能力,涵盖多步解题与难度分级。拖动滑块调整题目难度,观察模型正确率与推理步骤表现。

本节配有交互动效(进入视口后自动加载,约 3KB)。

MATH基准核心 多步推理 难度分级 推理能力→正确率

MATH基准概览:一道奥赛入场券

小算在 GSM8K 的小学口算测验里拿下了高分,教练却拍了拍他的肩膀说:“别急着骄傲,真正的战场在 MATH——那是全国高中数学联赛的考卷。”MATH(Mathematics Aptitude Test of Heuristics)是由 Hendrycks 团队在 2021 年推出的数学推理基准,全卷共 12500 道题,题型全部来自 AMC、AIME 等真实竞赛以及 AOPs 数学社区,目标只有一个:检验模型面对陌生难题时的启发式推理能力,而不是简单套用训练时见过的套路。

这份考卷共分七个大类:预备代数、代数、计数与概率、几何、中级代数、初等数论、预备微积分。每一道题都需要多步推导,题干中几乎没有“鸡兔同笼”式的固定模板,更像一位奥赛教练随手写给学生的挑战题。正因为如此,论文中的 GPT-3 即使带着 5 个示例进场,也只有 6.9% 的准确率——而训练有素的人类解题者能拿到 90%。换句话说,MATH 用一整套竞赛题,把“背题型”和“真推理”之间那条鸿沟摊开在了所有人面前。

小算盯着这份七大类、上万道题的卷子,意识到他不可能靠“背答案”蒙混过关——唯一的路,是真正学会像数学家一样思考。

∣DMATH∣=∑c=17∣Dc∣=12500\displaystyle |D_{\text{MATH}}| = \sum_{c=1}^{7} |D_c| = 12500
这条公式说明:整个 MATH 题库就是七大领域样本量的总和,加起来恰好 12500 道题。
  1. 数据集大小$|D_{\text{MATH}}|$ 表示整个 MATH 题库的样本总数,就像统计奥赛集训队一共收了多少道题。
    ∣DMATH∣|D_{\text{MATH}}|
  2. 求和符号$\sum_{c=1}^{7} |D_c|$ 把七个类别各自的题量依次累加,得到全集大小。
    ∑c=17∣Dc∣\sum_{c=1}^{7} |D_c|
  3. 总量确认$= 12500$ 是最终结果,意味着平均每个领域约 1700 道题,题量足够大、分布也足够广。
    =12500= 12500

与GSM8K对比:小学口算 vs 全国联赛

如果把两张卷子并排放在桌上,小算第一眼就会感到明显的“压迫感”。GSM8K 是给小学生设计的口算应用题:一袋苹果有 8 个,吃掉 3 个还剩几个?题目直白,两到三步就能算完。而 MATH 里的题动辄需要四步以上,涉及变量替换、分类讨论、数论构造,甚至要把多个公式组合起来使用。平均而言,MATH 每道题需要的推理步数大约是 GSM8K 的三倍,就像从“两位数口算”直接跳到“奥林匹克证明题”。

难度之外,两者的评测目标也截然不同。GSM8K 考察的是模型能不能理解日常语言、做基础算术,相当于检验“运算基本功”;MATH 则考察模型面对陌生数学结构时的策略调度能力——该用反证法还是构造法?要不要先做变量替换?这种差异也体现在答案格式上:GSM8K 的答案往往是个简单数字,而 MATH 要求把最终答案规范地写在 boxed{} 密封格中,像奥赛试卷上专门留出的“最终答案框”,裁判一眼就能找到你的结论。

小算把两张卷子收进书包,心里已经有了底:小学测验靠的是肌肉记忆,而联赛考的是临场调度——他必须从头开始练习写步骤。

NˉstepsMATHNˉstepsGSM8K≈3\displaystyle \frac{\bar{N}_{\text{steps}}^{\text{MATH}}}{\bar{N}_{\text{steps}}^{\text{GSM8K}}} \approx 3
这条公式说明:MATH 的平均推理步数约为 GSM8K 的三倍,难度并非线性增长,而是推理深度的质变。
  1. 平均推理步数$\bar{N}_{\text{steps}}^{\text{MATH}}$ 表示 MATH 题目平均需要的解题步数,可以理解为答案链条的长度。
    NˉstepsMATH\bar{N}_{\text{steps}}^{\text{MATH}}
  2. 基线参照$\bar{N}_{\text{steps}}^{\text{GSM8K}}$ 是 GSM8K 题目的平均步数,作为小学难度的基准线。
    NˉstepsGSM8K\bar{N}_{\text{steps}}^{\text{GSM8K}}
  3. 倍数关系$\approx 3$ 说明 MATH 的推理链明显更长,小算需要“多绕几个弯”才能抵达答案。
    ≈3\approx 3

评测机制原理:密封格里交答案

奥赛试卷有一个铁律:最终答案必须写在指定的密封格中,否则过程再漂亮也不算分。MATH 沿用了同样的设计,要求模型把最终结论放进 boxed{} 标记里。评测时,裁判(评测脚本)先扫描模型的全部输出,用正则表达式把 boxed{...} 里的内容抠出来,再与官方给定的金黄色答案逐字符比对。这个过程既像监考老师找密封格,又像阅卷机扫描答题卡——位置对了,答案才有效。

为了防止模型因为“3“写成”3.0“这类小瑕疵而被误判,评测流程还加入了容错归一化:去掉多余空格、逗号、反斜杠,把等价写法归拢成统一形式。最终,每道题只有两种结果:命中或未命中,所有题目的命中率平均值就是模型的最终得分。这套机制的好处是客观、可复现;代价则是它只认”最终答案”,不管推理过程多么漂亮——与真实奥赛按步骤给分的规则并不完全一致。

小算看着阅卷机“咔哒咔哒”地扫描密封格,忽然理解了规则的游戏:你可以在草稿纸上涂涂画画,但只有密封格里的那个答案,才是裁判眼中唯一重要的事情。

Acc=1N∑i=1N1[parse(y^i)=yigold]\displaystyle \text{Acc} = \frac{1}{N} \sum_{i=1}^{N} \mathbb{1}\left[\text{parse}\left(\hat{y}_i\right) = y_i^{\text{gold}}\right]
这条公式说明:准确率就是把 N 道题中“提取出的模型答案等于标准答案”的次数求和再取平均。
  1. 题目总数$N$ 是评测集中的题目数量,在 MATH 测试集里就是 5000 道题。
    N=5000N = 5000
  2. 求平均$\frac{1}{N}$ 把总分摊到每一道题上,得到 0 到 1 之间的比例,再换算成百分比。
    1N\frac{1}{N}
  3. 逐题累加$\sum_{i=1}^{N}$ 表示遍历所有题目,把每道题的命中情况叠加起来。
    ∑i=1N\sum_{i=1}^{N}
  4. 命中判定$\mathbb{1}\left[\text{parse}\left(\hat{y}_i\right) = y_i^{\text{gold}}\right]$ —— 指示函数内部成立则记 1,否则记 0;其中 parse 负责从输出中提取密封格答案。
    1[parse(y^i)=yigold]\mathbb{1}\left[\text{parse}\left(\hat{y}_i\right) = y_i^{\text{gold}}\right]

模型性能表现:分数榜的十年跃迁

MATH 榜单刚公布时,几乎是一张“人类碾压机器”的成绩单。训练有素的人类解题者均分 90,而当时最强的 GPT-3 只有 6.9 分——两者相差约 13 倍。细看错误类型会发现,模型的失误集中在三类:符号操纵出错(移项变号时算错)、几何空间想象薄弱(无法从文字描述还原图形关系)、以及长文本逻辑链条断裂(推理到第三步就丢了前文条件)。这就像小算在考场上明明会做,却总在“抄写过程”时手一抖写错符号。

但这张分数榜并没有凝固在 2021 年。随着思维链提示(Chain-of-Thought)在 2022 年出现,PaLM-540B 在 MATH 上突破了 50%;同年 Minerva 借助代码执行与多数投票进一步逼近人类线;2024 年之后,以 o1 为代表的推理模型在 MATH 上已经稳定突破 90%。从 6.9 到 90,不是某个模型的单打独斗,而是“写步骤”“带计算器”“多次验算”等策略层层叠加的结果——好比小算的教练给他配了草稿纸、计算器和验算流程,他的得分自然水涨船高。

看着分数榜上那条一路向上的曲线,小算意识到:考高分的秘诀不在模型本身,而在方法——接下来的招式才是真正的破局点。

AcchumanAccGPT-3=90%6.9%≈13\displaystyle \frac{\text{Acc}_{\text{human}}}{\text{Acc}_{\text{GPT-3}}} = \frac{90\%}{6.9\%} \approx 13
这条公式说明:早期人类与最强模型的差距约 13 倍,是理解 MATH 难度梯度的直观标尺。
  1. 人类基线$\text{Acc}_{\text{human}} = 90\%$ 代表训练有素的人类解题者成绩,作为“高手线”。
    Acchuman=90%\text{Acc}_{\text{human}} = 90\%
  2. 模型基线$\text{Acc}_{\text{GPT-3}} = 6.9\%$ 代表 GPT-3 在 5-shot 设置下的成绩,是当时的“模型天花板”。
    AccGPT-3=6.9%\text{Acc}_{\text{GPT-3}} = 6.9\%
  3. 差距倍数$\frac{90\%}{6.9\%} \approx 13$ 说明模型当时与人类相差一个数量级,这个数字后来被逐年追赶并反超。
    90%6.9%≈13\frac{90\%}{6.9\%} \approx 13

数据构建方法:命题组的匠心工艺

MATH 为什么能成为“金标准”?因为它的命题过程足够严谨。数据构建的第一站是题目来源:Hendrycks 团队从 Art of Problem Solving(AOPs)社区以及 AMC、AIME 等真实竞赛中收集题目,这些题天然带有“竞赛基因”——每一道都经过命题人反复打磨,不存在歧义表述。接下来是清洗环节:团队移除了大量依赖图形才能解答的题目,只保留纯文本可完全描述的题,这样模型就不需要“看配套图”也能作答。

清洗之后是人工标注流水线。标注者不仅要写出标准答案,还要把答案放进统一的 boxed 格式,并记录题目所属类别与难度层级。为了降低个人偏差,同一道题由两名标注者相互独立地标注,再交叉校验。最终经过多轮筛选,留下 12500 道题,并划分为 7500 道训练集与 5000 道测试集——训练集供模型调参,测试集则严格封存、只在评测时启用。这种“出题组命卷→密封保存→公开考试”的流程,正是 MATH 能被长期信赖的结构基础。

小算翻着这套精心编印的试卷,感慨命题组把每个细节都考虑到了——也正因如此,“作弊”与“漏题”的争议才显得格外刺眼。

∣Dtrain∣=7500,∣Dtest∣=5000,Dtrain∩Dtest=∅\displaystyle |D_{\text{train}}| = 7500, \quad |D_{\text{test}}| = 5000, \quad D_{\text{train}} \cap D_{\text{test}} = \varnothing
这条公式说明:训练与测试数据严格分离、互不重叠,确保评测成绩真实反映模型的泛化能力。
  1. 训练题量$|D_{\text{train}}| = 7500$ 是用于模型学习的题目数量,约占全卷 60%。
    ∣Dtrain∣=7500|D_{\text{train}}| = 7500
  2. 测试题量$|D_{\text{test}}| = 5000$ 是用于最终评分的题目数量,约占全卷 40%。
    ∣Dtest∣=5000|D_{\text{test}}| = 5000
  3. 互斥保证$D_{\text{train}} \cap D_{\text{test}} = \varnothing$ 表示两个集合交集为空,考场上绝不会出现“考前原题泄露”的情况。
    Dtrain∩Dtest=∅D_{\text{train}} \cap D_{\text{test}} = \varnothing

性能优化策略:教练的三板斧

小算的教练有一套经典的“奥赛提分三板斧”。第一板斧是思维链提示(CoT):不再让模型直接报答案,而是要求它像写草稿一样把步骤一步步列出来,把隐藏的推理过程显式化。这一步直接把准确率从 7% 拉到 36%——就像小学生从“心算报数”改成“列竖式计算”,错误率自然下降。第二板斧是代码执行验证:允许模型在 Python 环境里演算数值、化简表达式,相当于让考生带一台计算器进考场,避免手算失误。

第三板斧是多数投票自洽(Self-Consistency):同一道题让模型独立做多次(例如采样 K 条推理路径),最后统计哪个答案出现得最多,就把它作为最终答案。这就像组织一个“数学小组”各自解题,少数服从多数——独立尝试越多,偶发的随机错误越容易被淹没。再往后,强化学习微调(RLHF / RL)登场:模型在训练中不断“做新题、对答案、纠正思路”,逐步逼近人类表现。这几招组合起来,就是小算从 7 分冲向 90 分的完整路径。

小算在考场上用足了教练教的技巧:先列步骤、再验算、最后找“分身们”对答案——一张曾经让他绝望的奥赛卷,终于变得可攻克了。

y^=arg⁡max⁡c∈C∑k=1K1[yk=c]\displaystyle \hat{y} = \mathop{\arg\max}_{c \in \mathcal{C}} \sum_{k=1}^{K} \mathbb{1}\left[y_k = c\right]
这条公式说明:多数投票就是统计 K 次独立采样中每个候选答案的得票数,选择票数最高的那个作为最终输出。
  1. 采样次数$K$ 是模型对同一道题独立作答的次数,通常取 16 或 64,类似组织 K 位“分身”同学分别解题。
    KK
  2. 计票过程$\sum_{k=1}^{K} \mathbb{1}\left[y_k = c\right]$ 遍历每次作答,若答案等于某个候选值 c 就投一票。
    ∑k=1K1[yk=c]\sum_{k=1}^{K} \mathbb{1}\left[y_k = c\right]
  3. 候选空间$c \in \mathcal{C}$ 是所有可能答案构成的集合,即“投票箱”里出现的不同答案。
    c∈Cc \in \mathcal{C}
  4. 胜出判定$\mathop{\arg\max}$ 返回得票最多的那个候选答案,作为最终结果 $\hat{y}$。
    y^=arg⁡max⁡c∈C\hat{y} = \mathop{\arg\max}_{c \in \mathcal{C}}

局限与争议:考场软肋与争议

MATH 并非无懈可击,它的最大软肋是数据污染。由于大模型训练语料往往包含了互联网上海量公开内容,MATH 的测试题很可能早就被模型“背诵”过——相当于考生在考前偷偷拿到了原题答案。这种污染一旦发生,分数就失去了衡量推理能力的意义。2023 年之后,多篇论文发现,部分模型在 MATH 上的高分与其在全新未公开题目上的表现并不匹配,印证了这一担忧。

第二个争议是“算力军备竞赛”。CoT、多数投票、代码执行本质上都在用更多推理预算换取分数:答一道题消耗的算力可能是早期模型的几十倍。有人质疑,这样的进步是“更会做题”还是“更会堆算力”?第三个争议则关乎公平性:MATH 全英文命题、取材于西方竞赛体系,对中文模型天然存在语言与题型偏差——就像让中国学生去考美国高考数学,分数低未必代表数学能力差。过度拟合这张卷子,反而可能降低模型在其他数学领域的泛化能力。

小算摘下眼镜,盯着分数榜上那些漂亮但存疑的数字,终于明白教练最后那句叮嘱:考试无捷径,推理才是唯一的通行证。

Gapoverfit=Acctrain−Acctest\displaystyle \text{Gap}_{\text{overfit}} = \text{Acc}_{\text{train}} - \text{Acc}_{\text{test}}
这条公式说明:训练分与测试分的差值是过拟合的温度计——差值越大,说明模型越依赖“背题”而非“懂题”。
  1. 训练表现$\text{Acc}_{\text{train}}$ 是模型在训练集(含见过的题)上的准确率,刷题刷得越狠通常越高。
    Acctrain\text{Acc}_{\text{train}}
  2. 测试表现$\text{Acc}_{\text{test}}$ 是模型在封存测试集上的准确率,真正反映推理能力。
    Acctest\text{Acc}_{\text{test}}
  3. 泛化差距$\text{Gap}_{\text{overfit}}$ 表示两者差值,若差距过大,说明分数主要来自记忆而非推理。
    Gapoverfit\text{Gap}_{\text{overfit}}

AI 应用场景

大模型数学能力横向测评

阶段:模型评测与选型

解决的问题:企业在 GPT-4、Claude、国产开源模型之间做技术选型时,单看 GSM8K 分数无法区分高下——因为基础应用题的区分度太低。引入 MATH 后,可以用 5000 道竞赛题的高门槛把模型的推理能力分出档位:能过 30% 的适合处理复杂任务,能过 70% 的才能胜任数学辅导类产品。

具体案例:一家教育科技公司在采购 LLM 时,在自有评测集里加入了 MATH 七大类别各 200 题,按类别拆解分数,发现某开源模型几何类仅 20%,而代数类达 65%;据此在“几何讲题”场景中改用另一模型,避免了上线后答错率过高的危机。

数学推理模型训练监控

阶段:训练与微调

解决的问题:训练推理模型时,loss 下降并不一定代表推理能力上升。把 MATH 测试集作为“体检指标”定期抽样评测,能及时发现模型是否陷入“只背套路、不会推理”的假性收敛,从而决定是否引入思维链数据或调整强化学习奖励。

具体案例:某团队微调 Llama 时发现常规 loss 下降平滑,但 MATH 准确率停留 30%;加入 CoT 指令数据后,同样 loss 水平下 MATH 跳到 50%,训练方向因此被及时修正。

自动解题与在线答疑评分

阶段:产品化应用

解决的问题:在线教育平台需要自动批改学生的数学解答题,传统模板匹配无法处理等价答案(如 1/2 与 0.5)。借鉴 MATH 的 boxed 答案提取与归一化机制,再叠加多数投票过滤模型偶然错误,构建稳健的自动评分管道。

具体案例:某学习 App 在学生提交答案后,先用解析器从“我的答案是 1/2”中提取目标,再与标准答案做归一化比对,最后让模型三路独立复判,把误判率从 18% 压到 4% 以下。

Python 演示

python62 行
import refrom collections import Counter MATH_CATEGORIES = [    "algebra", "counting_and_probability", "geometry",    "intermediate_algebra", "number_theory", "prealgebra",    "precalculus",] def parse_boxed(text):    match = re.search(r"boxed\{([^}]*)\}", text)    return match.group(1).strip() if match else None def normalize(ans):    if not ans:        return ""    ans = ans.replace(" ", "").replace(",", "").replace("\\", "")    return ans def evaluate(predictions, gold):    correct = 0    pairs = []    for pred, g in zip(predictions, gold):        p = normalize(parse_boxed(pred))        gg = normalize(g)        hit = (p == gg)        correct += int(hit)        pairs.append((hit, p, gg))    acc = correct / len(gold)    return acc, pairs def majority_vote(samples_per_q):    finals = []    for samples in samples_per_q:        votes = []        for s in samples:            parsed = normalize(parse_boxed(s))            if parsed:                votes.append(parsed)        if votes:            finals.append(Counter(votes).most_common(1)[0][0])        else:            finals.append("")    return finals if __name__ == "__main__":    demo_predictions = [        "解方程得 x=3,因此最终答案 boxed{3}",        "概率为 1/2,写成 boxed{1/2}",        "几何面积算得 9,答案是 boxed{10}",    ]    gold_answers = ["3", "1/2", "9"]    acc, detail = evaluate(demo_predictions, gold_answers)    print(f"准确率: {acc:.1%}")    for hit, p, g in detail:        print(f"预测={p or '未提取'} 标准={g} 结果={'对' if hit else '错'}")     demo_multi = [        ["直接回答 boxed{5}", "换个思路得到 boxed{5}"],        ["直接回答 boxed{7}", "验算后改正为 boxed{7}"],    ]    print("多数投票结果:", majority_vote(demo_multi))
目的:实现了一个迷你 MATH 评测器——从模型输出中提取 boxed 密封格答案,做归一化比对计算准确率,并实现了多数投票自洽策略。
  1. import re导入正则模块,用于从模型长长的输出文本里“揪出”boxed 密封格中的答案。
  2. def parse_boxed(text)定义答案提取函数,相当于阅卷机扫描密封格。
  3. re.search(r"boxed\{([^}]*)\}", text)匹配第一个 boxed{} 并捕获花括号内部的答案字符串。
  4. normalize(ans)把所有等价写法“抹平”,去掉空格、逗号、反斜杠,让 1/2 和 1/2 能稳定对齐。
  5. evaluate(predictions, gold)逐题比对模型答案与金标准,返回准确率和明细,等价于计算 Acc。
  6. correct / len(gold)用命中数除以总题数,得到 0-1 之间的准确率。
  7. majority_vote(samples_per_q)对每道题的多次采样结果做投票,选出现次数最多的答案。
  8. Counter(votes).most_common(1)[0][0]利用计数器统计票数并取出第一名,这就是 argmax 的实现。

常见误区

误区MATH 和 GSM8K 差不多,都是小学数学题,只是 MATH 题目多一点,多刷几轮训练就能考好。

正解两者是质变而非量变。GSM8K 是“两位数加减”,MATH 是“奥数证明题”——需要多步推理、陌生题型和策略调度。即使让模型把 GSM8K 刷到满分,在 MATH 上依然可能低于 10%。它们评测的是不同层级的能力,不能混为一谈。

为何常见:两个基准都叫“数学题”,题干都是自然语言描述,初学者只看到“题目数量”的差异,忽略了推理深度这一最关键的区别。

误区模型在 MATH 上考了 85%,那它就是数学天才,什么数学题都能解。

正解高分可能来自数据污染或过拟合。如果测试题被包含在训练语料中,模型只是“背出了答案”;如果只在 MATH 上反复微调,它在其他数学基准上可能大幅下降。真正可靠的评估要配合新出题的测试集与跨基准交叉验证。

为何常见:排行榜上的单一分数直观且传播力强,人们习惯于用“高考分数”类比模型能力,忽略了评测分数只是特定分布下的采样结果。

误区MATH 考试还要写 Python 代码来算,这不算模型的能力,应该禁止。

正解MATH 官方明确了“辅助计算工具是被允许且值得鼓励的”。基准想测的是数学推理与问题求解,而不是心算与符号记忆。代码执行恰好充当了可靠的“计算器”,让模型的推理不被中间算术错误打断——这就像奥赛允许带计算器一样合理。

为何常见:大多数人脑中的“闭卷考试”绑定着“不能带工具”的直觉,没有意识到基准评测的目标设定可以主动选择“允许使用工具”。

误区MATH 成绩全球通用、对所有模型一视同仁,分数就是能力的最终裁决。

正解MATH 全英文命题、取材于美式竞赛体系,对中文模型存在语言与题型偏差。同样水平的模型,英文训练占比高的分数会天然更高。它是一把很好用的尺子,但刻度偏向西方数学竞赛文化——评估时最好搭配中文数学基准(如 CMMLU 数学子集)共同使用。

为何常见:MATH 的严谨构建流程和广泛引用让它看起来“权威”,人们倾向于把权威等同于无偏,忽略了基准本身的地域和语言局限性。

面试题

Q1. MATH 数据集一共包含多少道题?

单选题 · easy

  • A.约两千五百道
  • B.约七千五百道
  • C.约一万两千五百← 正确答案
  • D.约八千五百道

答案:C。MATH 题库总量为 12500 道,分为七大类。B 的 7500 是训练集的题数,D 的 8500 接近 GSM8K 的规模,A 的 2500 低于任何官方划分。记住“训练 7500 + 测试 5000 = 12500”就不会混淆。

Q2. MATH 与 GSM8K 最核心的差异是什么?

单选题 · easy

  • A.题目语言从中文变为英文
  • B.难度从算术升级为竞赛推理← 正确答案
  • C.题目数量变得更少
  • D.只考察几何知识

答案:B。GSM8K 考基础算术应用题,MATH 考竞赛级多步推理,这是本质区别。语言均为英文;MATH 题量更大而非更少;MATH 覆盖七大领域而不只是几何。B 准确对应“小学口算 vs 奥赛”的难度质变。

Q3. MATH 要求模型把最终答案书写在什么标记中?

单选题 · mid

  • A.圆括号标记
  • B.方框盒标记← 正确答案
  • C.方括号标记
  • D.感叹号标记

答案:B。MATH 规定最终答案必须写在 boxed{} 密封格中,评测脚本用正则提取花括号内容。圆括号、方括号只是普通文本,不像 boxed 那样有明确语义;感叹号更与答案格式无关。

Q4. 原始论文中,GPT-3 在 MATH 上(5-shot)的准确率约为?

单选题 · mid

  • A.6.9%← 正确答案
  • B.35.0%
  • C.57.0%
  • D.90.0%

答案:A。GPT-3 在 MATH 原始论文中仅取得约 6.9%。35% 是思维链出现后的成绩量级,57% 接近 PaLM-540B 加 CoT 的水平,90% 是人类高手的参照线。这组数字也串起了 MATH 的性能演进史。

Q5. 下面哪些属于 MATH 数据集的七大类别?

多选题 · mid

  • A.平面几何← 正确答案
  • B.初等数论← 正确答案
  • C.概率统计
  • D.复变函数

答案:AB。MATH 七大类别包括预备代数、代数、计数与概率、几何、中级代数、初等数论、预备微积分。A、B 都在其中;C 的准确名称是“计数与概率”而非“概率统计”;D 的复变函数属于大学高阶课程,不在 MATH 范围内。

Q6. MATH 数据集的官方训练集与测试集划分是?

单选题 · hard

  • A.训练 5000 / 测试 7500
  • B.训练 7500 / 测试 5000← 正确答案
  • C.训练 8500 / 测试 4000
  • D.训练 12500 / 无测试

答案:B。官方划分为训练集 7500 道、测试集 5000 道,且两者严格互斥。A 把顺序颠倒,C 的总量不符合 12500,D 取消了测试集——没有封存测试集的基准无法评测真实泛化能力。

Q7. 下列哪些是提升模型在 MATH 上表现的有效策略?

多选题 · mid

  • A.链式思维提示← 正确答案
  • B.多数投票自洽← 正确答案
  • C.代码执行验证← 正确答案
  • D.缩短推理步骤

答案:ABC。思维链把隐藏推理显式化,多数投票用多次采样取共识,代码执行提供可靠验算,三者被反复验证有效。D 是反向操作——MATH 需要充分的多步推理,强行缩短步骤反而会增加错误率。

Q8. 多数投票自洽性方法中,投票的目标是?

单选题 · hard

  • A.引用数最多的答案
  • B.出现次数最多的答案← 正确答案
  • C.置信度最高的答案
  • D.随机挑选一个答案

答案:B。多数投票对同一道题的 K 次独立采样结果计数,选出现频率最高的答案作为最终输出,对应公式中的 argmax 求和。A 是论文引用逻辑,C 是单次采样的置信度思路,D 则引入了随机噪声,都不符合自洽性思想。

Q9. 关于 MATH 基准的局限性,下列哪些说法正确?

多选题 · hard

  • A.题库可能出现在大模型训练语料中← 正确答案
  • B.过分刷题会降低真实泛化能力← 正确答案
  • C.全英文命题对中文模型存在偏差← 正确答案
  • D.数学推理考题无需考虑常识

答案:ABC。数据污染使分数虚高,过度拟合 MATH 会伤害其他基准的表现,英文命题与西方竞赛风格对中文模型不友好,这些都是公认局限。D 说法错误——数学题同样需要常识背景(如对量纲、公式适用条件的理解)。

Q10. 2024 年之后的领先推理模型(如 o1)在 MATH 上的表现约为?

单选题 · extreme

  • A.约 20%
  • B.约 50%
  • C.约 70%
  • D.约 90% 以上← 正确答案

答案:D。2024 年之后,以 o1 为代表的推理模型借助内部思维链、强化学习与搜索验证,在 MATH 上已稳定突破 90%,与人类高手持平甚至反超。这标志着 MATH 这张卷子的“测量上限”已被摸到,也推动社区转向更难的新基准。