macos - TOCO/Tensorflow .pb 到 .tflite output_arrays 不起作用
问题描述
我对 Tensorflow 比较陌生,我已经构建了一个自定义的训练图像模型,它是一个重新训练的 mobilenetv1 模型。我目前有一个 .pb 图表和一个 labels.txt 文件。
我正在尝试使用 TOCO 将我的 .pb 图转换为 .tflite 图,以便我可以将它与 Firebase 一起使用,并且在尝试运行 TOCO 时不断出现错误。我在终端中运行的代码是:
./toco \
--input_file=/***/frozen_graph.pb \
--input_format=TENSORFLOW_GRAPHDEF \
--output_format=TFLITE \
--output_file=/***/newGraph.tflite \
--inference_type=FLOAT \
--input_arrays=input \
--input_shapes=1,224,224,3 \
我已经尝试指定--output_arrays
标志,但我不知道为它设置什么。我在终端中遇到的错误是:
F tensorflow/contrib/lite/toco/tooling_util.cc:1480] Check failed: model->flags.output_arrays_size() > 0 (0 vs. 0)This model does not define output arrays, so a --output_arrays flag must be given on the command-line.
Abort trap: 6
我花了很多时间试图弄清楚设置--output_arrays
等于什么,我被困住了。我正在运行 MacOS 10.13.3。请帮助meeeeeeeee 谢谢
解决方案
--output_arrays
是 TOCO 中的必需标志。大多数 MobileNetV1 模型的输出数组为MobilenetV1/Predictions/Reshape_1
,但它可能因您的模型而异。查看输出数组的最佳方法是使用 TensorBoard 来可视化您的图表。
推荐阅读
- dart - How to convert a byte array to a double (float value) in Dart
- javascript - 如何在 reactJS 中获取正文中的图像
- sql - 如何使用 Aginity pro 对字段求和?
- react-native - React Native — 不变违规:ART 已从 React Native 中删除
- ios - 如何直接从 UIImages 播放新制作的动画视频以查看而不将其保存到任何目录
- javascript - Jquery - 如何调用基于 console.log 数据的方法?
- c - QEMU pcie_host 如何将物理地址转换为 pcie 地址
- mysql - AWS Glue 读取数据库中默认设置的空值,如何避免?
- android - 全屏意图远程通知
- xamarin.forms - 将 Xamarin apk 发布到云存储而不是 Google Play 商店