英语轻松读发新版了,欢迎下载、更新

MLE-Star:最先进的机器学习工程代理

2025-08-01 17:01:16 英文原文

机器学习的兴起(ML)助长了各种现实世界中高性能应用的开发表格分类图像denoising。但是,制作这些模型仍然是机器学习工程师的艰巨努力,要求进行广泛的迭代实验和数据工程。要简化这些苛刻的工作流程,最近的调查专注于利用大型语言模型(LLM)作为机器学习工程(MLE)代理。通过利用其固有的编码和推理技能,这些代理将ML任务概念化为代码优化挑战。然后,他们探索潜在的代码解决方案,最终基于提供的任务说明和数据集生成可执行代码(例如Python脚本)。

尽管他们有希望的初步进步,但目前的MLE代理人面临着一些限制,以降低其功效。首先,他们对预先存在的LLM知识的严重依赖通常会导致对熟悉和常用方法的偏见(例如,Scikit-Learn库用于表格数据),忽略了潜在的特定任务特异性方法。此外,这些代理通常采用探索策略,在每次迭代中同时修改整个代码结构。这通常会导致代理商过早地将重点转移到其他阶段(例如,模型选择或超参数调整),因为它们缺乏特定管道组件内深,迭代探索的能力,例如对不同的功能工程选项进行详尽的实验。

在我们最近的,我们介绍MLE-Star,这是一种新颖的ML工程代理网络搜索和针对的代码块改进。与替代方案不同,MLE-Star首先搜索网络以获取适当的模型以获得坚实的基础,以应对ML挑战。然后,它通过测试代码的哪些部分最重要的部分来仔细改善该基础。MLE-Star还利用一种新方法将几种模型融合在一起,以更好地结果。这种方法非常成功 - 它在MLE-Bench-Lite的Kaggle竞赛中获得了奖牌,极大地表现了替代方案。

介绍MLE-Star

为了生成初始解决方案代码,MLE-Star使用Web搜索来检索可能有效构建模型的相关和潜在的最先进方法。[DA8046]为了增强解决方案,MLE-Star提取了代表不同ML管道组件的特定代码块,例如功能工程或合奏构建。然后,它专注于探索针对该组件的策略,反映了以前的反馈尝试。为了确定对性能最大影响的代码块,MLE-Star进行了一项消融研究,以评估每个ML组件的贡献。重复此完善过程,修改各种代码块。

此外,我们提出了一种生成合奏的新方法。MLE-Star首先提出了多种候选解决方案。然后,使用代理本身提出的合奏策略将这些候选者合并为单一的改进解决方案,而不是基于验证分数依靠简单的投票机制。根据前面策略的性能,这种合奏策略是迭代精制的。

最后但并非最不重要的一点是,MLE-Star结合了三个其他模块以增强其鲁棒性:(i)调试代理,(ii)数据泄漏检查器和(iii)数据使用检查器。对于调试代理,如果执行Python脚本会触发错误,导致记录(例如Trackback),则MLE-Star使用调试模块来尝试校正。关于数据泄漏检查器,我们观察到LLM生成的Python脚本具有引入数据泄漏的风险,例如,通过在培训数据准备过程中从测试数据集中访问信息不当。为了解决这个问题,我们介绍了一个检查器代理,该检查器在执行之前对解决方案脚本进行了分析。至于数据使用检查器,我们注意到LLM生成的脚本有时会忽略使用所有提供的数据源,仅关注CSV等简单格式。为了确保所有相关提供的数据的利用,MLE-Star包括数据使用检查器代理。

评估和结果

为了验证其有效性,我们使用Kaggle内部比赛MLE-BENCH-LITE。在这里,我们利用了将任务描述和最终解决方案作为输入的附加代理,并输出包含加载测试示例并创建提交文件的代码。

