silu to ONNX opset version 12 is not supported
【摘要】
yolov7导出onnx时报错:
Starting ONNX export with onnx 1.12.0... ONNX export failure: Exporting the operator silu to ONNX opset version 12 is not supported. Please open a bu...
yolov7导出onnx时报错:
Starting ONNX export with onnx 1.12.0...
ONNX export failure: Exporting the operator silu to ONNX opset version 12 is not supported. Please open a bug to request ONNX export support for the missing operator.
方法1,把silu替换掉:
-
-
import torch
-
import torch.nn as nn
-
-
import models
-
from models.experimental import attempt_load
-
from utils.activations import Hardswish, SiLU
-
from utils.general import set_logging, check_img_size
-
from utils.torch_utils import select_device
-
-
def replace_module(module, replaced_module_type, new_module_type, replace_func=None) -> nn.Module:
-
"""
-
Replace given type in module to a new type. mostly used in deploy.
-
-
Args:
-
module (nn.Module): model to apply replace operation.
-
replaced_module_type (Type): module type to be replaced.
-
new_module_type (Type)
-
replace_func (function): python function to describe replace logic. Defalut value None.
-
-
Returns:
-
model (nn.Module): module that already been replaced.
-
"""
-
-
def default_replace_func(replaced_module_type, new_module_type):
-
return new_module_type()
-
-
if replace_func is None:
-
replace_func = default_replace_func
-
-
model = module
-
if isinstance(module, replaced_module_type):
-
model = replace_func(replaced_module_type, new_module_type)
-
else: # recurrsively replace
-
for name, child in module.named_children():
-
new_child = replace_module(child, replaced_module_type, new_module_type)
-
if new_child is not child: # child is already replaced
-
model.add_module(name, new_child)
-
-
return model
-
-
model = replace_module(model, nn.SiLU, SiLU)
-
model = replace_module(model, nn.Hardswish, Hardswish)
方法2:
把torch从原版本1.7.0升级到1.10.
文章来源: blog.csdn.net,作者:AI视觉网奇,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jacke121/article/details/126756687
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)