一、介绍

大型语言模型(LLMs)在处理新颖数据集上的机器学习任务时表现如何?WeirdML 基准测试让 LLMs 面对需要仔细思考和实际理解才能解决的奇怪和不寻常的机器学习任务,测试 LLMs 的能力包括:

  1. 实际上理解数据和问题的特性

  2. 提出适合该问题的机器学习架构和训练设置,并生成实现解决方案的可运行的 PyTorch 代码

  3. 根据终端输出和测试集的准确性,在5个迭代中调试并改进解决方案

  4. 充分利用有限的计算资源和时间

每个任务都包含一个任务提示,精确描述了问题,并提供了一些加载数据和保存预测的示例代码。不同的任务提出了各种挑战:有些需要大量的数据增强,有些需要仔细进行特征工程,或者需要从输入的不同部分组合信息。

二、结果

该图提供了多个指标下模型性能的全面总结,适用于所有包含任务都有结果的模型。'跨任务平均准确率'列展示了整体平均准确率(粗体数字),它是每个任务的平均最大准确率的平均值。也就是说,对于每个模型,我们取每次运行中每个任务的 5 次迭代中的最大准确率,然后计算给定任务(通常为 5 次运行/模型/任务)的所有运行的平均值,最后将这些结果平均值计算所有 19 个任务。粗实线表示此平均值的 95%置信区间,该置信区间是通过自助法估计的,反映了每个任务不同运行之间的差异性。每个任务的平均值以散点图形式显示,每种任务类型都有不同的标记(请参见顶部的图例)。'每次运行成本(美元)'列展示了每次模型运行的平均总成本,包括所有迭代。'代码长度(行数)'列展示了每个模型生成的 Python 代码长度的分布情况,粗实线覆盖第 10 百分位到第 90 百分位,垂直线表示中位数行数。 最后,“Code Exec Time (s)”列显示了模型为所有任务生成的所有 Python 脚本的执行时间直方图。

这个散点图展示了每个模型的成本与所有任务的整体平均准确率之间的权衡。X 轴(每次运行的平均成本)采用对数刻度,表示包括所有迭代在内的完整运行的总估计算法成本(单位为美元)。Y 轴(平均最大准确率)显示了整体平均准确率,如模型性能摘要图中所示。实际数据点位于每个公司标志的中间,而不是文本。

五次迭代的准确性进展。对于五个高亮模型,标记显示在第 n 次迭代后每个任务的“最佳迄今”测试准确率的均值,所有运行和所有 19 个 WeirdML 任务的平均值;垂直的胡须是 95% 的自助法置信区间。单次迭代(最左侧的点)捕捉零样本代码生成,而后续的点则包含多达四轮反馈,形式为测试准确率和 Python 执行的终端输出。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

三、评估设置

评估使用一个自动化管道,该管道:

  1. 将任务呈现给 LLM

  2. 在隔离环境中执行生成的代码

  3. 评估结果并对照测试集

  4. 向 LLM 提供反馈(代码执行的终端输出和测试准确率)以供改进

评估管道展示从 LLM 代码生成到隔离执行,再到指标评估和反馈的流程,通过 Docker 强制执行固定的计算约束。

四、系统架构

系统在具有严格资源限制的 Docker 容器中执行代码(使用 TITAN V GPU,配备 12GB 内存,超时时间为 120 秒)。这确保了模型之间的公平比较,并测试了它们在现实约束条件下的工作能力。

每次“运行”包含 5 次迭代,即 LLM 会收到 5 次提交,并进行 4 轮反馈,使其能够从反馈中学习并改进解决方案( 完整系统提示[3] )。每次运行的准确性是该运行中所有 5 次提交达到的最高测试准确率。

对于每个任务,我们为每个模型至少进行了 5 次运行(由于成本较高,o3-pro、claude-4-opus 和 gpt-4.5 每个任务只进行了 2 次运行),以考虑到我们在同一模型在同一任务上看到的性能差异很大。每个模型在该任务上的最终得分为所有运行的平均准确率。

五、任务

LLMs 将在多种不同的机器学习任务上进行评估。这些任务旨在能够在非常有限的数据下解决,同时仍然具有挑战性。它们还应该要求 LLMs 清晰地思考并真正理解数据及其属性,而不仅仅是盲目地应用标准的机器学习方法。

以下是六个用于 WeirdML v1 的初始任务的更详细描述。关于十三个新任务,我将仅分享任务名称,而不会提供其他详细信息。因此,这六个任务可以作为示例任务,而新任务则是一个隐藏的测试集,模型在此之前从未见过。我们还在这里展示了每个模型在这六个任务上的每次运行结果,以更好地了解每个模型在每个任务上的性能差异,以及这些任务是如何逐渐饱和的。

来自“形状(简单)”任务的示例数据。这些形状始终居中,并且具有固定的方向和大小,这使得这是形状识别任务的较简单版本。

01.形状分类(简单)

一个形状分类任务( 任务提示[4] ),模型需要从一组 512 个 2D 坐标中识别出一个形状(圆形、正方形、三角形、五边形、星星),其中只有部分点构成了形状,其他点是噪声。这些形状总是居中,并且具有固定的朝向和大小,这使得这是形状识别任务的简化版本。训练集包含 1000 个样本。

在这个任务中,模型需要找到一种方法来编码数据,使得这种编码对点的排列变化具有不变性。形状上的点分布差异很大,因此模型需要结合来自多个点的信息来做出一个好的预测。

