写点什么

Netflix 开源内部 Python 工具 Metaflow:机器学习项目部署时间从四个月缩短至 7 天

  • 2019-12-05
  • 本文字数:1308 字

    阅读完需:约 4 分钟

Netflix开源内部Python工具Metaflow:机器学习项目部署时间从四个月缩短至7天

2019 年 12 月 4 日,Netflix数据科学团队宣布其内部使用多年的 Python 库 Metaflow 正式开源。Metaflow 是 Netflix 机器学习基础架构的关键部件,主要用于加速数据科学工作流的构建和部署,Netflix 希望通过开源 Metaflow 简化机器学习项目从原型阶段到生产阶段的过程,进而提高数据科学家的工作效率。



Netflix(官方中文名称:网飞)是全球最大的视频流媒体平台,在除中国大陆以外的所有国家和地区都提供视频点播服务。这家视频流媒体巨头在其业务的各个方面都使用了机器学习,从剧本分析到优化制作时间表、预测客户流失、视频定价、视频字幕翻译以及优化其庞大的内容分发网络,而其中有许多机器学习应用都由 Metaflow 提供支持。它是一个基于 Python 编写的框架,可以使机器学习项目从原型阶段到生产阶段变得更加容易。在过去两年中,Metaflow 已在 Netflix 内部用于构建和管理从自然语言处理到运营研究的数百个数据科学项目。



据Netflix内部调研发现,数据科学家喜欢使用 Python 代码来实现业务逻辑,但不想花费太多时间思考诸如对象层次结构、封装等问题,或处理各类晦涩的 API。


因此,Metaflow 想做的就是让 Netflix 数据科学家能够尽早查看原型模型是否会在生产环境中失败,让他们可以提前解决问题,并加快部署速度。Netflix 在 2 月份的一场演讲中透露,Metaflow 已经将 Netflix 机器学习项目的部署时间中位数从四个月缩短到了仅仅 7 天。



Metaflow 为机器学习项目整个流程提供了统一的 API,数据科学家可以使用 Metaflow 设计自己的工作流程,大规模运行并将其部署到生产环境。它会自动对所有实验和数据进行版本控制和跟踪,同时,Metaflow 的 UI 能够与 Jupyter notebooks 无缝集成。与其他 Python 工具类似,数据科学家可以在笔记本电脑上快速开发和测试代码,如果工作流支持并行,Metaflow 会自动利用开发 PC 上所有可用的 CPU 内核。


Metaflow 也可以与当前主流的 Python 数据科学库一起使用,包括 PyTorch、Tensorflow 和 SciKit Learn。


想了解 Metaflow 所有功能的详细介绍,可以查阅官方文档

支持 AWS 服务无缝集成

多年来 Netflix 一直是Amazon Web Services(AWS)的最大用户之一,因此,Metaflow 支持与众多 AWS 服务无缝集成也就不足为奇了。Netflix 软件工程师表示,Metaflow 是一个云原生框架,能够充分利用云在存储和计算上的弹性。


Metaflow 支持对 Amazon S3 中所有代码和数据的自动快照功能,可以帮助用户使用 AWS 的存储、计算和机器学习服务快速扩展模型,同时,这也使 Metaflow 能够实现自动版本控制和实验跟踪,无需任何人为干预,开发人员可以非常方便地检查和恢复 Metaflow 的执行情况,这是所有生产级机器学习基础架构的核心。


此外,Metaflow 还绑定了一个高性能的 S3 客户端,它可以加载高达 10Gbps 的数据,加快用户的模型迭代周期。



针对通用数据处理,Metaflow 与基于 AWS 容器的计算平台 Batch 集成。开发者只需要在代码中添加一行:@batch,就可以利用无限扩展的计算集群。对于机器学习模型的训练,除了编写自己的功能,用户还可以选择使用 AWS Sagemaker,它提供了各种模型的高性能实现,其中许多支持分布式训练。


关于 Metaflow 与 AWS 集成的更多详细信息,可以查看此页面


2019-12-05 17:393237
用户头像
蔡芳芳 InfoQ 总编辑

发布了 813 篇内容, 共 591.6 次阅读, 收获喜欢 2809 次。

关注

评论

发布
暂无评论
发现更多内容

深度 | 自动驾驶数据服务进入2.0时代

澳鹏Appen

人工智能 自动驾驶 计算机视觉 智能驾驶 激光雷达

怎样实现文档协同?

Baklib

一文读懂Plato Farm的ePLATO,以及其高溢价缘由

西柚子

java零基础入门-如何统计字符串中每个字符的出现次数?

喵手

Java 7月月更

如何让个性化推荐即刻触达?云原生数据库GaussDB(for Redis)来助力

华为云开发者联盟

数据库 云原生 后端

AIRIOT答疑第6期|如何使用二次开发引擎?

AIRIOT

二次开发 物联网低代码平台

Starfish Os X MetaBell战略合作,元宇宙商业生态更进一步

小哈区块

HarmonyOS 3纯净模式可限制华为应用市场检出的风险应用获取个人数据

科技汇

如何查看蓝牙耳机的蓝牙版本

贾献华

7月月更

8000字讲透OBSA原理与应用实践

华为云开发者联盟

后端 OBS 运价计算 OBSA

一种比读写锁更快的锁,还不赶紧认识一下

华为云开发者联盟

高并发 开发 ReadWriteLock StampedLock

带来高价值用户体验的低代码开发平台

力软低代码开发平台

mysql 最大建议行数2000w,靠谱吗?

京东科技开发者

MySQL 数据库

一篇搞定Redis中的BigKey问题

知识浅谈

redis 底层原理 7月月更 签约计划第三季

技术实践干货 | 初探大规模 GBDT 训练

观远数据

人工智能 机器学习

建筑云渲染的应用正在扩大,越来越多的行业急需可视化服务

Finovy Cloud

云渲染 GPU渲染

一文读懂Plato Farm的ePLATO,以及其高溢价缘由

BlockChain先知

React Context

程序员海军

7月月更

数据管理的重点

奔向架构师

数据管理 7月月更

如何对话CIO/CTO

凌云Cloud

销售 企业管理系统 CIO To B业务

如何实现一个好的知识管理系统?

Geek_da0866

一篇文章读懂人工神经网络

天狼

人工智能 神经网络 算法 ann

小程序容器技术超有料,可以让移动研发效率大幅提升

Speedoooo

跨端开发 降本增效 研发效率 小程序容器

Starfish Os X MetaBell战略合作,元宇宙商业生态更进一步

西柚子

你的列表很卡?这4个优化能让你的列表丝般顺滑

岛上码农

flutter ios 前端 安卓 签约计划第三季

知识管理系统推动企业信息化发展

Baklib

面试官:4年经验没碰过Nginx? Nginx入门,图文超详细

LoneWalker、

nginx

一篇文章带你走进pycharm的世界----别再问我pycharm的安装和环境配置了!!!

是Dream呀

Python 后端 pycharm 编译器 环境

Java之路必读与知识点分析

魏铁锤

【图解】三次握手,四次挥手 —— 用心看这一篇就够了

攻城狮杰森

计算机网络 TCP/IP 数据传输 7月月更

字节跳动Java研发面试99题(含答案):JVM+Spring+MySQL+线程池+锁

程序知音

Java 字节 程序员面试 后端技术 八股文

Netflix开源内部Python工具Metaflow:机器学习项目部署时间从四个月缩短至7天_AI&大模型_蔡芳芳_InfoQ精选文章