如何解决ONNX 网络是否可以与 onnxruntime 不兼容?
我无法在 ONNX 模型上运行推理,方法是对 this Windows ML tutorial 进行(微小的)调整,或者在他们的 ONNX Runtime 之后实现我自己的 MNIST Tutorial 代码。据我了解,Windows ML 使用了 ONNX 运行时,所以这两种努力可能最终都在同一个地方......并且可能出于相同的原因产生相同的底层异常。
抛出的异常要么无法理解(在异常处理期间抛出的第二个异常通过外观...)或根本无法识别。这让我怀疑网络本身是否在某种意义上有问题或不兼容。该网络是通过采用保存的 Tensorflow/Keras 模型并运行此转换来生成的:
python -m tf2onnx.convert --saved-model MyNet --output MyNet.onnx --inputs-as-nchw mobilenetv2_1_00_224_input:0
结果是一个由 Netron 渲染的网络,具有以下输入和输出阶段:
这个网络是否有任何明显与 ONNX Runtime 不兼容的地方?关于如何克服其中一个/两个例外的任何建议?
解决方法
事实证明,在我尝试调整 Windows ML 示例时,我的输出形状是错误的 - 在该示例中,输出形状是 1 x 1000 x 1 x 1。我已经复制/粘贴了这个,只是修改了 1000以适应。显然,上面的网络需要一个 1 x 10 的形状......
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。