Home

Awesome

SuperCLUE-Math6:新一代中文原生多轮多步数学推理数据集的探索之旅

技术报告(定稿并修订完成):<a href='https://arxiv.org/abs/2401.11819'>SC-Math6: Graded Multi-Step Math Reasoning Benchmark for LLMs in Chinese</a>

在人工智能领域,我们正见证着大语言模型如ChatGPT和GPT-4的蓬勃发展,它们是我们走向通用人工智能梦想的关键一步。中文大模型的推出,更是开启了人 工智能在各行各业的全新应用时代;像GSM8K数学推理任务,由于可以考察多步逻辑推理推能力、应用数学和实现知识的能力、需要自然语言理解和解决方案、 具备精确的评估标准的任务,受到了广泛的使用。然而,在这一进程中,缺乏能够测试中文大模型在数学推理上能力的原生数据集,导致中文模型的数学逻辑能力评估, 一直依赖于英文测试集。

为了缓解这一问题,我们推出了SuperCLUE-Math6数据集。这是一个GSM8K的中文升级版,专门设计来测试中文大模型在数学推理方面的核心能力。 SuperCLUE-Math6不仅延续了GSM8K的高质量和多样性,更在难度和应用广度上进行了适当的扩充。它的推出,旨在解决中文模型评估中的关键问题,并提供一个全面的测试平台。

SuperCLUE-Math6具有三大特点:
1. 中文原生场景的数学推理:
   每个问题均以中文原生环境呈现,配备详细的自然语言解题方案,强化了模型在本土语言环境下的适用性和实际应用价值。
   
2. 多轮交互下的推理能力考察:
   适应真实交流,通过问题及其追问,考察模型在连续对话环境中的逻辑推理与问题解决能力。
   
3. 推理能力等级自动评定:
   独创的评估系统能自动给出大模型处理数学问题的推理能力等级,为模型智力水平提供量化指标。
SuperCLUE-Math的推出不仅填补了中文数学推理数据集的空缺,而且对于提升中文大模型在复杂逻辑和数学问题解决能力上的表现具有重要价值。

它的应用将加速人工智能在教育、金融分析和技术领域等的本土化进程,同时助力模型更贴近人类的思维方式,为实现真正的通用人工智能奠定坚实的基础。 期待SuperCLUE-Math能激励更多的创新,推动人工智能技术在各行各业的广泛应用,从而为社会带来更深远的影响。

官网地址:<a href='https://www.CLUEbenchmarks.com/superclue_math6.html'>https://www.CLUEbenchmarks.com/superclue_math6.html</a>

公众号推文地址:<a href="https://mp.weixin.qq.com/s/jM2rgWE_-2TC7c49e22jAw">https://mp.weixin.qq.com/s/jM2rgWE_-2TC7c49e22jAw</a>

申请方式

请使用单位邮箱,将数据研究目的、计划,研究机构、申请者介绍和联系方式(手机或微信),发送到邮箱,并承诺不向第三方提供。 邮箱: contact@superclue.ai,标题是:SuperCLUE-Math6申请

收到申请邮件后,会通过邮件回复反馈测试集,谢谢。

使用方式及测评代码

1.数据的字段说明

id: 编号,
question:问题,
follow_up_question:追问,
language solution:问题的自然语言解决方案,
language solution_followup:追问的自然语言解决方案,
reasoning_step_ref:问题的推理步数,供参考,
reasoning_step_followup_ref:追问的推理步数,供参考,
answer:问题的答案,
answer_followup:追问的答案

2.使用的Prompt及数据的构造

第一轮数据构造
# line:每一行json
question=line['question']
question=f'''{question}
------------------------
注意:回答格式如下:“解题过程+'\n\n'+最终答案:【XXX】”。XXX,必须为非负整数,如35;解题过程中如涉及小数可保留两位数,最终结果如有小数四舍五入为非负整数。'''

messages=[{"role": "user", "content": question}]
第二轮数据构造
# line:每一行json
follow_up_question=line['follow_up_question']
follow_up_question=f'''{follow_up_question}
------------------------
注意:回答格式如下:“解题过程+'\n\n'+最终答案:【XXX】”。XXX,必须为非负整数,如35;解题过程中如涉及小数可保留两位数,最终结果如有小数四舍五入为非负整数。'''

messages=[
        {"role": "user", "content": question},
        {"role": "assistant", "content": question_response},
        {"role": "user", "content": follow_up_question},
]

3.测评代码及模型生成的示例

测评代码:<a href="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/scripts/evaluate.py">scripts/evaluate.py</a>

模型预测的示例文件:<a href="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/scripts/sample_answer.json">scripts/sample_answer.json</a>

运行方式:

   cd scripts 
   python3 evaluate.py

SuperCLUE-Math6

SC-Math6与GSM8K区别联系

