python - 与 keras h5 模型(VGG16 预训练)相比,Tensorflow lite 模型推理非常慢
问题描述
与 keras (h5) 模型相比,Tensorflow lite 预测非常慢。Colab 和 Windows 10 系统上的行为相似。我将标准 VGG16 模型转换为 tflite 优化和不优化(converter.optimizations = [tf.lite.Optimize.DEFAULT])
这是我得到的结果:
- Keras 模型 (540MB) 预测时间:0.14 秒
- tflite 无优化 (540MB) 预测时间:0.5 秒
- tflite 优化 (135MB) 预测时间:39 秒
我在这里错过了什么吗?tflite 不应该针对速度进行优化吗?Raspberry Pi 或其他“更轻”的设备上的行为会有所不同吗?
解决方案
TensorFlow Lite 没有针对桌面/服务器进行优化,因此它在这些环境中对大多数模型表现不佳也就不足为奇了。TFLite 的优化内核(包括他们的许多 GEMM 操作)特别适用于移动 CPU(其指令集与桌面 CPU IIUC 不同)。
标准 TensorFlow 更适合您的用例。
推荐阅读
- node.js - SequelizeUniqueConstraintError on bulkcreate with association
- javascript - 计算实时 javascript 值并传递给输入字段,而不是 textarea
- python - 遍历图像并获取用户输入的数据标签(值从 1-3)
- c# - 发布后无法从内部调用操作访问模型数据
- c# - 如何使用我自己的测试 Web 应用程序在某些 Web 应用程序上运行 selenium 自动化测试用例
- qt - 如何在 QML 中使用 Buttons、GroupBox、Text 和 ProgressBar 设置基本 GridLayout
- python - 用于在数据框中搜索列表中的项目并返回虚拟变量的 Python 函数是什么?
- value-iteration - 为什么策略迭代比价值迭代快?
- html - chartJS中心的文本导致无限循环
- python - 矩阵元素的算术平均值和总和