我正在尝试将此TensorFlow model转换为onnx。但我得到一个错误消息:
> python -m tf2onnx.convert --saved-model .\spice --output model.onnx --opset 11 --verbose
...
2023-04-08 18:33:10,811 - ERROR - tf2onnx.tfonnx: Tensorflow op [Real: Real] is not supported
2023-04-08 18:33:10,812 - ERROR - tf2onnx.tfonnx: Tensorflow op [Imag: Imag] is not supported
2023-04-08 18:33:10,879 - ERROR - tf2onnx.tfonnx: Unsupported ops: Counter({'Real': 6, 'Imag': 6})
...
ValueError: make_sure failure: Current implementation of RFFT or FFT only allows ComplexAbs as consumer not {'Real', 'Imag'}
TensorFlow Light(tflight)模型也是如此:
> python -m tf2onnx.convert --opset 16 --tflite .\lite-model_spice_1.tflite --output spice.onnx
...
ValueError: make_sure failure: Current implementation of RFFT or FFT only allows ComplexAbs as consumer not {'Imag', 'Real'}
我使用的是Windows 11,Python 3。10.10,TensorFlow 2.12
这是我第一次尝试使用TensorFlow / ONNX,所以我不确定错误来自哪里。
问题
- 它与TensorFlow、tf 2 onnx或模型有关吗?
- 它能在另一个设置下工作吗(可能在Linux或其他TF版本上)?
- 如何解决此问题?
1条答案
按热度按时间w8f9ii691#
1.发生上述错误是因为tf2onnx不支持真实的和Imag操作。有关可以与tf2onnx一起使用的操作列表,请参阅this link。这也会影响TensorFlow模型。
1.我不知道这是什么意思,但据我所知,它与第二点所指的没有任何关系。
1.解决此问题的方法是通过更改真实的和Imag操作,如下所示: