普林斯顿大学发布CORE-Bench基准测试,基于90篇论文构建270个任务,评估模型在科研计算可重复性上的表现。任务横跨计算机科学、社会科学和医学三个领域,分三个难度级别。最先进的智能体在最高难度下准确率仅21%,表明自动复现科研结果仍面临巨大挑战。
大模型的能力确实越来越强,大家也敢在一些正经任务上依靠它了,比如辅助做科研。不过,现有的科研辅助类基准测试未免有点太简单,跟现实世界里的复杂任务一比,差距还是挺明显的。
最近,普林斯顿大学的研究团队放了个新基准——CORE-Bench(全称:Computational Reproducibility Agent Benchmark,计算可重复性智能体基准测试),专门盯着模型在处理科研问题中的计算可重复性这个硬骨头。
长期稳定更新的攒劲资源: >>>点此立即查看<<<

论文链接: https://arxiv.org/pdf/2409.11363v1
先说个前提:重复验证别人的论文,可是科研活动的根基。研究人员得拿着人家提供的代码和数据,看能不能把论文里报告的结果重新跑出来。
CORE-Bench 就是干这个的。它基于90篇公开发表的科学论文,构建了270个任务,横跨计算机科学、社会科学和医学三个领域。任务被硬核地分成了三个难度级别,既有纯文本的,也有需要理解视觉语言的任务。
更贴心的是,论文里还附带了一个评估系统,可以快速、并行地测试智能体的表现。相比挨个顺序跑测试,这个系统能省下好几天的时间,别小看这一点,在科研迭代中这很关键。
为了看看当前模型的水准,研究人员设计了两个基线智能体:一个是通用的 AutoGPT,另一个是专门针对这任务设计的 CORE-Agent,底层语言模型都用了 GPT-4o 和 GPT-4o-mini。结果呢?最好的智能体在最难的级别上,准确率也只达到了 21%。这说明,想让模型自动搞定常规科学任务,路还长着呢。

验证可重复性这事,可不是随便点点鼠标就行。它需要非常专业的领域知识,就算是经验丰富的研究人员,这活儿也相当费时费力。验证一篇论文,顺风顺水也得花上好几个小时。给100篇不同领域的论文建一个可重复性基准测试?想想就不现实。
研究人员的目标很明确:要找那些现实中很难验证,但构建基准测试相对简单一点的任务。核心思路是找到一个平衡点。
他们最终想出的解决办法,是基于 CodeOcean capsules 来构建基准。这玩意儿的好处是,可以很方便地进行复现。

具体怎么做呢?他们从CodeOcean里精挑细选,最后挑出了90篇可以复现的论文,然后分成两拨:45篇用来训练,45篇用来测试。

选论文的标准也相当讲究。因为CodeOcean上的论文来自不同学科、用着不同编程语言,为了搞出一个既真实又经得起考验的基准测试,研究人员定下了十条硬性标准。这些标准确保了CORE-Bench能代表一个多样化但又可实现的计算可重复性任务子集。