序号对比项目SC-Math6GSM8K
1数学逻辑推理YESYES
2自然语言解决方案YESYES
3小学数学知识YESYES
4多步推理YESYES
5中文原生场景YESNO
6多轮深入推理YESNO
7题目推理步骤数YESNO
8可解析性的</br>模型推理等级YESNO
9测试题数量2024题<br/>(1012对)1300题

推理步数的分布

推理步数题目占比(%)
115-20
215-20
345-50
45-10
55-10

推理等级的计算

我们介绍了一种创新的方案来评估大模型的推理能力。它通过结合模型在不同推理步骤的表现和总体准确率,以科学且公正的方式进行评估。 其特点在于简明易懂,通过合理的阈值设置,确保了性能相近的模型被归入同一等级,方便了对新模型的快速评级,而无需重新评估现有模型。 这提供了一个透明、易于理解的框架,帮助公众衡量和比较大模型的推理能力和智力水平。

推理等级的计算方案

为了设计一个科学且综合的方案来计算模型的推理等级,我们可以采用以下步骤:

1. 数据准备和处理
2. 计算每个模型的推理步数得分

<img src="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/resources/img/weight_sum_reasoning.png" width="30%" height="30%"></img>

3. 计算每个模型的综合得分
4. 等级划分
5. 新模型的等级计算

评估标准

采取完全匹配的方式,计算准确率。 其中,答案只能是非负整数。

模型列表及使用方式

模型名称机构使用方式
GPT_4_1106_PreviewOpenAIAPI
GPT_4OpenAIAPI
文心一言4.0百度API
GPT_3.5_TurboOpenAIAPI
ChatGLM_Turbo智谱AIAPI
Qwen_14B_Chat阿里云API
Baichuan2_13B_Chat百川智能模型
ChatGLM3_6B智谱AI模型
讯飞星火_V3.0科大讯飞API
文心一言3.5百度模型
Chinese_Alpaca2_13BYiming Cui模型

测评结果

SuperCLUE推理能力等级

模型名称推理<br/>等级综合<br/>得分推理步数<br/>加权得分准确率<br/>综合得分
GPT_4_1106_Preview5级87.7688.6086.92
GPT_45级83.8683.6084.12
文心一言4.05级79.6480.7378.55
GPT_35_Turbo4级53.7554.8752.64
ChatGLM_Turbo4级52.5553.6051.49
Qwen_14B_Chat4级49.0549.7348.37
讯飞星火_V3.03级37.3940.8733.91
Baichuan2_13B_Chat3级36.7638.4035.12
ChatGLM3_6B3级33.0334.1331.92
文心一言3.52级21.0122.2019.82
Chinese_Alpaca2_13B2级18.0918.6717.51

注:准确率综合得分,代表了准确率的最终结果。由下表两个数的平均:全面准确率、平均准确率。

模型准确率得分

模型名称全面<br/>准确率平均<br/>准确率第一轮<br/>准确率第二轮<br/>准确率两轮<br/>差异
GPT_4_1106_Preview83.6890.1694.2286.10-8.12
GPT_480.5087.7391.7083.77-7.93
文心一言4.073.3283.7789.7477.80-11.94
GPT_3.5_Turbo43.9461.3372.4850.19-22.29
ChatGLM_Turbo42.4460.5471.9249.16-22.76
Qwen_14B_Chat38.5458.1972.3144.06-28.25
Baichuan2_13B_Chat25.0945.1559.2431.06-28.18
ChatGLM3_6B21.2342.6056.7228.44-28.28
讯飞星火_V3.020.5247.2969.1225.47-43.65
Chinese_Alpaca2_13B10.2324.7933.2116.32-16.89
文心一言3.59.5130.1343.0017.26-25.74

指令遵循率与回答长度

模型名称指令遵循率<br/>(答案)回答<br/>长度
GPT_4_1106_Preview99.44173.48
GPT_499.21126.75
文心一言4.068.04143.78
GPT_3.5_Turbo54.6482.11
ChatGLM_Turbo60.1591.84
Qwen_14B_Chat90.6771.1
Baichuan2_13B_Chat1.5470.00
ChatGLM3_6B20.9156.29
讯飞星火_V3.053.6661.03
Chinese_Alpaca2_13B18.1546.50
文心一言3.564.6843.14

推理步数的成绩分布

模型名称步数1步数2步数3步数4步数5
GPT_4_1106_Preview0.920.890.910.890.86
GPT_40.920.910.890.820.77
文心一言4.00.870.850.850.810.75
GPT_3.5_Turbo0.730.650.610.480.49
ChatGLM_Turbo0.700.650.600.510.44
Qwen_14B_Chat0.720.580.600.470.38
Baichuan2_13B_Chat0.560.480.440.380.28
ChatGLM3_6B0.580.490.410.270.25
讯飞星火_V3.00.620.480.470.310.38
文心一言3.50.490.290.290.160.15
Chinese_Alpaca2_13B0.400.290.220.140.12

成绩对比:SC-Math vs GSM8K

