我已经基于经过训练的模型生成了一个 .tflite 模型,我想测试 tfilte 模型是否给出与原始模型相同的结果。
给出相同的测试数据并获得相同的结果。
我已经基于经过训练的模型生成了一个 .tflite 模型,我想测试 tfilte 模型是否给出与原始模型相同的结果。
给出相同的测试数据并获得相同的结果。
您可以使用TensorFlow Lite Python 解释器来测试您的 tflite 模型。
它允许您在 python shell 中提供输入数据并直接读取输出,就像您只是使用普通的 tensorflow 模型一样。
我已经在这里回答了这个问题。
您可以阅读此TensorFlow lite 官方指南 以获取详细信息。
您还可以使用Netron来可视化您的模型。它允许您直接加载您的 .tflite 文件并检查您的模型架构和模型权重。
TensorFlow 代码库中有一个tflite_diff_example_test。它生成随机数据并将相同的数据输入 TensorFlow 和 TensorFlow lite,然后比较差异是否在一个小阈值内。
您可以从 Github 签出 TensorFlow 代码,并使用 bazel 运行它:
bazel run //tensorflow/contrib/lite/testing:tflite_diff_example_test
然后你会看到你需要传递什么参数。
除了@miaout17 给出的答案,调试/理解你的 tflite 模型(这是问题的精神),你可以
--dump_graphviz
可视化图表,如此处所述https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/lite/toco/g3doc/cmdline_examples.md#using---dump_graphvizflatc
生成 python api,然后通过该 api 解析模型
https://google.github.io/flatbuffers/flatbuffers_guide_use_python.htmljson
使用从tflite
文件生成flatc
并打印出来