我分别使用yolov8、resnet50、efficientnet_b3、densenet201在自己的数据集上训练了几个分类模型,然后通过将pt(pth)模型转换为onnx模型,再将onnx模型转换为om模型。转换之后我发现,onnx模型相对pt(pth)模型损失的精度很小,但是om模型在推理时的预测率却是非常的低(使用转换后的yolov8om目标检测模型不会这样)。以下是我转换om模型时使用的命令:
atc --model=/home/HwHiAiUser/Desktop/yolo-project/onnx/efficientnet_b3.onnx \
--framework=5 \
--output=/home/HwHiAiUser/Desktop/yolo-project/om/efficientnet_b3 \
--input_format=NCHW \
--input_shape="input:1,3,300,300" \
--log=info \
--soc_version=Ascend310B4 \
--precision_mode=force_fp32
使用onnx模型推理时,精度可以达到90%以上,但是om模型推理时的精度有时不到1%,为什么分类模型会出现精度损失这么高的情况?
atc --model=/home/HwHiAiUser/Desktop/yolo-project/onnx/efficientnet_b3.onnx \
--framework=5 \
--output=/home/HwHiAiUser/Desktop/yolo-project/om/efficientnet_b3 \
--input_format=NCHW \
--input_shape="input:1,3,300,300" \
--log=info \
--soc_version=Ascend310B4 \
--precision_mode=force_fp32
使用onnx模型推理时,精度可以达到90%以上,但是om模型推理时的精度有时不到1%,为什么分类模型会出现精度损失这么高的情况?