科学家提出新型数据科学解决方案,可用于自动数据处理和分析等领域

更新时间:2024-03-30 15:56:33作者:橙橘网

科学家提出新型数据科学解决方案,可用于自动数据处理和分析等领域

近日, 公司创始人 &CEO 吴承霖带领团队,提出一种新型数据科学解决方案 Data Interpreter(数据解释器),采用分层图结构的动态计划、工具集成与经验重用方法,增强了基于大语言模型的智能体在多个数据科学领域任务上的能力。


图丨吴承霖(来源:资料图)

具体来说,在机器学习任务上,Data Interpreter 在 7 个数据集上的综合分数达到 0.95,与之前最优的 0.86 相比提升了 10.3%。

在数学推理任务上,相较基线提升了 26%,在数论类型的难度等级为 5 的任务上,取得了 0.81 的准确率。

在开放式任务中,相比于基线性能增长了 112%,不但显著超越目前其他的开源框架,还展示了该成果解决各种挑战的有效性。


图丨与各种开源框架在机器学习任务和现实世界开放式任务上的比较(来源:arXiv)

从应用上看,Data Interpreter 在以下几个方面具有良好的前景。

其一,自动数据处理和分析。Data Interpreter 可用于自动化复杂数据处理和分析任务,比如数据清洗、特征工程和数据可视化,以大幅提高数据科学家和分析师在数据预处理和探索性数据分析阶段的效率。

对于复杂数据类型的输入来说,则极大地扩展了语言模型的处理能力,结合大语言模型的语言和推理能力,该成果能够给出完整可靠的数据分析图文报告,从而有效提升数据分析从业者的效率。

其二,自动机器学习。通过自动选择最佳特征、调优模型参数和选择最合适的机器学习算法,Data Interpreter 能够加速机器学习模型的开发过程,降低对专业知识的依赖,使机器学习项目的落地变得更快且更高效。

与此同时,结合该成果的经验积累能力,还可以为机器学习工程师和数据科学家提供自动机器学习效果优化流程,自动提升对实际问题的建模效果,显著降低机器学习落地成本。

其三,智能业务流程自动化。Data Interpreter 能够学习和理解复杂的业务规则和流程,通过工具集成方式应用和组合相关业务规则,来实现业务流程的智能化,并提高企业的业务流程效率。

其四,复杂决策支持系统。Data Interpreter 可以为金融、医疗、供应链管理等领域的复杂决策支持系统提供良好支撑,比如通过分析大量数据和执行复杂的数学推理,来提供精确的预测和数据洞察建议。

在精准营销、用户画像等强依赖数据反馈和数据指标的场景,该成果则会提供快速、有效的分析结果和建议,通过分析大量数据来识别模式、趋势和异常,支持决策的制定过程,降低对这类场景中的人员的专业性要求。

其五,科研加速。Data Interpreter 有助于加速科学研究过程,特别是在生物信息学、气候模型分析等数据密集型的研究领域,能够通过自动化数据分析和模型构建,帮助科研人员更快地得出研究结论。


开发新型数据解释器,整体接近人类数据科学家的工作流程

现如今 AI 领域呈现快速发展的趋势,但基于大语言模型的智能体在处理数据科学问题时仍然面临诸多挑战,尤其是有关复杂数据流程的任务,如机器学习、数学推理等。

这些任务往往涉及多种数据类型和复杂的依赖关系,要求智能体准确理解和处理这些依赖,并根据实时数据反馈的变化来动态调整计划。

例如,在机器学习的数据清洗和特征工程流程中,会发生数据结构的实时变化,需要智能体根据数据灵活调整计划,以进一步分析与处理数据。

而在特征选择、模型训练和评估中,则需要根据效果不断地调整细节逻辑,这实际包含高度复杂的搜索空间和数据结果的深度解析,必须先分析效果变化原理,再改变代码,但这对于智能体而言非常具有挑战性。

为了克服数据科学领域的挑战, 团队基于自动机器学习领域的工作启发,设计了 Data Interpreter,不仅有利于简化复杂流程的计划难度,还能够增加任务的实时优化能力。


图丨Data Interpreter 的总体设计(来源:arXiv)

