如何查看 2 个 Tflite 模型之间的差异

How to see differences between 2 Tflite models

我有 2 个 Tensorflow Lite 模型(它们是 Yolo V2 Tiny 模型):

然而,无论是在移动设备 phone 还是在计算机上,模型 B 的预测时间都比模型 A 多 10 倍(即使模型 B 的检测范围小于 类 且其文件更轻)。此外,模型似乎适用于大小为 416x416 的输入图像并使用浮点数。

模型 A 比模型 B 快的原因是什么? 我如何找出模型 A 更快的原因?

我遇到的一个问题是,对于模型 A,由于我没有自己训练它,所以我没有它的 .cfg 文件和整个设置...

您应该尝试以下两种方法以获得更多见解,因为模型恰好比预期慢的原因可能有多种。

使用 Netron 等工具检查两个网络。您可以上传您的 flatbuffer (TF Lite) 模型文件并可视化 TF Lite 转换后的网络架构。 在那里您可以看到两种模型之间的区别所在。如果例如与 A 相比,模型 B 中恰好有额外的 Reshape 操作或类似操作,这可能是一个原因。要下载 Netron,请遵循 https://github.com/lutzroeder/netron.

测量模型在其每一层上花费的时间。为此,您可以使用直接在 Tensorflow 存储库中提供的 TF Lite 基准测试工具。 在这里查看 https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tools/benchmark/README.md