原因
onnx不支持silu
解决
vscode进入
- 进入conda/lib/python3.8/site-packages/torch/nn/modules/activation.py
- 查找 class SILU()
- 修改forward函数,return input * torch.sigmoid(input)
linux命令
因为我的ssh出问题了,vscode不能连接服务器,所以只好输入命令进入了
- 进如/opt/conda/lib/python3.8/site-packages/torch/nn/modules目录
cd /opt/conda/lib/python3.8/site-packages/torch/nn/modules
- vim 打开activation.py
(base) root@test:/opt/conda/lib/python3.8/site-packages/torch/nn/modules# vim activation.py
- 找到第 361 行 SILU 类, 如下图所示
- 找到 forward函数,并按下 “i” 进入编辑模式
- 修改为 return input * torch.sigmoid(input)
- 按下 ESC 退出编辑模式,并依次按下":wq" 回车进行保存。如下图所示,左下角娴熟输入的“:wq”
至此,修改完成,如下图onnx转换成功