上图中介绍的实验结果表明,MLE明星仅需要最少的人类努力(例如,定义可推广到任何任务的初始提示),明显优于先前的替代方案,包括那些需要手动劳动从Kaggle收集策略。具体而言,MLE-Star在任何奖牌成就中都取得了可观的增长,与表现最好基线

对MLE-Star的收益的深入分析

为了了解MLE-Star的性能提升的来源,我们从各种角度进行了几项分析。在这里,我们检查了(i)MLE-Star使用的ML模型的类型,(ii)如何通过人为干预来扩展MLE-Star,以及(iii)其他数据泄漏和使用情况检查器如何进一步改善MLE-Star的性能。

  • 模型用法:考虑两个MLE代理的模型使用。助手主要雇用重新连接用于图像分类。然而,重新连接,现在于2015年发布,现在被认为已过时,可能会导致次优性能。相比之下,MLE-Star主要利用了较新的竞争模型有效网络或者VIT,导致观察到的性能增长。
  • 人类干预:MLE-Star很容易采用最新的人类干预模型。尽管MLE-Star会使用Web搜索自动构建模型描述,但自然扩展涉及利用人类的专业知识来进行这种构建。通过手动添加模型描述REALMLP,MLE-Star成功地将其培训代码集成到了框架中,这是以前未检索的模型。
  • LLM行为不端和更正:我们观察到,尽管LLM生成的代码正确执行,但其内容有时是不现实的,表现出幻觉。例如,下图(左边)说明了一种不切实际的方法,其中使用其自身统计数据预处理测试数据。由于测试数据必须保持看不见,因此必须对代码进行校正,而MLE-Star则使用数据泄漏检查器来识别此类问题并在检测到问题时完善生成的脚本。
  • 我们还观察到,LLMS通常会生成忽略一些提供的数据源的脚本。为了解决这个问题,MLE-Star采用数据使用检查器,该检查器重新检查任务描述,以确保使用所有给定的数据。如(所示正确的),该设计使MLE-Star能够合并以前被忽视的数据。

结论

我们提出了MLE-Star,这是一种新型的机器学习工程代理,专为各种ML任务而设计。我们的核心想法是利用网络搜索检索有效的模型,然后探索针对特定ML管道组件以改进解决方案的各种策略。MLE-Star的有效性通过在63%的奖牌(其中36%是金牌)中验证MLE-BENCH-LITEKaggle比赛。

通过自动执行复杂的ML任务,MLE-Star可以降低寻求利用ML的个人和组织的进入障碍,并可能促进各个部门的创新。此外,随着最新模型的不断更新和改进,MLE-Star生成的解决方案的性能有望自动提高。这是因为我们的框架利用搜索引擎从网络中检索有效的模型以形成其解决方案。这种固有的适应性可确保MLE-Star继续随着ML的进步领域提供越来越更好的解决方案。最后但并非最不重要的一点是,开发人员和研究人员现在可以使用我们新发布的开源代码库MLE-Star,以代理开发套件(ADK)。

致谢

我们非常感谢Jiefeng Chen,Jinwoo Shin,Sercan O Arik,Raj Sinha和Tomas Pfister的贡献。

关于《MLE-Star:最先进的机器学习工程代理》的评论


暂无评论

发表评论

摘要

机器学习的兴起(ML)推动了各种情况下高性能应用的开发。最近的工作重点是使用大型语言模型(LLM)作为ML工程代理,以优化给定的任务和数据集的代码。但是,当前基于LLM的代理人面临诸如偏见熟悉方法的限制,并且在特定管道组件中缺乏深入的探索。MLE-Star作为一种新颖的代理,将Web搜索和目标改进技术集成以增强模型性能。它在63%的Kaggle竞赛中获得了MLE-Bench-Lite的奖牌,通过利用更近期的模型并通过迭代改进来改善整体策略,从而极大地超过了替代方案。此外,MLE-Star还包括用于调试,数据泄漏检查以及确保全面数据使用的模块,以进一步提高鲁棒性和性能。