【发布时间】:2018-11-18 17:55:25
【问题描述】:
我已经根据经过训练的模型生成了一个 .tflite 模型,我想测试一下 tfilte 模型是否给出与原始模型相同的结果。
给出相同的测试数据并获得相同的结果。
【问题讨论】:
标签: python tensorflow tensorflow-lite
我已经根据经过训练的模型生成了一个 .tflite 模型,我想测试一下 tfilte 模型是否给出与原始模型相同的结果。
给出相同的测试数据并获得相同的结果。
【问题讨论】:
标签: python tensorflow tensorflow-lite
您可以使用 TensorFlow Lite Python 解释器 来测试您的 tflite 模型。
它允许您在 python shell 中提供输入数据并直接读取输出,就像您只是使用普通的 tensorflow 模型一样。
我已经回答了这个问题here。
您可以阅读此TensorFlow lite official guide 了解详细信息。
您还可以使用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_graphviz 所述
flatc生成python api,然后通过该api解析模型
https://google.github.io/flatbuffers/flatbuffers_guide_use_python.html
flatc从tflite文件生成json并打印出来【讨论】: