机器学习可重复性危机下,创建复杂数据系统的挑战

发布时间:2023年12月17日

🍉 CSDN 叶庭云https://yetingyun.blog.csdn.net/


一、前言

数据科学系统已成为众多研究领域的关键性工具,其开发者群体呈现出多元化的背景特征。在过去十年中,尽管数据科学与机器学习的强大工具被广泛采纳,但相关领域也日益面临可重复性危机的挑战。

在这里插入图片描述

由剑桥大学的数据科学权威带领的一个跨学科团队,最近在《自然-机器智能》杂志的 “观点” 栏目中发表了一篇文章。该文诊断了当前机器学习领域可重复性危机的根源:一方面是不当激励机制的存在,另一方面是软件工程技能普遍缺失。此外,文章深入探讨了软件工程和构建大规模复杂系统时所遭遇的普遍难题,并提出了八项创建复杂数据系统进行科研所面临的主要挑战。

为应对这些挑战,文章提倡两个核心开发原则。首先是采取迭代式进化而非一次性完备设计的方法来构建复杂数据系统;其次是在开发过程中实施代码正确性验证和效能评估反馈机制。这些原则旨在推动软件工程方法在优化复杂数据系统工程实践中的应用与普及。

论文地址:https://doi.org/10.1038/s42256-023-00665-x


二、主要内容

一句话总结:机器学习领域面临可重复性危机,原因是激励机制不足和软件工程技能匮乏,解决方法是采用逐步发展的方式、优化软件架构、编写有效的测试套件,并改进学术界的激励机制。

文章概览要点:

  • 机器学习领域面临可重复性危机,主要原因是激励机制不足和软件工程技能匮乏。
  • 创建复杂数据系统的挑战包括数据和代码的复杂性、软件工程技能缺乏、团队协作和个人工作之间的平衡、学术界与工业界之间的鸿沟等。
  • 在开发复杂系统时,应采用逐步发展的方式,遵循软件架构和敏捷开发方法,以降低构建复杂性。
  • 反馈回路是开发复杂系统的关键,通过对齐性和周期时长来评估反馈回路的有效性。
  • 软件架构对于降低系统构建复杂性和提高代码可读性非常重要,水平分层结构是数据科学系统的良好架构。
  • 编写测试套件对于保证代码正确性和数据可信度至关重要,基于属性的测试和数据测试是有效的测试方法。
  • 学术界需要改进激励机制,与期望的科研目标相匹配,以促进高质量数据科学系统的创造和发布。

三、总结

我们通过进行实验来提出数据问题。就如同在深入的交谈中,你必须仔细听取答案,并据此调整自己后续的回应和提问。这并不意味着你的问题生成算法需要贪婪,但它必须是持续迭代的。一方面,迭代工作释放了反馈回路的潜力,这在处理复杂或真实数据时尤为重要。另一方面,这要求你在与数据交互时具备灵活性。

反馈回路是特征工程、模型开发等各环节的基础设施。反馈回路让我们能以更快、更远、更自信的步伐前进。逐步发展的数据科学系统能够充分利用反馈回路的力量。正确性和有效性是两个不同的概念,它们需要不同的反馈回路。对于正确性而言,最核心的反馈回路是编写和执行测试套件,并尽可能编写清晰易懂的代码。对于打造有效反馈回路来说,最重要的一点是尽早建立起整个数据流水线,并使其尽可能细致。

我们注意到,(几乎)没有反馈回路能实现完全对齐;但是,对齐却是不可或缺的。然而,我们要指出,在迭代不对齐的反馈回路时可能会出现微妙的问题。过拟合,也被称为古德哈特定律,指出一旦某个度量成为目标,它就不再是一个好的度量标准。过拟合主要是有效反馈回路的问题。此前研究认为,人和流程通过不协调的反馈来优化不当的激励,可能导致他们(有意或无意地)“玩弄系统”。这种过拟合,即在验证集上的过拟合,可能影响整个数据科学系统,而非仅限于模型。尽管研究者在训练模型时通常意识到这个问题,但他们往往未能察觉到整个数据科学系统存在同样问题。

机器学习和数据科学项目中,通常把数据集分为训练集、验证集和测试集,其中训练集用于训练模型,验证集用于在模型训练过程中调整参数和选取最佳模型,而测试集则在所有模型开发完成后,用于评估模型表现。针对模型过拟合的策略,也同样适用于数据科学系统,例如,在开发过程中不使用保留的测试集,而是在开发最后才用测试集评估模型。最后,我们再次强调可重复性是一个社会技术问题,对学生和早期职业研究人员进行这些特定问题的培训至关重要。


📚? 参考链接:

文章来源:https://blog.csdn.net/fyfugoyfa/article/details/134994118
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。