picodet onnx转其它芯片支持格式时遇到

文章目录

报错信息

报错信息为:

Upsample(resize) Resize_0 not support attribute coordinate_transformation_mode:half_pixel.

解决方法

整个模型转换过程是:paddle 动态模型转成静态,再用paddle2onnx转成onnx,onnx再转成特定芯片的格式,这是最后一个环节出的问题,即onnx转特定AI芯片时,转换工具报出来错,下面找原因。

原代码中,用的paddle.nn.Upsample(scale_factor=2,mode="nearest"),在GPU上可以正常推理,但最终目的是为了上AI,所以必须把这个算子进行适配,好在该算子没有参数,无需对模型进行重新训练,只是说在转换上有地方有点问题。

经过多次尝试:解决方法就是升级paddle2onnx,从原来的0.90升到了1.03,对应的onnx1.9升级到1.12,paddle框架的版本都是2.3.2.所以不清楚是onnx的问题还是,paddle2onnx的问题;opset试过11和12,都解决不了问题;算子nn.Upsample改成 paddle.nn.functional.interpolate也不管用。

转换失败的算子如图:

转换成功的算子:

从图上来看,paddle2onnx这个工具的问题可能是最大的。

两模型精度对比

正常来说,要对比是需要将onnx与原始paddle的静态图模型做对比。同时也要对比两个onnx的结果的差异,为了简单,只要对onnx模型做相同输入下的输出即可,因为只是差一个算子,所以归根结底是对比这一个算子的。

相关推荐
非门由也1 小时前
《sklearn机器学习——数据预处理》类别特征编码
人工智能·机器学习·sklearn
FairyGirlhub2 小时前
神经网络的初始化:权重与偏置的数学策略
人工智能·深度学习·神经网络
大写-凌祁6 小时前
零基础入门深度学习:从理论到实战,GitHub+开源资源全指南(2025最新版)
人工智能·深度学习·开源·github
焦耳加热7 小时前
阿德莱德大学Nat. Commun.:盐模板策略实现废弃塑料到单原子催化剂的高值转化,推动环境与能源催化应用
人工智能·算法·机器学习·能源·材料工程
深空数字孪生7 小时前
储能调峰新实践:智慧能源平台如何保障风电消纳与电网稳定?
大数据·人工智能·物联网
wan5555cn7 小时前
多张图片生成视频模型技术深度解析
人工智能·笔记·深度学习·算法·音视频
格林威8 小时前
机器视觉检测的光源基础知识及光源选型
人工智能·深度学习·数码相机·yolo·计算机视觉·视觉检测
今天也要学习吖8 小时前
谷歌nano banana官方Prompt模板发布,解锁六大图像生成风格
人工智能·学习·ai·prompt·nano banana·谷歌ai
Hello123网站8 小时前
glean-企业级AI搜索和知识发现平台
人工智能·产品运营·ai工具
AKAMAI8 小时前
Queue-it 为数十亿用户增强在线体验
人工智能·云原生·云计算