MLOps与机器学习运营的融合

随着自动化生产系统的建立,包括工厂、装配线等,技术的发展带来了敏捷系统的出现,这些系统通过操作化产品生命周期来实现自动化创造过程,帮助推动持续创新,消除浪费。当然,所有这些过程将带到了当前世界,正在将注意力转向机器学习的洞察力,这使来到了MLOps。

机器学习运营(MLOps)是一个框架,专注于组织内数据科学家与运营单位之间的协作。该框架旨在减少错误、最小化浪费、进一步提高自动化,并在机器学习的帮助下产生更有价值洞察力。MLOps遵循与DevOps相似的路径。虽然DevOps侧重于通过每次构建更好的产品来缩短产品生命周期,但MLOps提供了可以立即更好利用的洞察力。

MLOps被认为是集成了两个世界的最佳实践,因为它在改进组织运营中扮演着强制角色。MLOps鼓励数据科学家以组织利益的角度看待他们的角色,这有助于确保清晰度和可衡量的指标。

尽管许多人会认为,由于机器学习是一种软件工程学科,DevOps原则可以应用于它。在某种程度上这是正确的,但两者有几个关键区别。DevOps是一种实践,涉及大规模构建和运营软件系统。

DevOps相比,MLOps更具实验性。这个新框架要求数据科学家尝试不同的功能、参数和模型。在处理ML时,团队通常包括数据科学家和ML研究人员,他们可以帮助模型开发、理解探索性数据分析和实验。尽管他们可以更好地理解系统,但他们无法提供软件工程师能够提供的生产级服务。

ML测试相对更复杂。该过程将包括数据验证、模型验证和训练模型质量评估,以及单元和集成测试。部署ML也是一个复杂的过程,因为它需要一个多步骤的管道到位,允许自动化重新训练和部署模型的过程。

ML中不断演变的数据概况可能导致与次优编码配对时性能下降。模型可能以比其他软件系统更多的方式崩溃,需要专家跟踪聚合统计数据并监控性能。

ML与其他软件系统的相似之处在于持续集成、资源管理、集成测试、单元测试和持续交付。然而,在ML中,持续集成超越了代码和组件,包括数据:测试和验证数据和数据模式。持续交付还要求ML训练使用自动化部署模型预测服务。

MLOps的好处在于,操作化数据有助于获得洞察力,并利用这些知识开发可操作的商业价值。以下是添加MLOps可以帮助组织获得更多价值的方式:

MLOps有助于弥合公司运营单位的业务知识与数据科学团队进行的研究之间的差距。ML寻求利用两个领域创造更有价值ML。

虽然数据科学家可能正在努力获得更好的洞察力,但如果组织遇到监管问题,所有努力都可能白费。ML有助于推动对当前机器学习和数据科学工具和技术的投资,以更大程度地建立不同团队和项目之间的记录系统。

组织如何在其组织模型中实施MLOps?在实施MLOps之前,以下是一些要考虑的基本点:

基准 - 组织的KPI应该是简洁和可衡量的,以吸引所有成员。必须在数据科学家和运营团队成员之间持续协作,以了解他们的角色并利用洞察力。

监控 - 两个单位必须在过程的每一步进行监控。由于ML需要定期重新训练数据,组织需要仔细监控过程,以确保每个人都在合规工作,并且程序提供质量信息。

合规性 - 为确保每一步的合规性,MLOps需要一个全面的管理计划,以帮助确保创建的程序是可审计的,并在运营范围内。

Kubernetes如何推进MLOps?Kubernetes本质上是一个开源容器编排系统,组织用它来自动化桌面应用程序的部署、扩展和管理。作为编排器,Kubernetes用于构建可扩展的分布式系统,也用于为数据科学家可以工作的各个机器学习框架带来急需的灵活性。

这种灵活性扩展到运行机器学习系统的单位所需的可扩展性和可重复性,以及运营单位所需的资源分配控制。当在机器学习中使用时,Kubernetes可以大大促进数据科学家和业务运营商的过程。

数据科学和部署路径通常是不同的实体。一方面,数据科学家使用一套工具和基础设施创建实验,而开发团队使用不同的工具和基础设施重新创建模型。为了使过程更加一致,组织应该寻求实施一个联合管道,形式为Kubeflow,它使用Kubernetes在多个框架上训练和扩展模型,而不需要任何基础设施规划的专业知识。

结论:机器学习是数据科学的未来,将MLOps整合到组织结构中可以在减少错误和构建更高效的模型方面大有裨益。MLOps可以从今天在DevOps中使用的工具中受益,以实施CI/CD和生产最佳实践。Kubernetes非常适合机器学习。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485