被 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 条评论
登录 后参与评论

相关文章

来自专栏机器之心

深度 | PyTorch和TensorFlow哪家强:九项对比读懂各自长项短板

选自GitHub 作者:Awni Hannun 机器之心编译 参与:Panda 现在是各种机器学习框架群雄争霸的时代,各种各样的比较文章也层出不穷。近日,斯坦福...

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

PyTorch和TensorFlow哪家强:九项对比读懂各自长项短板

近日,斯坦福大学计算机科学系博士生 Awni Hannun 也发表了一篇文章,谈了自己对 PyTorch 和 TensorFlow 这两大明星框架的心得体验,并...

3876
来自专栏AI科技评论

开发 | 紧跟未来深度学习框架需求,TensorFlow推出Eager Execution

AI科技评论按:Google的TensorFlow是AI学习者中使用率最高、名气也最大的深度学习框架,但由于TensorFlow最早是基于Google的需求开发...

3426
来自专栏华章科技

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

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

1343
来自专栏AI研习社

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

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

3568
来自专栏机器人网

PID控制原理:看完这个故事你就明白了

小明接到这样一个任务:有一个水缸漏水,且漏水的速度是不定的,但要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就要往水缸里加水。 ? 开始小明用瓢加水...

3315
来自专栏AI研习社

用神经网络对页面登录进行多参数优化的小妙招

我很乐意分享我用神经网络对页面登录进行多参数优化的一些实验。我想到这个点子已经有半年了,而且我发现从自动操作这个角度来看它十分有趣。A/B 测试会消耗市场专家...

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

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

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

4306
来自专栏大数据

使用Elasticsearch进行智能搜索的机器学习

众所周知,机器学习正在改变许多行业。搜索行业也是如此,公司通过手动调整搜索相关性来压榨潜能。成功的搜索组织希望通过“足够好”的手动调整来构建更智能...

2965
来自专栏潇涧技术专栏

Head First PageRank

PageRank算法是谷歌曾经独步天下的“倚天剑”,该算法由Larry Page和Sergey Brin在斯坦福大学读研时发明的,论文点击下载: The Pag...

1072

扫码关注云+社区