首页 文章

我正在尝试将量化的mobilenet模型用于tensorflow lite模型,但遇到错误

提问于
浏览
3

首先,我从Mobilenet下载量化模型 . 它包含在Mobilenet_v1_1.0_224中 . 然后我做了以下

bazel-bin/tensorflow/contrib/lite/toco/toco \
> --input_files=Sample/mobilenet_v1_1.0_224/quantized_graph.pb \
> --input_format=TENSORFLOW_GRAPHDEF --output_format=TFLITE \
> --output_file=Sample/mobilenet_v1_1.0_224/quantized_graph.tflite --inference_type=QUANTIZED_UINT8 \
> --input_shape=1,224,224,3 \
> --input_array=input \
> --output_array=MobilenetV1/Predictions/Reshape_1 \
> --mean_value=128 \
> --std_value=127

以下是图表的摘要

bazel-bin/tensorflow/tools/graph_transforms/summarize_graph --in_graph=Sample/mobilenet_v1_1.0_224/quantized_graph.pb
Found 1 possible inputs: (name=input, type=float(1), shape=[1,224,224,3]) 
No variables spotted.
Found 1 possible outputs: (name=MobilenetV1/Predictions/Reshape_1, op=Reshape) 
Found 4227041 (4.23M) const parameters, 0 (0) variable parameters, and 0 control_edges
Op types used: 91 Const, 27 Add, 27 Relu6, 15 Conv2D, 13 DepthwiseConv2dNative, 13 Mul, 10 Dequantize, 2 Reshape, 1 Identity, 1 Placeholder, 1 BiasAdd, 1 AvgPool, 1 Softmax, 1 Squeeze
To use with tensorflow/tools/benchmark:benchmark_model try these arguments:
bazel run tensorflow/tools/benchmark:benchmark_model -- --graph=Sample/mobilenet_v1_1.0_224/quantized_graph.pb --show_flops --input_layer=input --input_layer_type=float --input_layer_shape=1,224,224,3 --output_layer=MobilenetV1/Predictions/Reshape_1

所以通过转换,我遇到了以下错误

2018-03-01 23:12:03.353786:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.354513:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.355177:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23 :12:03.355556:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.355921:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172转换不支持的操作:Dequantize 2018-03-01 23:12:03.356281:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.356632:I tensorflow /contrib/lite/toco/import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.357540:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1 172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.358776:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.360448:I tensorflow / contrib / lite / toco / import_tensorflow.cc:1172]转换不支持的操作:Dequantize 2018-03-01 23:12:03.366319:I tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39]删除之前未使用ops:140个运算符,232个数组(0个量化)2018-03-01 23:12:03.371405:I tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39]在一般图形转换之前:140个运算符,232个数组( 0量化)2018-03-01 23:12:03.374916:I tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39]一般图形转换后传递1:63运算符,152个数组(1个量化)2018-03 -01 23:12:03.376325:I tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39]在预量化之前图形转换:63个运算符,152个数组(1个量化)2018-03-01 23:12:03.377492:F tensorflow / contrib / lite / toco / tooling_util.cc:1272]数组MobilenetV1 / MobilenetV1 / Conv2d_0 / Relu6,这是生成输出数组MobilenetV1 / MobilenetV1 / Conv2d_1_depthwise / Relu6的DepthwiseConv运算符的输入缺少最小/最大数据,这是量化所必需的 . 定位非量化输出格式,或更改输入图形以包含最小/最大信息,或者如果不关心结果的准确性,则传递--default_ranges_min =和--default_ranges_max = .

谢谢你的帮助

1 回答

  • 1

    我想你可能正在指向旧的TensorFlow量化移动网络模型 .

    我们更新了量化的移动网络模型here . 深度乘数为1.0且图像大小为224的特定链接为this .

    这些tar文件也附带已经转换的TFLite平板缓冲模型 .

    我希望有所帮助!

相关问题