MMdnn
MMdnn copied to clipboard
Problem converting Pytorch mobilenet_v2 to Tensorflow
Problem: It's seem like mmdnn hasn't support convert Pytorch mobilenet_v2 to IR format
Platform: ubuntu 18.04
Python version: 3.6
- mmdnn==0.3.0
Source framework with version:
- torch==1.2.0
- torchvision==0.4.0
Destination framework with version:
- tensorflow==1.15.1
Model - download with mmdownload
mmdownload -f pytorch -n mobilenet_v2 -o ./
Running scripts:
mmdownload -f pytorch -n mobilenet_v2 -o ./
mmtoir -f pytorch -d mobilenet_v2 --inputShape 3,224,224 -n imagenet_mobilenet_v2.pth
Error message:
Traceback (most recent call last):
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/bin/mmtoir", line 8, in <module>
sys.exit(_main())
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/_script/convertToIR.py", line 192, in _main
ret = _convert(args)
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/_script/convertToIR.py", line 92, in _convert
parser = PytorchParser(model, inputshape[0])
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/pytorch/pytorch_parser.py", line 85, in __init__
self.pytorch_graph.build(self.input_shape)
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/pytorch/pytorch_graph.py", line 124, in build
trace.set_graph(PytorchGraph._optimize_graph(trace.graph(), False))
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/pytorch/pytorch_graph.py", line 74, in _optimize_graph
graph = torch._C._jit_pass_onnx(graph, aten)
TypeError: _jit_pass_onnx(): incompatible function arguments. The following argument types are supported:
1. (arg0: torch::jit::Graph, arg1: torch._C._onnx.OperatorExportTypes) -> torch::jit::Graph
Detail log error: log.txt
Updated: I try with mmdnn==0.3.1 It show different error
mmtoir -f pytorch -d mobilenet_v2 --inputShape 3,224,224 -n imagenet_mobilenet_v2.pth
Traceback (most recent call last):
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/bin/mmtoir", line 8, in <module>
sys.exit(_main())
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/_script/convertToIR.py", line 197, in _main
ret = _convert(args)
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/_script/convertToIR.py", line 120, in _convert
parser.run(args.dstPath)
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/common/DataStructure/parser.py", line 22, in run
self.gen_IR()
File "/home/kylee/Software/anaconda3/envs/mmdnn_tut/lib/python3.6/site-packages/mmdnn/conversion/pytorch/pytorch_parser.py", line 100, in gen_IR
node_type = PytorchParser.layer_map[onnx_node_type]
KeyError: 'onnx::Clip'
It's seem like mmdnn 0.3.1 still does not support convert pytorch mobilenet_v2 to IR
@kyhoolee , thank you very much for the feedback. We will look into this issue.