今天被TensorFlowLite刷屏了吧,偏要再发一遍

翻译 | 刘畅Troy

谷歌今天终于发布了TensorFlow Lite 的开发者预览!该项目是在5月份的I/O开发者大会上宣布的,据Google网站描述,对移动和嵌入式设备来说,TensorFlow是一种轻量级的解决方案,支持多平台运行,从机架式服务器到微小的物联网设备。近几年来,由于其作为机器学习模型的使用已成倍增长,所以移动设备和嵌入式设备也出现了部署需求。Tensorflow Lite使机器学习模型设备能够实现低延迟的推理。

在本文中,Google展示了TensorFlow Lite的框架构成以及一些功能特性。

TensorFlow Lite设计初衷

  • 轻量级:允许在具有很小的二进制大小和快速初始化/启动的机器学习模型设备上进行推理。
  • 跨平台:能够运行在许多不同的平台上,首先支持Android和iOS平台
  • 快速:针对移动设备进行了优化,包括显著提高模型加载时间和支持硬件加速

现在越来越多的移动设备集成了定制硬件来更有效地处理机器学习带来的工作负载。TensorFlow Lite支持Android神经网络API(Android Neural Networks API)利用这些新的加速器硬件。当加速器硬件不可用的时候,TensorFlow Lite会执行优化CPU,这可以确保你的模型仍然可以很快的运行在一个大的设备上。

TensorFlow Lite架构设计

下面的关系图显示了TensorFlow Lite的构架设计:

组件包括:

  • TensorFlow模型:一个保存在磁盘上训练好的TensorFlow模型。
  • TensorFlow Lite转换器:一个将模型转换为Tensorflow Lite文件格式的程序。
  • TensorFlow模型文件:基于FlatBuffers格式的模型文件,已针对最大速度和最小尺寸进行了优化。

Tensorflow Lite模型文件将被部署在一个移动应用程序,其中:

  • Java API:在Android上对C++API的一个封装。
  • C++ API:加载Tensorflow Lite模型文件和调用解释器。在Android和iOS上共用同一个库文件。
  • 解释器:采用一组运算符来执行模型。解释器支持选择性的运算负荷;没有运算符大小只有70kb,当所有的运算符加载时,大小是300kb。正常的移动端的Tensorflow(包含一个规范的运算符操作集)需要1.5M的大小,可以看到解释器显著减少了内存。

关于选择Android设备,解释器会采用Android Neural Networks API来进行硬件加速,或者如果没有可用的,默认为CPU执行。

开发人员还可以使用C++ API实现可由解释器使用的定制的内核。

模型

Tensorflow Lite已经有一些训练和优化好的支持移动端的模型:

  • MobileNet: 一种能够识别1000类不同目标的视觉模型,它是为在移动设备和嵌入式设备上高效执行而独特设计的。
  • Inception v3: 一个图像识别的模型,在功能上类似MobileNet,提供更高的精度同时也有较大的尺寸
  • Smart Reply: 一种设备级的会话模型,针对即将到来的会话聊天消息,它提供一种触摸响应。在Android Wear上,第一方和第三方的消息应用程序均使用了此功能。

Inception v3和MobileNet均是在ImageNet数据集上预训练好的。通过迁移学习,你可以轻松的在你自己的数据集上再训练这个模型。

什么是TensorFlow Mobile?

正如你可能知道的,通过Tensorflow Mobile API,Tensorflow已经支持了在移动端和嵌入式上部署模型。未来TensorFlow Lite应该被视为Tensorflow Mobile的演化,并随着它的成熟将成为模型部署在移动端和嵌入式设备上的推荐方案。目前TensorFlow Lite是开发者预览版,同时Tensorflow Mobile仍然支持APP的开发。

Tensorflow Lite的应用范围大,目前处于积极开发中。通过这个开发者预览版,我们有意地启动了一个带约束的平台来确保一些最重要的常用模型的性能。我们计划根据用户的需求对未来的功能扩展进行优先级排序。我们持续开发的目标是为了降低对开发人员经验的要求,并能为一系列移动和嵌入式设备部署模型。

我们非常兴奋开发者能够上手使用Tensorflow Lite。对于其余的Tensorflow项目,我们计划使用同一强度来支持和解决外部社区问题。期待你能用TensorFlow Lite做些非常酷的事情。

更多关于Tensorflow Lite的功能和信息,请点击TensorFlow Lite文档:

http://tensorflow.org/mobile/tflite

祝大家Tensorflow Lite编程快乐。

原文发布于微信公众号 - AI科技大本营(rgznai100)

原文发表时间:2017-11-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能头条

DMLC深盟分布式深度机器学习开源平台解析

22860
来自专栏AI科技评论

开发 | 用PyTorch还是TensorFlow?斯坦福大学CS博士生带来全面解答

AI 科技评论按:关于深度学习的框架之争一直没有停止过。PyTorch,TensorFlow,Caffe还是Keras ?近日, 斯坦福大学计算机科学博士生Aw...

45460
来自专栏AI研习社

Tensorflow 入门与安装 | Tensorflow 最全资料汇总【2】

【AI研习社】关注AI前沿、开发技巧及技术教程等方面的内容。欢迎技术开发类文章、视频教程等内容投稿,邮件发送至:zhangxian@leiphone.com 自...

38260
来自专栏PPV课数据科学社区

学习R语言,一篇文章让你从懵圈到入门

在实际工作中,每个数据科学项目各不相同,但基本都遵循一定的通用流程。具体如下: 数据科学工作流程 数据导入 数据整理 反复理解数据 数据可视化 数据转换 ...

41240
来自专栏CDA数据分析师

学习R语言,一篇文章让你从懵圈到入门

在实际工作中,每个数据科学项目各不相同,但基本都遵循一定的通用流程。具体如下: ? 数据科学工作流程: 1.数据导入 2.数据整理 3.反复理解数据 数据可视...

24860
来自专栏AI研习社

深度学习库 Keras 2 重磅发布,与 TensorFlow 联系更紧密

昨天,著名深度学习开源库 Keras 通过官方博客正式发布了全新版本:Keras 2。 根据官方介绍,此次更新的重点有两个: Keras 2 API 将作为 ...

37880
来自专栏me的随笔

【译】10个机器学习的JavaScript示例

原文地址:10 Machine Learning Examples in JavaScript

8720
来自专栏新智元

【TensorFlow重大升级】自动将Python代码转为TF Graph,大幅简化动态图处理!

作者:Alex Wiltschko, Dan Moldovan, Wolff Dobson

13020
来自专栏目标检测和深度学习

谷歌GPU资源免费啦

注:本文编译自medium,原英文链接:https://medium.com/@nickbourdakos/train-your-machine-learnin...

42570
来自专栏嵌入式程序猿

温故而知新

做嵌入式开发控制系统,应该经常会用到PID(比例,积分,微分,proportional,integral,derivative)算法,PID 控制器以各种形...

433130

扫码关注云+社区

领取腾讯云代金券