每个模型在形状分类(简单)任务上的最高准确率。柱状图显示了所有运行的平均值。灰色点代表单次运行的结果。

从图中可以看出,这个任务基本上已经解决了。如果你在架构设计上不够小心,很容易完全过拟合训练数据,但如果你做点合理的事情,基本上可以得到接近完美的分数。

Shapes(Hard)任务的示例数据。这些形状的位置、方向和大小都是随机的,这使得这是一个比形状识别任务更具有挑战性的变体。

02.Shapes(Hard)

类似于 Shapes(Easy),但形状的位置、方向和大小是随机的( 任务提示[5] )。这测试了模型创建平移不变、旋转不变和尺度不变特征的能力。在这个任务上,良好的数据增强也非常重要。

每次运行在 Shapes(Hard)任务上的最大准确性。柱状图显示所有运行的平均值。灰色点表示单次运行的结果。

虽然在结构上与简单版本类似,但这个任务要难得多。在简单任务中,当形状总是处于相同位置时,模型可以学会哪些位置对应于哪些形状。在这里却不可能这样做,现在你需要以旋转不变和尺度不变的方式使用不同点的相对位置,这要难得多。

虽然大多数模型通常只能略好于随机猜测,但最好的模型却能持续表现更好,而且我们几乎达到了90%的最佳得分。

来自“图像块洗牌(简单)”任务的示例数据。模型必须将 9 个打乱的灰度图像块(每个 9x9 像素)重新排列以重建原始的 27x27 图像。

03.图像块洗牌(简单)

模型必须排列 9 个洗牌的灰度图像块(每个 9x9 像素),以重建原始的 27x27 图像。所有块都保证来自同一张连贯的图像( 任务提示[6] )。训练集包含 1000 张图像。

这里的原始图像来自时尚 MNIST 数据集,这是一个包含 28x28 像素的时尚物品灰度图像数据集,图像中的衣物位于黑色背景的中央。这意味着,单个块的位置往往可以从块本身推断出来,例如,图像左侧的块通常包含衣物的左侧等。即使你没有很好地结合不同块的信息,也可以获得不错的分数。

每个模型在图像块洗牌(简单)任务上的最高准确率。柱状图显示所有运行的平均值。灰色点表示单次运行的结果。

来自 Image Patch Shuffling(Hard)任务的示例数据。模型必须将 9 个乱序的 RGB 图像块(每个 9x9 像素)重新排列,这些图像块来自一个更大的 64x64 图像的随机 27x27 子集。

04.图像块洗牌(困难版)

一个更具挑战性的版本,其中块是 RGB 格式,并且是从较大 64x64 图像的随机 27x27 子集提取的( 任务提示[7] )。这里的设置与简单版本非常相似,但你现在无法从块本身推断出块的位置,因为块是从图像的随机子集提取的(所以左侧的块可以从图像的中心提取)。原始图像现在也来自 imagnette(imagenet 的一个子集),其背景更加多样化,这使得推断单个块的位置变得更加困难。这意味着模型需要从不同的块中结合信息,并利用块应该彼此很好地拼接的事实来做出一个好的预测。

每次运行在图像块洗牌(困难)任务上每个模型的最大准确性。条形图显示所有运行的平均值。灰色点表示单次运行的结果。

棋弈结果预测任务的示例数据。模型必须根据给定的游戏走棋序列(以字符串形式给出,这里截断了)预测棋局的结果(白胜、黑胜或和棋)。

05.棋局结果预测

根据棋局走法序列( 任务提示[8] )预测棋局结果(白胜、黑胜或和棋)。数据包括由初学者(等级低于 1300)对弈的棋局,棋局走法使用标准代数记谱法记录。需要注意的是,有 50%的概率会移除最后一个走法(单个玩家的走法),以防止模型利用谁最后走棋作为结果的信号。训练集包含 1000 局棋局。

在此,模型需要将字符串拆分为走法,然后将每个走法的字符串转换为某种手工构建或学习到的特征,最后使用这些特征来预测棋局结果,同时处理棋局长度不一致的问题。一旦找到一些好的特征,就有很多模式可以显著优于随机猜测来预测棋局结果。

每个模型在国际象棋比赛结果预测任务中每次运行的最大准确性。条形图显示了所有运行的平均值。灰色点代表每次运行的结果。

简单地猜测白方获胜总是会给你大约 50%的胜率,这也是为什么我把“随机胜率”线设为 50%的原因。自从 WeirdML v1 以来,这个任务几乎没有取得什么进展,这表明要在这里达到 80%以上胜率是非常困难的,尽管我还是认为通过正确的策略可以取得更好的成绩。

无监督手写数字识别任务的示例数据。模型必须仅使用26个标记样本和大量未标记数据进行分类。

06.无监督手写数字识别

一个半监督学习任务,模型必须仅使用 26 个标记样本和大量未标记数据进行分类( 任务提示[9] )。由于未标记数据集中的类别分布不均,使得任务更加复杂。未标记训练集包含近 16000 个样本。

这可能是最直接的任务,因为可以应用一个相当标准的半监督机器学习食谱,但至少这是一个模型之前未见过的数据集,让半监督学习起作用本身并不容易。

每个模型在无监督数字识别任务中每次运行的最大准确率。柱状图显示了所有运行的平均值。灰色点表示单次运行的结果。

自 WeirdML v1 以来,模型有了很大的改进,现在最好的模型都表现得非常稳定。

六、如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

 

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。


👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。


1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

 

更多推荐