MLOps 是 DevOps 和 DataOps 的机器学习操作对应物。 但是,在整个行业中,MLOps 的定义可能会有所不同。 有些人认为 MLOps 专注于 ML 实验管理。 其他人认为 MLOps 的症结在于为模型和数据设置 CI/CD(持续集成/持续交付)管道,就像 DevOps 为代码所做的一样。 其他供应商和客户认为 MLOps 应该专注于所谓的特征工程——用于训练 ML 模型的数据的专门转换过程。 对于其他人,MLOps 涉及模型开发之后的所有事情,包括在存储库中维护模型、部署它们以及监控它们的运行状况、性能和准确性。
多米诺骨牌,从头到尾
一些供应商认为 MLOps 包含上述所有内容。 Domino Data Lab 就是这样的供应商之一,该公司今天宣布推出其端到端 MLOps 平台的新版本——Domino 4.6。 而且由于 Domino 专注于机器学习操作的所有方面,它并没有添加新的方面,而是显着改进了其中的一些方面:模型监控、云部署以及支持用于模型开发和培训的分布式计算环境。
监控改进讲述了两个 MLOps 城市的故事。 其中之一是仍在将 ML 逐步引入其业务或什至只是踢 ML 轮胎的现场客户。 对他们来说,仅仅存在监控就足够了。 另一方面,现场客户已经毕业,可以大规模进行机器学习,部署了数百甚至数千个模型。 对于这个队列,监控需要扩展。
监控、云和计算,我的天啊
ZDNet 采访了 Domino Data Lab 联合创始人兼首席执行官 Nick Elprin,他向我们介绍了 Domino 4.6 的详细信息。 他首先解释说,对于那些需要高性能模型监控的群体,Domino Model Monitor(DMM – 如上面的屏幕截图所示)已得到增强,具有弹性和可扩展性。 事实上,Elprin 说,用户将享受 Domino 数据漂移和模型漂移检测性能高达 100 倍的改进。 漂移检测对于保持模型的准确性和公平性至关重要。 在营销应用程序中,这可以提高客户满意度。 其他场景包括更负责任地批准福利和索赔,或更准确的欺诈检测。
Domino 4.6 还支持云部署到 Microsoft Azure 和 Google Cloud,而不仅仅是 Amazon Web Services。 具体来说,除了 Amazon S3 中的数据外,现在还支持连接到 Azure Data Lake Storage (ADLS) 和 Google Cloud Storage (GCS) 中的数据。 此外,监控扩展到部署到所有三个云提供商的基础设施即服务 (Iaas) 和 Kubernetes 层的模型。 Elprin 解释说,这些功能的添加是为了直接响应采用多云策略的客户的需求,希望避免锁定到任何特定的云提供商。
最后,为了响应对计算能力越来越大的需求,以便更快地训练更多模型,Domino 正在扩展计算支持以包括 Ray 和 Dask,而不仅仅是 Apache Spark。 Ray 是一种分布式执行框架,可以在单台机器、云基础设施或 Kubernetes 集群上跨 CPU 和内核并行处理工作负载。 Dask 是一个 Python 并行计算库,它实现了常见 Python 数据科学库(如 NumPy、Pandas 和 scikit-learn)的缩放并行版本。 Ray 和 Dask 可以单独使用,也可以结合使用恰如其名的 Dask on Ray。
破解密码
在与 ZDNet 的讨论中,Elprin 解释了 DevOps 和 MLOps 之间在他看来的一些主要差异。 我会尽力在这里总结一下这个解释。
首先,ML 模型不仅仅是代码; 与典型的应用程序和基于服务器的代码相比,它们使用更多数据并且需要更密集的计算。 此外,数据科学就像研究——数据科学家需要进行实验,尝试大量 Python(或 R)库、各种算法,更普遍地说,在获得有用的东西之前,还需要尝试不同的方法或想法。 这类似于自然科学家在他们自己的工作中需要检验各种假设的方式。 此外,对于模型,您不能只编写单元测试,因为模型比确定性更具概率性。
考虑到所有这些,Domino 增强其监控功能并支持众多云和计算环境的举措非常有意义。 数据科学家不仅需要调试他们的代码并确保它正在运行。 他们需要对其进行试验、跟踪、部署并不断评估其功效。 这就是为什么 MLOps 是它自己的类别,表面上为什么 Domino 对 MLOps 功能采用记分卡方法,而不是清单方法。
Domino 表示现有客户可以立即升级到 4.6 版本。