1. 必须是公开可获取的研究论文——这是基准测试的实现前提。
2. 来自计算机科学、医学或社会科学领域——主要想测试任务在分布变化下的准确性表现。
3. 用Python或R编写——同样是为了测试分布变化带来的影响。
4. 要包含README文件——虽然CodeOcean上不是所有胶囊都有,但现实世界里大多数论文都有这个说明,能提高构建的有效性。
5. 在CodeOcean硬件上运行代码不超过45分钟——确保在给定的时间和硬件限制下,这胶囊是可复现的。
6. 只需要一个相对简单的Bash命令就能复现——方便设计一个英文任务提示,告诉智能体在无法访问运行文件时该怎么执行代码。
7. 结果在代码输出中有清晰标记的图表、表格或文件名——省去了给杂乱无章的数据设计任务问题的麻烦。
8. 运行代码时结果差异小(方差低)——保证所有选中的胶囊都能被人类准确验证和复现。
9. 胶囊大小不超过10GB——确保在给定的资源限制下能跑通。
10. 胶囊的结果可以在本地运行代码时复现——这是可复现性的终极底线。
当然,不是现实世界里所有论文都符合这些条条框框。但有了它们,任务就更清晰了,也保证了在目前智能体的能力范围内,达到高准确率是行得通的。
接下来,对于每篇论文,研究人员手动创建了一组“任务问题”。这些问题主要关于能否成功复现论文生成的输出,用来评估智能体是不是正确地执行了代码并找到了结果。比如,可以让智能体报告模型的测试准确率、图表的轴标签,或者其他需要复现的信息。有些任务是单个问题,有些则包含多个连环问题。
数据集的每个任务里,都确保至少有一个问题光靠猜是解决不了的(比如开放式数值答案)。而且,只有当一个任务里的所有问题都答对了,这个任务才算正确完成。这就从根本上避免了蒙对的可能。
所有任务都来自CodeOcean上那些已经被验证为可复现的论文。研究人员觉得,这个基准测试要衡量的是智能体复现论文相关代码运行结果的能力,而不是去验证论文报告的结果本身是不是正确。所以,没必要把那些不可复现的论文也放进来,那样反而会引入额外的噪音。
能力要求高,且多模态
要搞定CORE-Bench里的任务,可不是只会写代码就行的。它需要多种能力:理解指令、调试代码、信息检索,还得能跨学科地解释结果。模型只有把这些技能都练好了,才有可能拿到高分。而这些技能,恰恰是复现任何一项新研究成果所必需的。
更关键的是,任务需要模型能处理代码输出的文本和图像。比如视觉类问题,得从图形、图表、图或者PDF表格的属性里提取结果;文本类问题,则要从命令行文本、PDF文本、表格,甚至是HTML、Markdown或LaTeX格式的内容中提取答案。
举个例子,一个视觉问题可能是:「从「室内空气质量 – 厨房 – 秋季」的图表中,报告湿度与气体之间的相关性」;而一个文本问题可能是:「报告第10个epoch后神经网络的测试准确率」。
直面现实世界的计算可重复性任务
比起那些为了测试而设计的“玩具问题”,CORE-Bench更注重一个东西:建构有效性。说白了,就是它能不能有效衡量模型在现实世界里的真实表现。它里面的任务和研究人员真正要干的活儿高度相关,而不是像其他编码基准测试那样,设计一些过于简化的场景,无法反映真实软件工程的复杂性。
换句话说,在CORE-Bench上表现提升了,那在真实世界的计算可重复性上,就大概率也能看到改善。这可是科学研究的基石啊。
迈向科研智能体的第一步
复制现有的科学工作,是实现能够进行原创研究的智能体的第一步,这一步至关重要,也是绕不过去的。CORE-Bench恰好就卡在这个位置上。
研究人员根据难度,把CORE-Bench分成了三档:CORE-Bench-Easy、CORE-Bench-Medium 和 CORE-Bench-Hard。
CORE-Bench-Easy 只包含最简单的任务,代码输出已经事先放在了环境里。智能体只需要在这个环境里导航,找到相关结果来回答问题就行,相当于开卷考试。
CORE-Bench-Medium 的难度上了一个台阶。智能体需要输入一个Docker命令来复制论文的代码,这主要考验它跟Bash终端交互的能力。如果智能体擅长跟终端打交道,这些任务应该也不算太难。
CORE-Bench-Hard 才是真正的考验。智能体得自己安装所有依赖项和库,还得搞对执行命令,才能复现出结果。所有东西都是从头开始。
评估中选了两个基线模型:
1. AutoGPT:研究人员基本没怎么动原始模型,只是给它加了个叫 query_vision_language_model 的工具,输入一张图片和一个问题,用OpenAI的API来返回答案,目的是让它能分析图表和插图里的结果。这个能力并不是专门为CORE-Bench设计的。
2. CORE-Agent:这是在AutoGPT基础上针对CORE-Bench定制开发的版本。主要改动是优化了程序检查,确保它能正确地提交和报告复现结果的文件(也就是 report.json)。

针对不同的难度级别,研究人员还加了专门的提示来引导智能体,大致是根据在训练集上的表现来调整指令。最费时间的部分,就是分析失败日志,然后找到管用的提示策略。
任务准确率是硬指标:所有任务问题都回答正确的任务数,占全体任务的比例。同时还看智能体的平均成本,也就是跑一次请求的平均API费用。
总体来看,使用GPT-4o的CORE-Agent 在基准测试集的所有三个难度级别上,都是表现最好的。它在CORE-Bench-Easy上解决了60.00%的任务,在CORE-Bench-Medium上解决了57.78%,但到了CORE-Bench-Hard,准确率就直线掉到了21.48%。

实验结果透露了一个重要信息:通用智能体只要通过简单的针对性调整,就能适应特定任务,并获得显著的性能提升。作为对比,使用GPT-4o的AutoGPT在CORE-Bench-Hard上只得了可怜的6.7%。
文本问题比视觉问题简单
所有智能体在处理基于文本的问题时,表现都始终优于基于视觉的问题。在测试集上,使用GPT-4o的CORE-Agent在CORE-Bench-Easy里,正确回答了59.26%的视觉问题和87.88%的文本问题;而使用GPT-4o-mini的CORE-Agent,则正确回答了37.78%的视觉问题和81.81%的文本问题。
视觉问题之所以难,关键是模型需要分析图表里的结果,而文本答案通常直接就能在终端输出里找到。如果生成了好几个输出文件,智能体有时根本找不到相关的图表在哪儿;就算找到了,分析输出也可能很费劲。
Python比R更简单
智能体在Python任务上的表现也远胜于R任务。一个可能的原因是,R任务的输出通常更难解析,因为很多R任务会生成完整的PDF手稿,智能体得从头到尾读一遍;另一个可能原因是,安装R包的依赖项可能比Python慢得多,耗时长就容易出错。

计算机科学任务中Python的比例过高,可能也解释了为什么与其他两个学科相比,计算机科学相关的任务往往更容易被复现。这虽然是个观察,但也算是数据带来的一个有趣推论。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述