TensorFlow Serving Introduction

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小时的可靠服务,比如人脸识别商业化.

举个例子,清晰一点.
说一下我们现在模型对外提供服务的方案:数据建模,我用的python,在用scikit-learn训练出模型后,怎么让其他人也能享受这个模型呢?总不能将代码给人家,让人家再训练一遍吧,所以我们用joblib.dump将训练出来的模型变为一个实体的文件,然后copy到生产环境,用joblib.load加载后,再用flask对外提供API服务.
对比一下,可知tensorflow相当于scikit-learn,是一个深度学习工具.那tensorflow serving就相当于把上面的joblib.dump(当然了tensorflow serving是export方法)与joblib.load以及最后提供输出能力(相当于上面的flask)都一手包办了.

如谷哥所说,TensorFlow Serving可以在不改变现有模型架构和API的基础上发布新的模型和实验数据到产品中。它不仅仅支持TensorFlow训练的模型,也可以扩展到其他类型的模型(比如Scikit Learn生成的模型)。

TensorFlow Serving 系统非常适用于大规模运行能够基于真实情况的数据并会发生动态改变的多重模型。它能够实现:

  • 模型生命周期管理。
  • 使用多重算法进行试验。
  • GPU 资源的有效使用。

TensorFlow Serving 能够简化并加速从模型到生产的过程。它能实现在服务器架构和 API 保持不变的情况下,安全地部署新模型并运行试验。除了原生集成 TensorFlow,还可以扩展服务其他类型的模型。下图显示了简化的监督学习过程,向 learner 输入训练数据,然后输出模型:

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

一旦经过验证后,新模型版本定型,就可以部署到服务系统(TensorFlow Serving)上,如下图所示:

TensorFlow Serving 使用(之前训练的)模型来实施推理——基于客户端呈现数据的预测。因为客户端通常会使用远程过程调用(RPC)接口来与服务系统通信,TensorFlow Serving 提供了一种基于 gRPC 的参考型前端实现,这是一种 Google 开发的高性能开源 RPC 架构。当新数据可用或改进模型时,加载并迭代模型是很常见的。事实上,在谷歌,许多管线经常运行,一旦当新数据可用时,就会产生新版本的模型。

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

TensorFlow Serving采用C++编写,支持Linux。TensorFlow Serving 引入的开销是非常小的,在16个 vCPU 的英特尔至强 E5 2.6 GHz 的机器上进行了测试,每核每秒能够处理超过10万个请求,这里包括gRPC和TensorFlow接口之间的处理时间。TensorFlow Serving代码已经能够在GitHub获取。

TensorFlow Serving Introduction相关推荐

  1. Tensorflow Serving 介绍

    TensorFlow Serving Introduction TensorFlow Serving 系统非常适用于大规模运行能够基于真实情况的数据并会发生动态改变的多重模型.它给出了一个把模型应用到 ...

  2. 如何将TensorFlow Serving的性能提高超过70%?

    点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」7折优惠最后2天,请扫码咨询 ↑↑↑ 译者 | Major 出品 | AI科技大本营(ID:rgznai100) TensorFlow已 ...

  3. TensorFlow serving远程访问引擎的容器部署

    2019独角兽企业重金招聘Python工程师标准>>> TensorFlow Serving是通过rpc接口远程访问tensorflow引擎的服务器. TensorFlow Serv ...

  4. tensorflow从入门到精通100讲(六)-在TensorFlow Serving/Docker中做keras 模型部署

    前言 不知道大家研究过没有,tensorflow模型有三种保存方式: 训练时我们会一般会将模型保存成:checkpoint文件 为了方便python,C++或者其他语言部署你的模型,你可以将模型保存成 ...

  5. TensorFlow Serving 尝尝鲜

    2019独角兽企业重金招聘Python工程师标准>>> 作者:Mao Chan BitTiger尊重原创版权,转载已经过作者授权. 2016年,机器学习在 Alpha Go 与李世石 ...

  6. TensorFlow Serving + Docker + Tornado机器学习模型生产级快速部署

    点击上方"AI搞事情"关注我们 内容转载自知乎:https://zhuanlan.zhihu.com/p/52096200 Justin ho 〉 本文将会介绍使用TensorFl ...

  7. 使用tensorflow serving部署keras模型(tensorflow 2.0.0)

    点击上方"AI搞事情"关注我们 内容转载自知乎:https://zhuanlan.zhihu.com/p/96917543 Justin ho 〉 Tensorflow 2.0.0 ...

  8. Tensorflow Serving部署tensorflow、keras模型详解

    写在篇前   本篇介绍如何使用Tensorflow Serving组件导出训练好的Tensorflow模型,并使用标准tensorflow model server来部署深度学习模型预测服务.tens ...

  9. 基于TensorFlow Serving的深度学习在线预估

    一.前言 随着深度学习在图像.语言.广告点击率预估等各个领域不断发展,很多团队开始探索深度学习技术在业务层面的实践与应用.而在广告CTR预估方面,新模型也是层出不穷: Wide and Deep[1] ...

  10. 构建并用 TensorFlow Serving 部署 Wide Deep 模型

    Wide & Deep 模型是谷歌在 2016 年发表的论文中所提到的模型.在论文中,谷歌将 LR 模型与 深度神经网络 结合在一起作为 Google Play 的推荐获得了一定的效果.在这篇 ...

最新文章

  1. STL 队列queue
  2. java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
  3. 【SpringCloud】Feigin:伪装
  4. python大学课程-利用python完成大学刷课(从0到完成的思路)
  5. 被替换的项目不是替换值长度的倍数_如果要在Excel中计算单元格内指定的字符长度,我推荐这两个公式.........
  6. Python 获取服务器的CPU个数
  7. mysql timdir_MYSQL学习笔记——数据类型
  8. 公共子序列(信息学奥赛一本通-T1297)
  9. 解决透视变换后图片信息丢失的问题
  10. 通过v$sqlarea,v$sql查询最占用资源的查询
  11. QeePHP-继承视图
  12. 怎么修改服务器玩家等级级上限,GOM引擎等级限制了极限怎么办?传奇服务端突破等级限制的方法...
  13. php日志在哪,php日志在哪
  14. 不登陆路由器查询路由器IP地址和物理地址
  15. 澳大利亚麦考瑞大学计算机系杨坚教授团队招收2022-2023年博士研究生
  16. 关于笔记本加固态硬盘装系统的问题的解决办法
  17. delphi11中使用python4delphi组件
  18. Linux 测试IP和端口是否能访问
  19. 至联云讲解《IPFS凭什么能让全世界投资者疯狂》
  20. java 从已知日期计算干支纪日_天干地支纪日怎么计算?

热门文章

  1. 俱乐部/会所/协会在短信平台应用指南
  2. 一张图片中多个图标如何通过CSS定位显示?
  3. 计算机组装的硬件配置及报价,2021组装电脑配置清单及价格表说明
  4. 自学mysql教程 资料_数据库MYSQL,自学,命令,教程。
  5. 万字好文,手把手教你做一个「vue3+express+typescript」的全栈模板项目
  6. 从有状态应用(Session)到无状态应用(JWT),以及 SSO 和 OAuth2
  7. 部分手机虚拟键盘的适配问题
  8. FlashFXP基本使用教程
  9. 如何选择示波器探头带宽
  10. storm apache_Apache Storm很棒。 这就是为什么(以及如何)使用它的原因。