@Frank
你好,我这里有一个onnx的模型,经过0_import_model.sh
之后,进行量化1_quantize_model.sh
操作时,出现了如下问题:
1_quantize_model.sh
:
NAME=$1
ACUITY_PATH=../../../linux_sdk_6.4.3/acuity-toolkit/bin/
tensorzone=${ACUITY_PATH}tensorzonex
#dynamic_fixed_point-i8 asymmetric_affine-u8
$tensorzone \
--action quantization \
--source text \
--source-file ../imagedata/dataset.txt \
--channel-mean-value '103.939 116.779 123.68 127.0' \
--model-input ${NAME}.json \
--model-data ${NAME}.data \
--model-quantize ${NAME}.quantize \
--quantized-dtype dynamic_fixed_point-i8 \
--quantized-rebuild
问题日志展开
[TRAINER]Quantization start…
I Init validate tensor provider.
I Enqueue samples 100
I Init provider with 100 samples.
D set up a quantize net
D Process input.1_31 …
D Acuity output shape(input): (100 32 160 1)
W:tensorflow:From tensorflow_core/python/ops/resource_variable_ops.py:1630: calling BaseResourceVariable.init (from tensorflow.python.ops.resource_variable_ops) with constraint is deprecated and will be removed in a future version.
Instructions for updating:
If using Keras pass *_constraint arguments to layers.
D Real output shape: (100, 32, 160, 1)
D Process Conv_55_30 …
D Acuity output shape(convolution): (100 32 160 64)
D Real output shape: (100, 32, 160, 64)
D Process Relu_57_29 …
D Acuity output shape(relu): (100 32 160 64)
D Real output shape: (100, 32, 160, 64)
D Process MaxPool_58_28 …
D Acuity output shape(pooling): (100 16 80 64)
D Real output shape: (100, 16, 80, 64)
D Process Conv_59_27 …
D Acuity output shape(convolution): (100 16 80 128)
D Real output shape: (100, 16, 80, 128)
D Process Relu_61_26 …
D Acuity output shape(relu): (100 16 80 128)
D Real output shape: (100, 16, 80, 128)
D Process MaxPool_62_25 …
D Acuity output shape(pooling): (100 8 40 128)
D Real output shape: (100, 8, 40, 128)
D Process Conv_63_24 …
D Acuity output shape(convolution): (100 8 40 256)
D Real output shape: (100, 8, 40, 256)
D Process Relu_65_23 …
D Acuity output shape(relu): (100 8 40 256)
D Real output shape: (100, 8, 40, 256)
D Process Conv_66_22 …
D Acuity output shape(convolution): (100 8 40 256)
D Real output shape: (100, 8, 40, 256)
D Process Relu_68_21 …
D Acuity output shape(relu): (100 8 40 256)
D Real output shape: (100, 8, 40, 256)
D Process MaxPool_69_20 …
D Acuity output shape(pooling): (100 4 40 256)
D Real output shape: (100, 4, 40, 256)
D Process Conv_70_19 …
D Acuity output shape(convolution): (100 4 40 512)
D Real output shape: (100, 4, 40, 512)
D Process Relu_72_18 …
D Acuity output shape(relu): (100 4 40 512)
D Real output shape: (100, 4, 40, 512)
D Process Conv_73_17 …
D Acuity output shape(convolution): (100 4 40 512)
D Real output shape: (100, 4, 40, 512)
D Process Relu_75_16 …
D Acuity output shape(relu): (100 4 40 512)
D Real output shape: (100, 4, 40, 512)
D Process MaxPool_76_15 …
D Acuity output shape(pooling): (100 2 40 512)
D Real output shape: (100, 2, 40, 512)
D Process Conv_77_14 …
D Acuity output shape(convolution): (100 1 39 512)
D Real output shape: (100, 1, 39, 512)
D Process Relu_79_13 …
D Acuity output shape(relu): (100 1 39 512)
D Real output shape: (100, 1, 39, 512)
D Process Reshape_97_12_acuity_mark_perm_34 …
D Acuity output shape(permute): (100 512 1 39)
D Real output shape: (100, 512, 1, 39)
D Process Reshape_97_12 …
D Acuity output shape(reshape): (1 512 39)
Traceback (most recent call last):
File “tensorflow_core/python/framework/ops.py”, line 1610, in _create_c_op
tensorflow.python.framework.errors_impl.InvalidArgumentError: Cannot reshape a tensor with 1996800 elements to shape [1,512,39] (19968 elements) for ‘Reshape_97_12/Reshape_97_12’ (op: ‘Reshape’) with input shapes: [100,512,1,39], [3] and with input tensors computed as partial shapes: input[1] = [1,512,39].
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File “tensorzonex.py”, line 446, in
File “tensorzonex.py”, line 383, in main
File “acuitylib/app/tensorzone/quantization.py”, line 156, in run
File “acuitylib/app/tensorzone/quantization.py”, line 103, in _run_quantization
File “acuitylib/app/tensorzone/workspace.py”, line 172, in _setup_graph
File “acuitylib/app/tensorzone/graph.py”, line 59, in generate
File “acuitylib/acuitynetbuilder.py”, line 282, in build
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 312, in build_layer
File “acuitylib/acuitynetbuilder.py”, line 344, in build_layer
File “acuitylib/layer/acuitylayer.py”, line 280, in compute_tensor
File “acuitylib/layer/reshapelayer.py”, line 108, in compute_out_tensor
File “tensorflow_core/python/ops/array_ops.py”, line 131, in reshape
File “tensorflow_core/python/ops/gen_array_ops.py”, line 8117, in reshape
File “tensorflow_core/python/framework/op_def_library.py”, line 793, in _apply_op_helper
File “tensorflow_core/python/util/deprecation.py”, line 507, in new_func
File “tensorflow_core/python/framework/ops.py”, line 3360, in create_op
File “tensorflow_core/python/framework/ops.py”, line 3429, in _create_op_internal
File “tensorflow_core/python/framework/ops.py”, line 1773, in init
File “tensorflow_core/python/framework/ops.py”, line 1613, in _create_c_op
ValueError: Cannot reshape a tensor with 1996800 elements to shape [1,512,39] (19968 elements) for ‘Reshape_97_12/Reshape_97_12’ (op: ‘Reshape’) with input shapes: [100,512,1,39], [3] and with input tensors computed as partial shapes: input[1] = [1,512,39].
[4811] Failed to execute script tensorzonex
当我把 --source-file ../imagedata/dataset.txt
的图片数量换成一张,就没有问题。100张就出现了上面的问题,reshape不成功,像是量化的时候直接把量化图片按batchsize=100送进去了
[模型下载]链接: https://pan.baidu.com/s/16wBkQ1dq2nGWTy8HN7ocbQ 密码: jo77