“在任务执行时,我们强化了大语言模型对基于代码组合使用工具的能力,通过对工具代码的深度理解,智能体可以进行工具的动态组合与代码片段优化,整体接近人类数据科学家的工作流程。”吴承霖表示。

据了解,在数据驱动的任务执行过程中,中间步骤和结果的准确性至关重要。

尽管目前的智能体已经能够利用代码解释器对执行结果进行反馈监控,但这种监控大多聚焦于捕捉异常情况,还不足以分析那些看似无误、实际却可能存在潜在问题的执行结果。

该团队通过研究发现,在处理含糊和复杂需求的数据科学问题时,大语言模型往往存在局限性,所生成的代码解决方案不但包含多种可能,也未必是最优解,还可能存在逻辑错误。

在这种情况下,对执行结果的逻辑一致性验证尤为关键。

对此,研究人员在代码的执行反馈中引入逻辑一致性的验证机制,以提高执行结果的可靠性。此外,还在任务执行过程中积累经验,进一步增强智能体在解决问题时的逻辑推理能力。

据吴承霖介绍,该研究主要经历了五个研究步骤,具体来说:

在第一阶段,该团队希望直接通过大语言模型进行机器学习建模任务和数据分析任务开发,但却在实践过程中发现,输入数据的多样性、数据流程的复杂性和内在数据之间错综的依赖关系,对于大语言模型来说过于复杂。

在缺乏人工引导的情况下,大语言模型在这类任务上的完成率极低。基于此,他们对解决数据科学领域问题的关键挑战,进行了广泛的文献检索和现有开源框架的调研。

“我们在调研过程中发现,Open Interpreter 作为基于大语言模型的智能体,在解决这类任务时具有较好的完成度,这说明代码解释器的执行流程有助于智能体获得有效反馈和更有效地执行任务。”吴承霖说。

并且,他们也发现具备数据分析能力的开源框架,如 AutoGen、TaskWeaver、XAgent 等,都采用了类似代码解释器的执行流程。

因此,他们结合代码解释器流程,对数据科学相关任务中的实际问题分别展开调研和快速测评,梳理和总结了面向数据科学领域的挑战。

在第二阶段,该团队设计了整体研究方案和研究方法,这包括进一步细化研究目标、具体展开和讨论研究内容,以及梳理和讨论研究方法。

在此过程中,他们不仅逐步完善了关于智能体整体架构和模块设计的具体方法,也深入到实验方案设计和前置工作的依赖拆解中,比如数据集的筛选和构建、评价指标的讨论和设计,以及实验步骤的初步规划。

“我们对数据科学领域的典型问题进行了比较和分析,包括数据可视化、数据探索分析、数值计算推理和机器学习相关任务,并逐步确立了机器学习数据收集任务和数值计算推理数据集难度筛选的要求。”吴承霖表示。

在第三阶段,研究人员主要并行展开了一系列实验。

针对机器学习任务,从 Kaggle 上选择了包括多种分类和回归任务等在内的常用的机器学习数据集,并按照数据集要求构建用户需求和验收测评方法,然后进行实验。

具体到实验过程,他们则分开测评不同开源框架的效果,并对 Data Interpreter 的不同模块进行消融实验。

吴承霖介绍说:“针对数值计算推理问题,我们采用公开的标准基准数据集 MATH,并选择了难度等级最高的任务进行测试。”

另外,为了进一步证明 Data Interpreter 在工具理解和使用上的效果,他们还收集了更为广泛的开放式任务,包括使用多模态工具和邮箱登陆、网页爬取等涉及中间步骤跟踪的任务。

需要说明的是,这些实验都是围绕 Data Interpreter 在任务规划和管理、数值结果推理和工具使用能力等方面,来逐一进行验证。

在第四阶段,该团队整理和分析了实验数据,并评估各项方法的有效性和性能。通过对比实验结果和预期目标,他们得以识别和定位 Data Interpreter 的能力边界、实际效果和需要改进的地方。

在第五阶段,他们又对 Data Interpreter 的内部处理流程和实现方法进行迭代和优化,包括计划代码的更新、工具使用提示词的优化,以及推理中参数改进等。

