写点什么

谷歌发布 TensorFlow Serving 开源项目:更快的将深度学习模型产品商业化

  • 2016-02-19
  • 本文字数:1377 字

    阅读完需:约 5 分钟

机器学习现在变得越来越流行了,不仅被大力应用于像 Google 和 Facebook 这样的网络公司,也被普遍应用到大量的创业公司当中。

机器学习经过几十年软件工业的实践已达到产品级别,现已应用在 Google 各系列产品中, 从 Google app 中的语音识别,Google Mail 中的自动回复到 Google Photo 的搜索。但要把这些机器学习模型做成服务对外提供使用是一种新的挑战。

TensorFlow 开源之后,今天 Google 又宣布发布面向生产环境的 TensorFlow Serving,旨在解决上述挑战。Google 软件工程师 Noah Fiedel 在博文中介绍,“TensorFlow Serving 是一个高性能、开源的机器学习服务系统,为生产环境及优化 TensorFlow 而设计。它更适合运行多个大规模模型,并支持模型生命周期管理、多种算法实验及有效地利用 GPU 资源。TensorFlow Serving 能够让训练好的模型更快、更易于投入生产环境使用。

这里有必要先科普下 TensorFlow 和 TensorFlow Serving 的区别:
TensorFlow 项目主要是基于各种机器学习算法构建模型,并为某些特定类型的数据输入做适应学习,而 TensorFlow Serving 则专注于让这些模型能够加入到产品环境中。开发者使用 TensorFlow 构建模型,然后 TensorFlow Serving 基于客户端输入的数据使用前面 TensorFlow 训练好的模型进行预测。
个人认为 TensorFlow Serving 是将 tensorflow 训练出来的模型更好的应用于生产环境中,通过它的 API 等支持的方式来方便对外提供稳定可靠的服务。TensorFlow Serving 的意义就在于能够很方便的将深度学习生产化,解决了模型无法提供服务的弊端,并且用的是 c++ 语言,性能上应该不错。这样以后深度学习方向的创业公司都能很方便的将产品商业化,保证 7*24 小时的可靠服务。

如谷哥所说,TensorFlow Serving 可以在不改变现有模型架构和 API 的基础上发布新的模型和实验数据到产品中。它不仅仅支持 TensorFlow 训练的模型,也可以扩展到其他类型的模型 (比如 Scikit Learn 生成的模型)。
下面讲下 TensorFlow Serving 使用的具体例子:
给个简单的监督学习的训练 pipeline,如图 1

图 1
在图 1 中,输入训练数据 (Data) 到学习者 (Learner) 中,输出训练成功的模型 (Model 1)。

一旦新版本的模型训练好就可以发布到服务系统 (TensorFlow Serving) 上,如图 2

图 2
在图 2 中,TensorFlow Serving 利用上面训练好的模型基于客户端 (Clients) 提供的数据进行预测结果。这里客户端和服务端之间的通信采用的是 RPC 协议 (Google 开源的一个高性能 RPC 的实现,gRPC 源代码见 http://www.grpc.io )。

对于生产环境来说,启动模型,随着时间不断迭代模型,新的训练数据出现需要训练优化模型,这些都是常态。现在有了 TensorFlow Serving 就可以在不停止服务的情况下更新模型和数据,Google 内部许多 pipelines 一直在运行。

TensorFlow Serving 采用 C++ 编写,支持 Linux。为性能做有优化,在 16 核至强 CPU 设备上,每核每秒能够处理超过 10 万个请求,这里包括 gRPC 和 TensorFlow 接口之间的处理时间。 TensorFlow Serving 代码和教程已经能够在GitHub 获取。


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2016-02-19 18:005199
用户头像

发布了 43 篇内容, 共 28.7 次阅读, 收获喜欢 7 次。

关注

评论

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

Mac电脑思维导图软件推荐 Xmind 2023激活中文版

mac大玩家j

思维导图 Mac软件 思维导图软件

基于 Flink CDC 打造企业级实时数据集成方案

阿里云大数据AI技术

开源

什么是原生IP?原生IP与住宅IP有何区别?

Geek_bf375d

人工智能知识图谱设计技术点解析

测吧(北京)科技有限公司

测试

谷歌Freshness新鲜度算法:如何利用它提升网站排名?

九凌网络

如何最大化客户生命周期价值?APMDR 模型在袋鼠云的落地实践

袋鼠云数栈

大数据 数字化转型 用户生命周期 用户运营 智能标签

DeFi开发:DeFi中的去中心化保险世界

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

Beyond Compare 4 for Mac 文件同步对比工具 支持M1

加油,小妞!

Beyond Compare Beyond Compare 4

静态代理IP是什么?一文看懂静态代理IP

Geek_bf375d

ROLA-IP海外IP代理全球动态ip代理用途分析

Geek_bf375d

杉岩数据:基于鲲鹏DevKit高效开发产线质检数据智能存储管理平台,破解数据管理难题

彭飞

一文看懂JavaScript 如何实现继承

伤感汤姆布利柏

前端 低代码 Java’ java 技术提升

大模型创业“风投”正劲,AGI Foundathon 大模型创业松活动精彩看点

飞桨PaddlePaddle

大模型 AGI 创业松

DaVinci Resolve Studio 18 达芬奇影视后期处理工具 支持M1

加油,小妞!

视频编辑 DaVinci Resolve Studio

Moho Pro 14 for Mac(2D动画制作软件)

展初云

Mac 动画制作软件 Moho

NineData:为大型房产集团数据库统一纳管,推动业务高效运行

NineData

数据库 运营 房地产 权限管理 NineData

Redis桌面管理工具 Redis Desktop Manager最新中文版

胖墩儿不胖y

redis Mac软件

DEVONthink 3 for Mac(文档管理软件)

展初云

Mac 文档管理软件 DEVONthink

为什么一再建议企业要做谷歌广告投放?

九凌网络

许多朋友问我有没有好用的海外代理IP

Geek_bf375d

ROLA-IP在HTTP海外IP代理市场的优势

Geek_bf375d

FFA 2023 「核心技术」专场: Flink 核心技术动向深度解读

Apache Flink

大数据 flink 实时计算

智达方通EPM,解决企业经营分析和管理难题

智达方通

企业风险管理 经营分析 经营管理

软件测试 | 金融平台封控模型实战技术:人工智能在金融风控中的应用

测吧(北京)科技有限公司

测试

Dash for mac(代码文档浏览器) 7.1.7完美激活版

mac

苹果mac Windows软件 DASH

软件测试 | Neo4j图数据库在人工智能应用中的实战技术与应用

测吧(北京)科技有限公司

测试

ProPresenter 7 for Mac(多屏演示软件)

展初云

Mac 演示文稿制作软件 ProPresenter

如何选择最佳独立服务器提供商?加速你的在线业务成功之路

一只扑棱蛾子

独立服务器

字节跳动AB实验经验分享:企业如何构建数据驱动的实验文化?

字节跳动数据平台

大数据 A/B 测试 对比实验

1688 API接口测试指南

Noah

谷歌发布TensorFlow Serving开源项目:更快的将深度学习模型产品商业化_语言 & 开发_侠天_InfoQ精选文章