被 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 科技大本营微信公众号

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

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

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏生信技能树

450K甲基化芯片数据处理传送门

写在前面 Illumina甲基化芯片目前仍是很多实验室做甲基化项目的首选,尤其是对于大样本研究而言,其性价比相当高。这种芯片的发展主要经历了27K、450K以及...

3889
来自专栏机器人网

最流行的机器学习R语言软件包大PK

The Data Incubator 中,有着最新的数据科学(data science)课程。其中大部分的课程都是基于企业和政府合作伙伴的需求而设立的。现在他们...

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

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

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

3214
来自专栏华章科技

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

PivotalR:用于读取Pivitol(Greenplum)和HAWQ数据库中的数据

602
来自专栏AI科技大本营的专栏

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

翻译 | 刘畅Troy 谷歌今天终于发布了TensorFlow Lite 的开发者预览!该项目是在5月份的I/O开发者大会上宣布的,据Google网站描述,对移...

4106
来自专栏take time, save time

你所能用到的无损压缩编码(一)

      这个系列将结合C/C++介绍无损压缩编码的实现,正如Charles Petzold在<CODE:Hidden Language of Compute...

45710
来自专栏程序你好

.Net 基于GDI+的图件绘制平台的设计与实现(一)

712
来自专栏机器人网

英特尔Movidius神经元计算棒(NCS)基于ROS的实现与封装

如今,人工智能的热潮正在席卷各行各业,而计算力和数据、算法一同支撑着人工智能的蓬勃发展。作为人工智能的一个重要分支, 深度学习以其良好的表现,越来越受到业界的广...

812
来自专栏企鹅号快讯

谷歌TensorFlowLite正式发布,机器学习框架向移动端大步挺进!

上个月,谷歌正式宣布推出针对移动设备和嵌入式设备的轻量级解决方案 TensorFlow Lite。而在此之前,今年 5 月份的谷歌 I/O 大会上他们已经对此进...

1827
来自专栏Python中文社区

pyecharts(二):Python可视化利器

專 欄 ❈陈键冬,Python中文社区专栏作者 GitHub: https://github.com/chenjiandongx ❈ 恭喜本社区专栏作者陈键冬...

2477

扫码关注云+社区