我目前正在测试使用TensorFlow Lite转换的U-Net网络的推断延迟。我正在一个细分问题上测试三个具有相同体系结构的NN(我正在使用Windows操作系统的笔记本电脑上测试它们):
- 第一个模型:TensorFlow模型(无优化,使用Keras接口创建)李>
- 第二个模型:使用TFLite优化的TensorFlow模型(使用Python TFLite api进行转换,无需量化)。它实际上是第一个被转换的模型李>
- 第三个模型:TensorFlow模型使用TFLite优化并量化(使用Python TFLite api转换并使用TensorFlow.lite.Optimize.DEFAULT量化)。它实际上是第一个被转换的模型李>
事实上,第二个模型(使用TFLite优化)将第一个模型(正常TF模型)的时间性能提高了3倍(快三倍)。然而,第三种模型(TFLite&;quantization)在时间方面的性能最差。它甚至比第一个模型(正常TF模型)还要慢
为什么量化模型是最慢的
Tags:
这取决于模型运行的内核
通常,TFLite更适合在移动设备上运行。因此,在您的情况下,quantized+desktop可能正在使用一些op的参考实现
进一步检查的一种方法是使用
enable_op_profiling=true
运行benchmark tool它将使用虚拟数据运行您的模型并分析ops,然后像this一样向您显示摘要
如果您看到了一些问题,那么您可以提交一个github issue文件,其中包含详细信息以及如何重现问题,团队可以调试性能问题
相关问题 更多 >
编程相关推荐