首页 > 解决方案 > 使用 tflite 时出现 resize_tensor_input failed to reshape 错误

问题描述

因此,当我将 1 个输入传递给 tflite 模型时,我的模型和一切都正常工作。但是对于批量推理,我需要为此传递 1000 个值,我正在调整张量输入大小,但出现以下错误:

tensorflow/lite/kernels/reshape.cc:69 num_input_elements != num_output_elements (100000 != 100)Node number 6 (RESHAPE) failed to invoke.

我正在使用的代码是:

interpreter.resize_tensor_input(input_details[0]['index'], [1, 1000, 100])
interpreter.allocate_tensors()
interpreter.set_tensor(input_details[0]['index'], input_data10)
interpreter.invoke()

在最后一行它给了我这个错误。

标签: pythontensorflownlptensorflow-litebert-language-model

解决方案


通过更改 np.expands 行,我能够解决上述问题。

最初我使用的是:

input_data10 = np.expand_dims(input_text[1:1001], axis=0)

我改为 input_data10 = np.expand_dims(input_text[1:1001], axis=1)

所以通过改变轴,它对我有用。


推荐阅读