模型名称SC-Math6<br/>全面准确率GSM8K成绩来源
GPT_4_1106_Preview83.68未报告--
GPT_480.5092.0<br/> (5-shot CoT)GPT-4 report
文心一言4.073.32未报告--
GPT_3.5_Turbo43.9457.1<br/> (5-shot)GPT-4 report
ChatGLM_Turbo42.44未报告--
Qwen_14B_Chat38.5450.3 <br/>(0-shot)Modelscope<br/>项目
Baichuan2_13B_Chat25.0952.77<br/>(base)Baichuan2<br/>report
ChatGLM3_6B21.2372.3<br/>(0-shot CoT)ChatGLM3-6B<br/>Github
讯飞星火_V3.020.52未报告-
Chinese_Alpaca2_13B10.23未报告-
文心一言3.59.51未报告-

测评结论

通过我们获得的推理等级数据,我们可以得出以下三个关键结论:

1. 先进模型的卓越表现:

顶级模型(如GPT_4_1106_Preview、GPT_4 和文心一言4.0 )在推理任务中展现了卓越的性能,特别是在处理高难度的多步推理任务时。
它们在推理能力和准确性方面均达到了较高的标准,证明了当前大模型的先进水平。

2. 性能分层明显:

通过对不同模型的综合评估,我们可以看到性能上的明显分层。高等级模型在复杂任务上的表现远远超过低等级模型,这反映了在大模型领域内技术和能力的多样性和分层。

3. 针对不同需求的模型选择:

不同等级的模型提供了根据具体应用场景和需求选择合适模型的依据。例如,对于需要高精度和复杂推理能力的任务,更适合选择等级较高的模型;
 而对于一些基础应用,则可以考虑使用等级较低但仍具有效率和准确性的模型。

通过分析准确率和指令遵循率得分情况,我们还可以看到:

1. 准确率的递减趋势:

在所有模型中,第二轮准确率普遍低于第一轮准确率,这表明随着任务复杂度的增加(从第一轮到第二轮),模型的性能出现了下降。这种趋势在所有模型中普遍存在, 表明在设计和优化模型时,需要特别关注其在持续任务中的稳定性和适应性。

  比如,GPT_4_1106_Preview的第一轮准确率为94.22%,而第二轮准确率为86.10%,准确率下降了8.12%。同样地,ERNIE_35_Turbo_v2的第一轮准确率为43.00%,第二轮准确率为17.26%,下降了25.74%。

2. GPT系列模型的卓越性能:

GPT_4_1106_Preview和GPT_4在各项指标中均表现优异,尤其在全面准确率和平均准确率方面。这反映了GPT系列模型在处理复杂任务时的高效性和可靠性, 同时也表明了其在语言理解和生成方面的先进性。 GPT_4_1106_Preview在全面准确率上达到了83.68%,平均准确率为90.16%,而GPT_4的全面准确率为80.50%,平均准确率为87.73%,均高于其他模型。

3. 指令遵循率与准确率的相关性:

高指令遵循率模型(如GPT_4_1106_Preview和GPT_4)通常也展现了较高的准确率,而低指令遵循率模型(如Baichuan2_13B_Chat)则准确率较低。 这表明指令遵循率可能是衡量模型整体性能的一个重要指标,尤其在评估模型对任务要求的理解和执行能力时。 GPT_4_1106_Preview的指令遵循率为99.44%,全面准确率为83.68%,而Chinese_Alpaca2_13B的指令遵循率仅为18.15%,全面准确率也较低,仅为10.23%。

4. 准确率与答案长度的潜在关系:

在某些模型(如GPT_4_1106_Preview)中,较高的准确率伴随着较长的平均答案长度,这可能暗示这些模型在生成详尽回答时更为精确。 然而,这一趋势并不在所有模型中一致出现,表明答案长度与准确率之间的关系可能受多种因素影响,包括模型的设计和训练数据。 GPT_4_1106_Preview的平均答案长度为173.48,准确率较高,而ChatGLM3_6B的平均答案长度为56.29,准确率相对较低。这暗示在某些情况下,答案长度可能与准确率相关。

5. 性能差异的可能原因:

观察各模型之间的性能差异,可能反映了它们在架构、训练数据集、优化策略等方面的不同。例如,GPT系列模型可能因为更大的模型规模、更广泛的训练数据或更高级的优化技术而表现更佳。 对这些差异的深入研究有助于理解和改进现有模型的性能。

示例

示例1

<img src="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/resources/img/example2.png" width="86%" height="86%"></img>

示例2

<img src="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/resources/img/example0.png" width="86%" height="86%"></img>

示例3

<img src="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/resources/img/example1.png" width="86%" height="86%"></img>

讨论交流与使用

<p float="left"> 微信群: <img src="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/resources/img/scmath_group.jpeg" width="30%" height="30%"></img> 联系人: <img src="https://github.com/CLUEbenchmark/SuperCLUE-Math6/blob/main/resources/img/brightmart_s.jpeg" width="30%" height="30%"></img> </p>