查看原文
其他

Google发布TensorFlow Lite

2017-11-15 TensorFlow 团队 AI前线



作者|TensorFlow 团队
译者|CarolGuo
编辑|Emily

今天,我们很高兴地发布 TensorFlow Lite 的开发者预览版,它是 TensorFlow 针对移动和嵌入式设备的轻量级解决方案。TensorFlow 一直运行在从服务器机架到小型物联网设备等众多平台上,但随着过去几年机器学习模型的采用呈指数级增长,我们很有必要将它们部署到移动和嵌入式设备上。TensorFlow Lite 能够对设备上的机器学习模型进行低延迟推理。

它的全新设计为:

  • 轻量级 使用小的二进制大小和快速初始化或启动对设备上的机器学习模型进行推理

  • 跨平台 可以运行在许多不同的平台上,从 Android 和 iOS 开始

  • 快速 针对移动设备进行了优化,包括极大地改进了模型加载时间,并支持硬件加速

目前越来越多的移动设备采用专用的定制硬件更有效地处理机器学习工作负载。TensorFlow Lite 支持 Android 神经网络 API,以利用这些新的加速器。

当加速器硬件不可用时,TensorFlow Lite 回退到优化的 CPU 执行状态,从而保证你的模型依然能够在大量设备上快速运行。


 软件架构


下图显示了 TensorFlow Lite 的软件架构设计:

单独的部件有:

  • TensorFlow 模型: 已训练好的 TensorFlow 模型保存在硬盘上。

  • TensorFlow Lite 转换器: 将模型转换为 TensorFlow Lite 文件格式的程序。

  • TensorFlow Lite 模型文件: 基于 FlatBuffers 的模型文件格式,已经针对最大速度和最小尺寸进行了优化。

之后,TensorFlow Lite 模型文件被部署在移动应用程序中,其中:

  • Java API: 对 Android 上 C++ API 的便捷包装

  • C++ API: 加载 TensorFlow Lite 模型文件并调用解释器。同样的库在 Android 和 iOS 上都可用

  • 解释器: 使用一组运算符来执行模型。解释器支持选择性的运算符加载。不带运算符时只有70KB,加载上所有运算符时有 300KB。与 TensorFlow Mobile(使用一组正常的运算符)所要求的 1.5M 相比,这是一个很显著的降低。

  • 在特定的 Android 设备上,解释器将使用 Android 神经网络 API 进行硬件加速,如果硬件加速都不可用,则默认为 CPU 执行。开发人员也可以用 C++ API 实现定制内核,解释器可以使用它。


 模型


TensorFlow Lite 已经支持多种为移动设备而训练和优化的模型:

  • MobileNet一类视觉模型,能够识别 1000 种不同的对象类别,专门设计用于移动和嵌入式设备上的高效执行

  • Inception v3:一种图像识别模型,与 MobileNet 功能类似,能提供更高的精度,但模型也更大

  • Smart Reply:设备上的对话模型,对传入的聊天对话消息提供一触式回复。第一方和第三方消息应用程序在 Android Wear 上使用此功能

Inception v3 和 MobileNets 已经在 ImageNet 数据集上进行了训练。你可以通过迁移学习在自己的图像数据集上轻松地重新训练这些模型。


 什么是 TensorFlow Mobile?


如你所知,TensorFlow 已经通过 TensorFlow Mobile API 支持模型的移动和嵌入式部署。展望未来,TensorFlow Lite 应该被看作是 TensorFlow Mobile 的演化。随着 TensorFlow Lite 的成熟,它将成为在移动和嵌入式设备上部署模型的推荐解决方案。通过这个发布会,TensorFlow Lite 作为开发者预览版提供,而 TensorFlow Mobile 仍然支持生产应用程序。

TensorFlow Lite 的视野很广,目前仍在积极开发之中。对于这个开发人员预览版,我们有意从一个有限制的平台开始,以确保一些最重要的通用模型的性能。我们将根据用户的需求优先考虑未来的功能扩展。我们持续发展的目标是简化开发人员的体验,并为各种移动和嵌入式设备进行模型部署。

我们很高兴看到开发者正在掌握 TensorFlow Lite。我们计划以与 TensorFlow 项目的其他部分相同的支持度来支持和处理我们的外部社区。我们迫不及待地想看到你如何应用 TensorFlow Lite。

更多信息请查看 TensorFlow Lite 文档页:

https://www.tensorflow.org/mobile/tflite/

查看英文原文:

https://developers.googleblog.com/2017/11/announcing-tensorflow-lite.html?m=1

注:由于微信不能添加外链,“新闻来源”相关链接可请点击【阅读原文】,在“AI 前线”知乎专栏中查看


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存