译者|布加迪评论|SunShujuan目前,还没有构建和管理机器学习(ML)应用程序的标准做法。机器学习项目组织不善,缺乏可重复性,从长远来看很容易彻底失败。因此,我们需要一个流程来帮助我们在整个机器学习生命周期中保持质量、可持续性、稳健性和成本管理。图1.机器学习开发生命周期流程使用质量保证方法(CRISP-ML(Q))开发机器学习应用程序的跨行业标准流程是CRISP-DM的演变,旨在确保机器学习产品的质量。CRISP-ML(Q)有六个独立的阶段:1.业务和数据理解2.数据准备3.模型工程4.模型评估5.模型部署6.监控和维护这些阶段需要不断迭代和探索以构建更好的解决方案。即使框架中有顺序,后一阶段的输出也可以决定我们是否要重新检查前一阶段。图2.每个阶段的质量保证框架的每个阶段都引入了质量保证方法。这种方法有要求和约束,例如性能指标、数据质量要求和稳健性。它有助于降低影响机器学习应用程序成功的风险。它通过持续监控和维护整个系统来实现。例如:在电子商务业务中,数据和概念漂移会导致模型退化;如果我们不部署系统来监控这些变化,公司就会蒙受损失,即失去客户。业务和数据理解开发过程从确定ML应用程序的项目范围、成功标准和可行性开始。之后,我们开始数据收集和质量验证过程。这个过程漫长而充满挑战。范围:我们希望通过使用机器学习过程实现的目标。是留住客户,还是通过自动化降低运营成本?成功标准:我们必须定义清晰且可衡量的业务、机器学习(统计指标)和经济(KPI)成功指标。可行性:我们需要确保数据可用性、机器学习应用程序的适用性、法律约束、稳健性、可扩展性、可解释性和资源需求。数据收集:通过收集数据,对其进行版本控制以实现可重复性,并确保真实数据和生成数据的持续流动。数据质量验证:通过维护数据描述、要求和验证来确保质量。为了确保质量和可重复性,我们需要记录数据的统计特性和数据生成过程。数据准备的第二阶段很简单。我们将为建模阶段准备数据。这包括数据选择、数据清理、特征工程、数据扩充和规范化。1.我们从特征选择、数据选择和通过过采样或欠采样处理不平衡类开始。2.然后,着重于降噪和处理缺失值。出于质量保证目的,我们将添加数据单元测试以减少错误值。3.根据模型,我们执行特征工程和数据扩充,例如单热编码和聚类。4.标准化和缩放数据。这降低了有偏见的特征的风险。为了确保可重复性,我们创建了数据建模、转换和特征工程管道。模型工程的业务和数据理解阶段的约束和要求将决定建模阶段。我们需要了解业务问题以及我们将如何开发机器学习模型来解决这些问题。我们将专注于模型选择、优化和训练,并将确保模型性能指标、健壮性、可扩展性、可解释性,并优化存储和计算资源。1.模型架构及类似业务问题研究。2.定义模型性能指标。3、选型。4.通过整合专家获得领域知识。5、模型训练。6.模型压缩与整合。为了确保质量和可重复性,我们存储和版本控制模型元数据,例如模型架构、训练和验证数据、超参数和环境描述。最后,我们将跟踪ML实验并创建ML管道以创建可重复的训练管道。模型评估这是我们测试并确保模型已准备好部署的阶段。我们将在测试数据集上测试模型性能。通过提供随机或虚假数据来评估模型的稳健性。增强模型的可解释性以满足监管要求。自动或通过咨询领域专家,将结果与初始成功指标进行比较。为了保证质量,评估阶段的每一步都被记录下来。模型部署模型部署是我们将机器学习模型集成到现有系统中的阶段。该模型可以部署在服务器、浏览器、软件和边缘设备上。来自模型的预测在BI仪表板、API、Web应用程序和插件中可用。模型部署过程:定义硬件推理。生产环境中的模型评估。确保用户接受度和可用性。提供备份计划以尽量减少损失。部署策略。监控和维护生产中的模型需要持续监控和维护。我们将监控模型及时性、硬件性能和软件性能。持续监控是流程的第一部分;如果性能下降到阈值以下,则会自动决定根据新数据重新训练模型。此外,维护部分不限于模型再训练。它需要决策机制、获取新数据、更新硬件和软件以及根据业务用例改进ML流程。简而言之,持续集成、训练和部署ML模型。结论训练和验证模型只是ML应用程序的一小部分。将最初的想法变成现实需要几个过程。在本文中,我们介绍了CRISP-ML(Q)以及它如何侧重于风险评估和质量保证。我们定义业务目标、收集和清理数据、构建模型、在测试数据集上验证模型并将其部署到生产环境中。该框架的一个关键组成部分是持续监控和维护。我们将监控数据和硬件和软件指标,以确定是否重新训练模型或升级系统。如果您不熟悉机器学习操作并想了解更多信息,请阅读DataTalks.Club审核的免费MLOps课程。您将获得所有六个阶段的实践经验,了解CRISP-ML的实际实施。原标题:MakingSenseofCRISP-ML(Q):TheMachineLearningLifecycleProcess,作者:AbidAliAwan
