TensorFlow Lite 转换器

TensorFlow Lite 转换器可将 TensorFlow 模型转换为经过优化的 FlatBuffer 格式,供 TensorFlow Lite 解释器使用。

FlatBuffer

FlatBuffer 是一个高效的开源跨平台序列化库。它与协议缓冲区类似,但区别在于,FlatBuffer 省去了在访问数据之前解析/解压为二级表示法的步骤,从而避免了各对象的内存分配。FlatBuffer 的代码占用空间比协议缓冲区要小一个数量级。

从模型训练到设备部署

TensorFlow Lite 转换器会根据 TensorFlow 模型生成 TensorFlow Lite FlatBuffer 文件 (.tflite)。

该转换器支持以下输入格式:

然后,TensorFlow Lite FlatBuffer 文件将部署到客户端设备,TensorFlow Lite 解释器会使用压缩的模型进行设备端推断。此转换流程如下图所示:

TFLite 转换器工作流

应用方式

您可以通过以下两种方式之一使用 TensorFlow Lite 转换器:

  • Python建议):借助 Python API,您在模型开发流水线中可以更轻松地对模型进行转换,并及早减少兼容性问题。
  • 命令行