TensorFlow Lite是可帮助开发人员在移动端(mobile)、嵌入式(embeded)和物联网(IoT)设备上运行TensorFlow机器学习模型的一组工具。它使设备机器学习具有低延迟和更小的二进制体积。本文是TensorFlow Lite入门指导。

TensorFlow Lite

TensorFlow Lite由两个主要组件组成:

  • interpreter(解释器):可在许多不同的硬件类型(包括手机,嵌入式Linux设备和微控制器)上运行经过特别优化的模型。
  • converter(转换器):将TensorFlow模型转换为供解释器使用的有效形式,并且可以引入优化以改善二进制大小和性能。

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

在设备端使用模型的过程:

  • 训练并保存模型(开发机器)
  • 转换模型(开发机器)
  • 将转换后的模型复制到设备上
  • 使用TF Lite解释器运行推理

converter与量化

converter使用TF模型生成FlatBuffer文件(.tflite),然后将FlatBuffer文件部署到客户端设备(例如移动设备,嵌入式设备)并使用TensorFlow Lite解释器在本地运行。下图显示了此转换过程:

converter代码实现如下:

为什么要使用FlatBuffer? 主要原因有:

  • 无需解析/拆包即可访问序列化数据
  • 内存效率和速度-访问数据所需的唯一内存是缓冲区的内存
  • 没有依赖项的跨平台代码

使用converter转换模型的主要原因:

  • 使模型更小(内存占用更小)
  • 提高推理效率
  • 需要较少的内存访问
  • 推理中使用更少的能量

注:推理(Inference) 是通过模型(model)运行数据(data)以获得预测(predictions)的过程。这个过程需要模型(model)、解释器(interpreter)和输入数据(input data)。

为了实现这些目标,主要组成部分是所谓的量化(Quantization)如下图:

成为VIP会员查看完整内容
69

相关内容

少标签数据学习,54页ppt
专知会员服务
197+阅读 · 2020年5月22日
Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
129+阅读 · 2020年3月15日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
87+阅读 · 2019年11月25日
TensorFlow Lite 2019 年发展蓝图
谷歌开发者
6+阅读 · 2019年3月12日
TensorFlow 2.0深度强化学习指南
云栖社区
18+阅读 · 2019年2月1日
TF Boys必看!一文搞懂TensorFlow 2.0新架构!
引力空间站
18+阅读 · 2019年1月16日
Tensorflow Eager Execution入门指南
专知
6+阅读 · 2018年4月16日
谷歌发布TensorFlowLite,用半监督跨平台快速训练ML模型!
全球人工智能
5+阅读 · 2017年11月15日
教程 | 如何从TensorFlow转入PyTorch
机器之心
7+阅读 · 2017年9月30日
Arxiv
5+阅读 · 2020年3月26日
Arxiv
5+阅读 · 2018年6月12日
Arxiv
4+阅读 · 2018年3月30日
VIP会员
相关主题
相关资讯
TensorFlow Lite 2019 年发展蓝图
谷歌开发者
6+阅读 · 2019年3月12日
TensorFlow 2.0深度强化学习指南
云栖社区
18+阅读 · 2019年2月1日
TF Boys必看!一文搞懂TensorFlow 2.0新架构!
引力空间站
18+阅读 · 2019年1月16日
Tensorflow Eager Execution入门指南
专知
6+阅读 · 2018年4月16日
谷歌发布TensorFlowLite,用半监督跨平台快速训练ML模型!
全球人工智能
5+阅读 · 2017年11月15日
教程 | 如何从TensorFlow转入PyTorch
机器之心
7+阅读 · 2017年9月30日
微信扫码咨询专知VIP会员