TensorFlow Lite、TensorFlow-TRT 和 TensorRT 之间的主要区别是啥?
Posted
技术标签:
【中文标题】TensorFlow Lite、TensorFlow-TRT 和 TensorRT 之间的主要区别是啥?【英文标题】:What are the main differences between TensorFlowLite, TendorFlow-TRT and TensorRT?TensorFlow Lite、TensorFlow-TRT 和 TensorRT 之间的主要区别是什么? 【发布时间】:2020-09-07 16:34:04 【问题描述】:我正在使用 Coral 开发板和 Nvidia Jetson TX2。这就是我了解 TensorFlow-Lite、TensorFlow-TRT 和 TensorRT 的方式。 我有一些关于他们的问题:
在 TensorFlow-TRT 和 TensorRT 之间: 将完全优化/兼容的图与 TensorRT 一起使用时,哪个更快?为什么?
在 Google Coral 中使用 TFlite 的管道(使用 TensorFlow 1.x 时...)是:
一个。使用 TensorFlow 动物园中可用的模型
b.将模型转换为冻结 (.pb)
c。使用protobuff序列化图
d。转换为 Tflite
e。应用量化(INT8)
f。编译
使用 TensorFlow-TRT 和 TensorRT 时的管道是什么? 有没有什么地方可以找到关于它的好文档?
到目前为止,我认为 TensorRT 更接近 TensorFlow Lite,因为:
TFlite:编译后你会得到一个 .quant.edtpu.tflite 文件,可用于在开发板中进行推理
TensorRT:你最终会得到一个 .plan 文件,以便在开发板中进行推理。
感谢您的回答,如果您能指出比较它们的文档,我们将不胜感激。
【问题讨论】:
【参考方案1】:TensorRT 是一个非常快速的 CUDA 运行时,仅适用于 GPU。我正在使用 Nvidia Jetson Xavier NX,将 Tensorflow 模型转换为 TensorRT,在 Tensorflow-RT (TRT) 运行时上运行。 TRT 运行时的好处是任何在 TensorRT 上不受支持的操作都将退回到使用 Tensorflow。
尚未尝试过 Tensorflow-Lite,但我将其理解为在“小型设备”上仅用于推理的缩减 TF。它可以支持 GPU,但只有有限的操作,我认为没有 python 绑定(目前)。
【讨论】:
以上是关于TensorFlow Lite、TensorFlow-TRT 和 TensorRT 之间的主要区别是啥?的主要内容,如果未能解决你的问题,请参考以下文章
sh 从tensorflow冷冻模型到tensorflow lite
Tensorflow-lite - 从量化模型输出中获取位图
模块“tensorflow._api.v2.lite”没有属性“TFliteConverter”
移动端目标识别(3)——使用TensorFlow Lite将tensorflow模型部署到移动端(ssd)之Running on mobile with TensorFlow Lite (写的很乱,回