【问题标题】:How to improve computational time in tensorflow如何提高张量流中的计算时间
【发布时间】:2017-04-25 09:40:58
【问题描述】:

我在 android 中使用 tensorflow。我为 TFClassify 安装了可用的 apk。我运行了应用程序,它运行迅速,推理时间不超过 400 毫秒。但是,当我用我的模型替换可用的训练模型时,在显示结果之前需要大约 2000 毫秒的计算时间。为什么会有这样的差异?如何优化我的 retrained_graph.pb?

【问题讨论】:

  • 尝试使用 Tensorflow Lite。它更适合移动设备。请记住,您需要先将模型转换为 (.tflite) 模型,以便 Lite 版本支持它。

标签: android optimization tensorflow


【解决方案1】:

您是否将重新训练的模型转换为优化和量化的图?

如果不尝试:

 tensorflow/bazel-bin/tensorflow/python/tools/optimize_for_inference \
         --input=retrained_graph.pb \
         --output=optimized_graph.pb \
         --input_names=Mul \
         --output_names=final_result

 tensorflow/bazel-bin/tensorflow/tools/quantization/quantize_graph \
         --input=optimized_graph.pb \
         --output=rounded_graph.pb \
         --output_node_names=final_result \
         --mode=weights_rounded

仅供参考,您必须先构建这些工具。

【讨论】:

  • 我对图进行了优化和量化,并将推理时间缩短了几毫秒。现在推理时间减少到 1800 毫秒,但仍然比原始模型(400 毫秒)多得多。还有什么改进的方法吗?我的模型大小为 87.1 MB
  • 首先,图形文件大小无关紧要。打包在 .APK 中时,量化图可以压缩到 ~ 25MB。其次,我也想知道如何在 Android 上提高推理性能。我还没有尝试过,但stackoverflow.com/questions/43585773/…(使用 makefile 构建)是迄今为止我能找到的唯一线索。
猜你喜欢
  • 2017-01-19
  • 1970-01-01
  • 2017-06-12
  • 1970-01-01
  • 1970-01-01
  • 2019-07-13
  • 1970-01-01
  • 2017-10-22
  • 1970-01-01
相关资源
最近更新 更多