当前位置: 首页 > 科技观察

吴恩达80-20定律:80%的数据+20%的模型=更好的机器学习

时间:2023-03-18 22:55:16 科技观察

机器学习的进步究竟是由模型带来的还是数据带来的,这可能是一个百年的争论。吴恩达对此的思考是,机器学习团队80%的工作应该在数据准备上,保证数据质量是重中之重。每个人都知道应该这样做,但没有人关心。如果更多地强调以数据为中心而不是以模型为中心,那么机器学习会进步得更快。在arxiv上寻找机器学习相关的研究时,所有模型都在围绕基准测试展示其模型能力。比如Google有BERT,OpenAI有GPT-3。这些模型只能解决20%的业务问题。在业务场景中获得更好的结果需要更好的数据。传统软件由代码驱动,而人工智能系统是使用代码(模型+算法)和数据构建的。以前的工作方式是,当模型的效果不理想时,我们会修改模型,而不会想到可能是数据的问题。机器学习的进步一直受到提高基准数据集性能的努力的推动。研究人员的一个普遍做法是在尝试改进代码的同时保持数据固定,而专注于模型改进以提高模型性能实际上是非常低效的。但是,当数据集大小适中(<10,000个示例)时,需要尝试和改进代码。根据剑桥研究人员所做的一项研究,最重要但仍经常被忽视的问题是数据格式不统一。当数据从不同来源流出时,这些来源可能具有不同的模式、不同的约定以及它们存储和访问数据的方式。对于机器学习工程师来说,这是一个繁琐的过程,需要将信息组合成适合机器学习的单个数据集。小数据的缺点是少量的噪声数据会影响模型效果,而大数据量会使标注工作变得非常困难,高质量的标签也是机器学习模型的瓶颈。这些言论也让机器学习社区重新思考MLOps。什么是MLOps?MLOps是机器学习和操作的组合,是ModelOps的子集,ModelOps是数据科学家和操作专业人员之间协作和沟通的一种实践,以帮助管理机器学习任务的生命周期。与DevOps或DataOps方法类似,MLOps旨在提高自动化程度并提高生产ML的质量,同时还关注业务和法规要求。互联网公司通常有很多数据,如果你把AI部署在缺乏数据的应用场景,比如农业场景,你不能指望自己有一百万台拖拉机来给自己采集数据。基于MLOps,AndrewNg也提出了一些建议:MLOps最重要的任务是提供高质量的数据。标签的一致性也很重要。检查标签是否有明确的界限。即使标签定义明确,缺乏一致性也会导致模型性能不佳。系统地提高基线模型的数据质量比使用低质量数据追求最先进的模型更好。如果在训练过程中出现错误,则应采用以数据为中心的方法。如果以数据为中心,则较小数据集(<10,000个样本)的数据容量有很大的改进空间。在处理较小的数据集时,提高数据质量的工具和服务至关重要。一致的数据定义,涵盖所有边缘情况,及时从生产数据中获得反馈,以及适当的数据集大小。Ng还建议不要指望工程师尝试改进数据集。相反,他希望ML社区开发更多的MLOps工具来帮助生成高质量的数据集和AI系统,并使它们可重现。除此之外,MLOps是一个新兴领域,MLOps团队最重要的目标应该是确保项目所有阶段的高质量和一致的数据流。一些MLOps工具取得了不错的效果。Alteryx处于自助数据分析运动的前沿。该公司的平台“Designer”旨在快速发现、准备和分析客户详细信息。该工具使用易于使用的界面,用户可以在其中连接和清除数据仓库。Alteryx的工具还包括空间文件的数据混合,可以附加到其他第三方数据。Paxata提供灵活部署、自助运营的自适应信息平台。它使分析师和数据科学家能够收集多个原始数据集,并将它们转化为有价值的信息,这些信息可以立即转换为执行模型训练所需的格式。该平台基于所见即所得的设计,采用电子表格式数据呈现方式,因此用户无需学习新工具。此外,该平台能够提供算法帮助来推断所收集数据的含义。TIBCOSoftware最近在这个快速发展的领域崭露头角。它允许用户连接、清理、组合和组织来自不同来源的数据,其中还包括大数据存储。该软件使用户能够通过简单的在线数据整理进行数据分析,并提供完备的API支持,可根据个人需求进行更改。网友纷纷表示,吴恩达老师说的太对了!也有网友表示,机器学习更像是数据分析,构建模型就是构建流水线。