Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【解读谷歌TFX】基于TensorFlow可大规模扩展的机器学习平台

【解读谷歌TFX】基于TensorFlow可大规模扩展的机器学习平台

作者头像
新智元
发布于 2018-03-22 03:16:13
发布于 2018-03-22 03:16:13
1.7K0
举报
文章被收录于专栏:新智元新智元
【新智元导读】 作者详细分析了Google通用机器学习平台和其实现过程。通过将上述组件集成到一个平台中,能够对组件进行标准化,简化平台配置,并将生产时间从数月缩短到数周,同时提供平台稳定性,最大程度地减少服务中断。

KDD2017上,谷歌发布了基于TensorFlow的可大规模扩展的产品级机器学习平台TFX。(论文地址:http://www.kdd.org/kdd2017/papers/view/tfx-a-tensorflow-based-production-scale-machine-learning-platform)

创建和维护一个生成和部署机器学习模型的平台需要在多个组成部分中细致协调,包括一个基于训练数据生成模型的学习器,用于分析和验证数据及模型的模块,以及用于为模型提供服务的设施。

当数据随时间变化而需要连续生产新的模型时,这变得尤其具有挑战性。不幸的是,这种编排通常是由使用个别团队开发的特殊用途的胶合代码和自定义脚本进行的,导致重复性工作和脆弱的高技术债务系统。

作者详细分析了Google通用机器学习平台和其实现过程。通过将上述组件集成到一个平台中,能够对组件进行标准化,简化平台配置,并将生产时间从数月缩短到数周,同时提供平台稳定性,最大程度地减少服务中断。

在论文中,作者介绍了在Google Play应用商店中平台部署的案例研究,随着新数据流入,机器学习模型将不断更新。通过优化数据和模型分析,部署平台促使自定义代码减少,实验周期更快,应用程序安装增加了2%。

以下是博客acolyer上更为详细的介绍:

TFX:基于TensorFlow的规模生产机器学习平台

过去几年中,世界一流的在线产品和服务开发发生了巨变。 我们最近一直在关注的一系列论文可以帮助您了解上限的位置。

*新基线:到目前为止,您已经接受了自动化测试,持续集成,持续交付,也许是持续部署,而且您已经熟练地逐步推陈出新,监控行为,并在发现问题时停及时停止。

*此外,您已经建立了一个复杂的指标系统和一个连续实验平台。

*由于系统复杂性的增加,您可能还需要将其扩展到通用黑箱优化平台。

*但你还没有完成! 您优化过的所有机器学习模型都需要接受训练,验证和服务。 你需要一个机器学习平台。 这就是今天文章的主题,它介绍了Google TFX中的机器学习平台。

我为什么需要一个机器学习平台?

实现机器学习模型的代码只是在生产系统中使用机器学习的一小部分。 我们在“机器学习:技术债务的高息信用卡”一文中看到了大量部署机器学习的经验教训。数据需要转换和验证,模型验证需要与数据验证相结合,防止不良(尚未验证的)模型进入生产。你还需要一个可扩展的服务基础架构。 机器学习平台(TFX)的关键组成部分如下图所示:

图1:机器学习平台高级组件概览

我们的平台能够实现这些组件,可将生产中的最佳实践进行编码...通过将上述组件集成到一个平台中,我们能够标准化组件,简化平台配置,并从生产时间从数月缩短到数周, 同时提供平台稳定性,最大限度地减少中断。

数据分析,转换和验证

你和你的数据一样。在局势恶化之前,发现数据异常,这将节省大量时间。

数据中的小错误可能会在一段时间内以难以检测的方式显着降低模型质量(一些灾难性的错误会导致明显的故障,因此易于追踪),所以为了长远考虑,都任何一个机器学习平台应始终保持对数据的警惕性。

为了建立基准并监控更改,TFX会为每个数据集生成一组描述性统计信息。 这些包括功能存在和价值,跨功能统计信息和可配置切片。 这些统计数据需要大规模高效计算,并且在大型训练数据上精确计算可能是昂贵的。 在这种情况下,可以使用提供近似结果的分布式流算法。

TFX还包括支持功能冲突的一套数据转换。例如,TFX可以生成称为“词汇“的特征到整数的映射。当数据转换在训练和服务之间微不可分时,很容易弄乱事情。 TFX自动导出任何数据转换作为训练模型的一部分,以避免这些问题。 要执行验证,TFX依赖于提供模版化描述预期数据的模式。该模式描述功能及其预期类型,价和域。 TFX可以帮助用户自动生成其模式的第一个版本。

图2: 样本验证案例

TFX给用户提供有用的异常信息警告。

我们希望用户能够同样严谨地处理数据错误和代码错误。为了促进上述做法,我们允许用户提交异常数据,就像任何能够被记录、追踪和解决的软件错误一样。

训练

一旦你模型中的代码(当然是在TensorFlow中写的)被融入到TFX中,你就能轻松地转换学习的算法。不断的训练和开发机器学习模型是一个常见的生产使用案例,但是在许多场景下,要每次都从头开始再训练模型,对于时间和资源的消耗都是巨大的。

对于许多生产用例,机器学习模型的新鲜度至关重要...很多这样的用例也有巨大的训练集(O(100B)数据点),这可能需要几个小时(或几天)的训练…这需要在模型质量与模型新鲜度之间取舍。热启动是抵消这种取舍的实用技术,如果使用正确,它可以在更短的时间和更少的资源消耗下,获得与此前需要几个小时的训练才能获得的相同质量的模型。

TFX中内置了热启动,对网络中的热启动特征进行选择的功能也被提供,且已经在TensorFlow中开源。当使用热启动训练新版本的网络时,对应于热启动特征的参数从先前训练的模型版本中初始化,并且从那里开始微调。

评估和验证

TFX包含了一个模型评估和验证组件,旨在确保模型在向用户提供服务之前是“好”的。

机器学习的模型通常是包含大量数据源和交互组件的复杂系统的一部分,这些组件通常被纠缠在一起。这会创建一个大的平面,在上面,bug的错误可以扩展,也可能会发展处意外的互动,最终会不得不对机器学习模型进行降维,进而损害终端的用户体验。

新模型如何推广到生产中?当然通过A / B测试!模型首先通过持续的数据进行评估,以确定它们是否有足够的前景开始实时测试,TFX提供可以近似业务指标的代理指标。对于通过此测试的模型,团队进行到特定于产品的A / B实验,以确定模型在实时流量和相关业务指标上的实际效果。

一旦将模型推出到产品并不断更新,则使用自动验证来确保更新的模型是好的。我们使用简单的canary process验证了一个模型是安全。我们通过将模型质量与固定阈值以及基线模型(例如当前生产模型)进行比较来评估预测质量。

如果模型更新验证失败,则不会将其推送到服务中,并为所属产品团队生成警报。

服务

TensorFlow服务为将要部署到生产环境的机器学习型号提供完整的服务解决方案。生产为需求服务,其中包括低延迟和高效率。对于大多数模型,使用常见的TensorFlow数据格式,但对于数据密集型(对CPU CPU密集型)网络,如线性模型,专门的协议缓冲区解析器是用惰性解析构建的。

在实施该系统时,要特别注意最小化数据复制。这对于稀疏数据配置来说尤其具有挑战性。专用协议缓冲区解析器的应用导致基准数据集加速2-5倍。

TFX和Google Play

Google推出TFX平台的第一支团队之一是Google Play,他们将其用于推荐系统。该系统在访问商店主页时建议相关的Android应用程序播放应用用户。培训数据集具有数百亿个示例,在生产过程中,系统必须以严格的延迟要求(几十毫秒)每秒处理数千个查询。

当我们将Google Play排名系统从之前的版本转移到TFX时,我们看到对新实验的迭代速度有所增加,减少了技术负债,提高了模型质量。

下一步

解释性?

随着机器学习变得越来越普遍,对于可理解性的强烈需求,模型可以向用户解释其决策和行为(以及在许多情况下使用诸如GDPR-AC等新立法的法律要求)。我们相信我们从部署TFX中学到的经验教训为构建交互式平台提供了基础,可为用户提供更深入的见解。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-10-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
谷歌为企业开源Kubeflow Pipelines;提供训练部署AI模型一站式服务的AI Hub
Google Cloud今天宣布推出Kubeflow Pipelines,以促进企业内部的协作,并进一步实现AI的访问民主化。Kubeflow Pipelines免费提供,并且是开源的。
AiTechYun
2018/12/07
9960
谷歌为企业开源Kubeflow Pipelines;提供训练部署AI模型一站式服务的AI Hub
TensorFlow产品经理:机器学习如何改变未来十年的软硬件?
本文为你分享Google产品经理关于机器学习工具的讲座概要。 最近,Google Brain员工,TensorFlow产品经理Zak Stone在硅谷创业者社群South Park Commons上做了个讲座,谈到了TensorFlow、XLA、Cloud TPU、TFX、TensorFlow Lite等各种新工具、新潮流如何塑造着机器学习的未来。同时,他还暗示了一些还未向公众披露的exciting的事儿。 讲座的题目叫“Tensor Flow, Cloud TPUs, and ML progress”,以
小莹莹
2018/04/18
6590
TensorFlow产品经理:机器学习如何改变未来十年的软硬件?
TensorFlow产品经理:机器学习如何改变未来十年的软硬件?
王瀚宸 编译自 South Park Commons博客 量子位 报道 | 公众号 QbitAI 最近,Google Brain员工,TensorFlow产品经理Zak Stone在硅谷创业者社群South Park Commons上做了个讲座,谈到了TensorFlow、XLA、Cloud TPU、TFX、TensorFlow Lite等各种新工具、新潮流如何塑造着机器学习的未来。同时,他还暗示了一些还未向公众披露的exciting的事儿。 讲座的题目叫“Tensor Flow, Cloud TPUs,
量子位
2018/03/27
7500
TensorFlow产品经理:机器学习如何改变未来十年的软硬件?
机器学习法则:(谷歌)机器学习工程最佳实践
机器学习(ML)最优实践方法,浓缩了其多年技术积累与经验,尤其是YouTube、Google Play和Google+ 等平台背后的ML算法开发、维护经历。谷歌于白皮书中总结了四十三条ML黄金法则,旨在帮助已经掌握了基础知识的开发者少走弯路。
机器学习AI算法工程
2019/10/28
6160
机器学习法则:(谷歌)机器学习工程最佳实践
2022 年了,PyTorch 和 TensorFlow 你选哪个?
坊间传闻:「TensorFlow 适合业界,PyTorch 适合学界」。都 2022 年了,还是这样吗?
一点人工一点智能
2022/12/27
1.3K0
2022 年了,PyTorch 和 TensorFlow 你选哪个?
PyTorch 与 TensorFlow:机器学习框架之战
深度学习框架是简化人工神经网络 (ANN) 开发的重要工具,并且其发展非常迅速。其中,TensorFlow 和 PyTorch 脱颖而出,各自在不同的机器学习领域占有一席之地。但如何为特定项目确定理想的工具呢?本综合指南[1]旨在阐明它们的优点和缺点。
数据科学工厂
2023/10/25
1.1K0
PyTorch 与 TensorFlow:机器学习框架之战
TensorFlow工程师分享了TensorFlow Serving最近的创新进展
近日,Tesorflow软件工程师Noah Fiedel通过本文描述了机器学习模型TensorFlow Serving最近的一些创新进展 TensorFlow Serving是一种灵活的、高性能的机器
AiTechYun
2018/03/05
1.6K0
TensorFlow工程师分享了TensorFlow Serving最近的创新进展
谁是深度学习框架一哥?2022年,PyTorch和TensorFlow再争霸
对于不同人群可能有不同的答案,科研人员可能更偏爱PyTorch,因其简单易用,能够快速验证idea来抢占先机发论文。
新智元
2022/02/24
1.2K0
谁是深度学习框架一哥?2022年,PyTorch和TensorFlow再争霸
一站式机器学习开业平台 MLflow 怎么样?
机器学习(ML)通常需要使用广泛的数据集、数据预处理步骤和算法逻辑进行实验,以构建最优指标的模型。模型构建成功后,还需要将其部署到生产系统,监控其效果和性能,并根据新数据不断对其进行重新训练和迭代模型工作,如下:1
程序员荒生
2022/04/02
2.5K0
一站式机器学习开业平台 MLflow 怎么样?
MLOps:构建生产机器学习系统的最佳实践
你可能已经听过很多次了,但只有一小部分机器学习模型投入生产。部署和运行机器学习模型对于大多数已经开始将ML应用于用例的行业来说都是一个挑战。在这篇文章中,我将分享一些MLOps的最佳实践和技巧,它们将允许您在生产环境中使用您的ML模型并正确地操作它。在我们开始之前,让我们讨论一下我们可能都知道的典型的ML项目生命周期。
deephub
2021/04/16
1.4K0
在机器学习上,Google已为你准备好所有开发工具
机器之心报道 编辑:泽南 上周,Google 开发者大会重聚线下。 自从十年前吴恩达、Quoc Le 等人发表「识别猫」论文,引发技术革命之后,Google 一直引领着机器学习的风向,这家公司举办的开发者大会总会受到人们额外的关注。 9 月 14 日到 15 日,Google 开发者大会在上海举行。在这场活动中,Google 围绕自身在科技领域的最新技术,介绍了跨平台技术、隐私保护、机器学习、XR 等技术,以及与很多合作伙伴的最新落地成果。 在机器学习领域里,TensorFlow 作为最流行的框架一直被人
机器之心
2022/09/26
5830
在机器学习上,Google已为你准备好所有开发工具
玩转TensorFlow?你需要知道这30个功能
AI 科技评论按:TensorFlow 是目前最流行的深度学习库,它是 Google 开源的一款机器学习开发框架。Tensor 的意思是张量,代表 N 维数组;Flow 的意思是流,代表基于数据流图的计算。把 N 维数字从流图的一端流动到另一端的过程,就是人工智能神经网络进行分析和处理的过程。
AI科技评论
2018/12/24
1K0
谷歌,Facebook,Uber这些互联网大公司如何架构人工智能平台
尽管围绕机器学习 (ML) 和人工智能 (AI) 大肆宣传,但企业中的大部分努力仍处于试验阶段。这种现象的部分原因是与机器学习项目相关的自然实验,但也有一个重要的组成部分与机器学习架构缺乏成熟度有关。这个问题在企业环境中尤为明显,在这些环境中,现代机器学习解决方案的新应用程序生命周期管理实践与企业实践和监管要求相冲突。在采用机器学习解决方案时,组织应该采用哪些关键的架构构建块?
HuangWeiAI
2021/12/31
6320
谷歌,Facebook,Uber这些互联网大公司如何架构人工智能平台
从 Google TFX 到 Kubeflow:容器化交付敏捷 AI 平台
内容来源:2018 年 04 月 22 日,才云科技创始人兼CEO张鑫在“全球首发| Kubeflow Meetup 4.22 杭州场,开拓 AI 新视野”进行《从 Google TFX 到 Kubeflow:容器化交付敏捷 AI 平台》演讲分享。IT 大咖说(微信id:itdakashuo)作为独家视频合作方,经主办方和讲者审阅授权发布。
IT大咖说
2018/10/23
2.2K0
从 Google TFX 到 Kubeflow:容器化交付敏捷 AI 平台
TensorFlow与主流深度学习框架对比
TensorFlow是相对高阶的机器学习库,用户可以方便地用它设计神经网络结构,而不必为了追求高效率的实现亲自写C++或CUDA代码。它和Theano一样都支持自动求导,用户不需要再通过反向传播求解梯度。其核心代码和Caffe一样是用C++编写的,使用C++简化了线上部署的复杂度,并让手机这种内存和CPU资源都紧张的设备可以运行复杂模型(Python则会比较消耗资源,并且执行效率不高)。除了核心代码的C++接口,TensorFlow还有官方的Python、Go和Java接口,是通过SWIG(Simplified Wrapper and Interface Generator)实现的,这样用户就可以在一个硬件配置较好的机器中用Python进行实验,并在资源比较紧张的嵌入式环境或需要低延迟的环境中用C++部署模型。SWIG支持给C/C++代码提供各种语言的接口,因此其他脚本语言的接口未来也可以通过SWIG方便地添加。不过使用Python时有一个影响效率的问题是,每一个mini-batch要从Python中feed到网络中,这个过程在mini-batch的数据量很小或者运算时间很短时,可能会带来影响比较大的延迟。现在TensorFlow还有非官方的Julia、Node.js、R的接口支持。
博文视点Broadview
2020/06/11
1.3K0
掌握深度学习,为什么要用PyTorch、TensorFlow框架?
【导读】如果你需要深度学习模型,那么 PyTorch 和 TensorFlow 都是不错的选择。
AI科技大本营
2019/09/05
1.6K0
2018年Google TensorFlow开发者峰会亮点总结
本文由TensorFlow的产品经理Sandeep Gupta代表TensorFlow团队发布。 原文:https://medium.com/tensorflow/highlights-from-tensorflow-developer-summit-2018-cd86615714b2 当地时间3月30日,在加州山景城的计算机历史博物馆举办了第二届TensorFlow开发者峰会。该活动汇集了500多名用户,成千上万的人在世界各地的TensorFlow活动中收听实况直播。这一天充满了新产品的发布,以及来自Te
WZEARW
2018/04/13
1.1K0
2018年Google TensorFlow开发者峰会亮点总结
TensorFlow 2.0 新功能 | 官方详解
TensorFlow 已经发展为世界上最受欢迎和被广泛采用的机器学习平台之一,我们衷心感谢一直以来支持我们的各界的开发者和他们的贡献:
量子位
2019/04/24
1.2K0
TensorFlow 2.0 新功能 | 官方详解
动态 | 谷歌发布机器学习规则: 关于机器学习工程的最佳实践(上)
本文档旨在帮助已掌握机器学习基础知识的人员从 Google 机器学习的最佳实践中受益。以下为上篇,包含术语、概览以及在进行机器学习之前的第 1-20 条规则。
AI科技评论
2018/07/26
5610
什么是MLOps?为什么要使用MLOps进行机器学习实践
随着数字化和计算能力的发展,机器学习(Machine Learning)技术在提高企业生产力方面所涌现的潜力越来越被大家所重视,然而很多机器学习的模型及应用在实际的生产环境并未达到预期,大量的ML项目被证明是失败的。从机器学习的发展历程来看,早期ML社区广泛关注的是ML模型的构建,确保模型能在预定义的测试数据集上取得较好的表现,但对于如何让模型从实验室走向用户的桌面,并未大家所关注。
人工智能日报
2023/06/22
1.7K0
推荐阅读
相关推荐
谷歌为企业开源Kubeflow Pipelines;提供训练部署AI模型一站式服务的AI Hub
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档