yitu-opensource / MobileNeXt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

请问mobilenext转onnx可以吗?我转完onnx过程没有报错但是和pytorch输出对不上

FelixZhang7 opened this issue · comments

我转onnx的代码如下:
onnx版本是1.6.0

import torch
import os
import numpy as np
from model.mobilenext import mnext

def main():
initial_checkpoint = 'mobiilenext_se.pth'
network = mnext(num_classes=2)
network.eval()
state = torch.load(initial_checkpoint, map_location=lambda storage, loc: storage)
network.load_state_dict({k[7:]: v for k, v in state.items()})
dummy_input1 = torch.randn(1, 3, 48, 48)
input_names = ["input"]
output_names = ["output"]
torch.onnx.export(network, dummy_input1, "mobilenext_se.onnx", verbose=True, input_names=input_names,
output_names=output_names)

if name == 'main':
main()

你好, 我之前没有尝试过转onnx,但是我们转过caffee 结果是可以的。

@zhoudaquan 请问转caffe的时候
if self.identity:
shape = x.shape
id_tensor = x[:,:shape[1]//self.identity_div,:,:]
# id_tensor = torch.cat([x[:,:shape[1]//self.identity_div,:,:],torch.zeros(shape)[:,shape[1]//self.identity_div:,:,:].cuda()],dim=1)
# import pdb; pdb.set_trace()
out[:,:shape[1]//self.identity_div,:,:] = out[:,:shape[1]//self.identity_div,:,:] + id_tensor
这个操作支持吗?我是先转的onnx后转的caffe,onnx里会有slice和scatterND操作caffe不支持
image