随着代码迭代和参数优化,他们还继续迭代验证了相关实验效果,并进行相应的数据结果分析。

最终,相关论文以《数据解释器:数据科学的大语言模型智能体》()为题在预印本平台 arXiv 上发表[1]。

公司高级研究员 Sirui Hong 和 Yizhang Lin 是第一作者,吴承霖担任通讯作者。

图丨相关论文(来源:arXiv)


科研旅程的宝贵记忆

在吴承霖看来,以下几件让他和团队印象深刻的故事,是这段科研旅程中最为宝贵的记忆。

一方面是“深夜的灵感”。在研究设计和初步实验的阶段,对于大语言模型在数据科学问题中自动组合工具和细粒度应用工具的设计和实验来说,研究人员的进展较慢。

由于工具使用场景非常复杂,他们既需要多个工具的嵌套和拼接使用能力,也需要大语言模型在调用工具的代码上下文中,自动生成“胶水代码”。

而目前常见的工具调用方式主要依赖大语言模型的函数调用方式,会将自然语言直接转换为工具 API 的调用参数,但是该方法仅返回 API 调用代码,缺少其他代码片段。

“所以,仅仅依靠大语言模型的函数调用或纯粹的代码生成能力,显然不足以满足我们的场景需求。还需要将工具理解纳入代码生成上下文,要求在大语言模型代码生成过程中自动组合工具并设置参数。”吴承霖解释道。

但即便进行了连续数日加班加点的工作,研究人员在该方法上依然未能实现突破性进展。

直到某一天的凌晨两点三十分,当其中一个团队成员把问题“回退”和简化后,再次将工具描述的结构化数据直接拼接到代码生成的上下文中,才发现大语言模型可以在给定上下文中动态组合工具和调整参数,并达到预期效果。

“虽然那时已是凌晨,但是团队里其他成员还是立刻着手验证测试这个方法,并快速证明了它的有效性。”吴承霖表示。

从中,他也意识到科研和探索过程充满不确定性,有时候需要跳出局部思维,往“回”看一步,才能找到新的思路和突破。

另一方面是跨学科、跨时区合作的挑战。据了解,该团队的成员背景既包括机器学习领域,也包括多模态和自然语言处理领域,并且分布在全球 4 个不同时区。

这种跨学科和跨时区的合作,不仅丰富和完善了团队成员的知识体系和方法论,更能增强他们利用不同学科特点解决复杂问题的能力。

除此之外,随着 Data Interpreter 工具能力和推理能力的持续增强,研究人员还设计了一个使用 Stable Diffusion 工具任务验证其对本地代码理解能力的效果。

“出乎意料的是,我们仅用 5 分钟将本地 Stable Diffusion 代码输出为工具的结构化数据,Data Interpreter 就能正确使用工具完成文本到图像任务的全流程。”吴承霖表示。

这对整个团队来说都是巨大的惊喜,意味着 Data Interpreter 可以快速集成和学习大量已有的代码,进行插拔式的工具增强和工具调用,而无需进行工具使用的训练微调。

谈及接下来的研究计划,吴承霖希望结合自动机器学习的相关技术,让 Data Interpreter 能够进行自动机器学习建模,包括全流程的自动设计和优化、自动特征工程、自动超参优化,以及自动模型选择和集成能力。

同时,在更广泛的机器学习任务和数据科学任务上,进行深入持续的探索,并尝试在自然语言处理/计算机视觉等模态上使用 Data Interpreter 进行数据探索和建模流程自动化设计。

不仅如此,他们还打算进一步丰富数据科学问题的数据集、完善测评指标,以及建立可用于测评基于大语言模型的智能体在数据科学问题上的基准测试。

此外,研究人员所在的 公司曾于 2023 年 6 月开源了多智能体框架 MetaGPT(https://github.com/geekan/MetaGPT)。据了解,目前该框架在 GitHub 上已有 37.7k star,该论文入选 2024 ICLR Oral。

参考资料:

1.S., Hong, Y., Lin, B., Liu. et al. Data Interpreter: An LLM Agent For Data Science. arXiv:2402.18679(2024). https://doi.org/10.48550/arXiv.2402.18679

运营/排版:何晨龙

01/

02/

03/

04/

05/