Metaflow是Netflix框架 用Python设计 促进执行机器学习项目 形成为 生产原型。 该工具旨在帮助数据专家实施更快的机器学习模型以进行生产。
过去两年来,Netflix内部使用了Metaflow 创建和管理数百个从自然语言处理到运筹学的数据科学项目。 帮助科学家 所有公司的数据 Netflix的数据科学团队已开放其Metaflow库,根据该小组上周二发布的博客文章。
元流 它是“以人为本”的机器学习基础架构的关键部分,数据科学团队将其用于构建和实施工作流作为其业务的一部分。
Netflix在其业务的各个方面都使用了机器学习从方案分析到生产计划优化,客户流失预测,定价,翻译和优化。
元流是本机云框架, 利用云的设计弹性进行计算和存储。 和 Netflix,一直是Amazon Web Services(AWS)的最大用户之一 很多年了, 积累了很多的操作经验 并了解云计算,尤其是AWS。 如您所料,作为开源框架的一部分, 该公司与AWS合作,将Metaflow与各种AWS服务无缝集成。
Metaflow与许多AWS服务集成在一起, 包括预览Amazon S3中的所有代码和数据的功能, Netflix将其用作“数据湖”。 因此,该公司拥有无需用户干预即可管理版本和跟踪实验的完整解决方案。 此功能应帮助用户使用AWS存储,计算和机器学习服务快速缩放模型。
此外,Metaflow带有高性能S3客户端,可以以高达10 Gbps的速度上传数据。 根据Netflix的说法,“该客户端在我们的用户中非常受欢迎,他们现在可以将数据加载到他们的工作流中,速度比以前快了一个数量级,从而实现了更快的迭代周期。”
根据博客文章, Netflix表示,从关键观察开始,一直到实施其框架。 实际上,据该公司称,其大多数数据专家都反对编写Python代码。
他们想要的是能够保留使用任意和惯用代码来表达其业务逻辑的自由。 这些数据科学家喜欢通过Python代码表达业务逻辑,但他们不想浪费您的时间。
“但是,他们不想花太多时间思考对象层次结构,打包问题或处理与工作无关的晦涩的API。 Netflix博客文章说:“基础架构应允许他们以数据专家的身份行使自己的自由,但它应提供足够的护栏和脚手架,以使他们不必过多担心软件体系结构。”
从这个观察, Metaflow背后的想法 是为Netflix数据专家提供机会 尽早查看原型模型是否会在生产中失败,这将使他们能够解决任何问题,并在理想情况下加快部署速度。
数据专家可以以有向无环图(DAG)步骤的形式来构造其工作流程。 这些步骤可以是任意的Python代码。 在此假设示例中,变速箱并行运行模型的两个版本,然后选择得分最高的版本。
根据Netflix数据科学团队的说法,存在许多现有框架,例如Apache Airflow或Luigi,它们允许执行由任意Python代码组成的DAG,不同之处在于它们已包含在内 关于Metaflow的很多细节。