调用resize_tensor_input遇RuntimeError:张量维度数量不匹配求助
问题原因与解决方法
错误的核心原因是你传入的输入形状维度数和模型原始输入张量的维度数不匹配。
UrbanSound对应的TFLite模型,其输入张量通常是2维形状(格式一般为[batch_size, sample_count],比如单样本推理时是[1, 16000]),而你调用interpreter.resize_tensor_input时传入的[waveform.size]是1维形状,两者维度数量(2 vs 1)不一致,触发了strict=True模式下的维度校验错误。
解决方法
- 给输入形状加上批量维度,把
[waveform.size]改成[1, waveform.size](单样本推理时批量数设为1) - 确保修改后的形状每个维度的合法性(比如样本数要符合模型要求的输入长度,比如16000个采样点)
修改后的代码示例
interpreter.resize_tensor_input(waveform_input_index, [1, waveform.size], strict=True)
内容的提问来源于stack exchange,提问作者Sazzad Hissain Khan
相关产品推荐
相关产品推荐

