You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
model_path1 = '3_resnetfc_ce_epoch_9_length_1_opt_1_mulopt_0_flip_1_crop_1_batch_256_train_9976_val_8320_valDice_9275_lr_1e-4.pth'
net = resnet_lstm()
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
net.load_state_dict(torch.load(model_path1, map_location=device))
net = net.cuda()
net = net.eval()
model_trace = torch.jit.trace(net, torch.rand(1, 3, 224, 224).cuda())
model_trace.save('model_trace.pt')
model_script = torch.jit.script(net)
model_script.save('model_script.pt')
然后通过命令行将.pt转换为.mnn,命令行如下:
MNNConvert -f TORCH --modelFile model_trace.pt --MNNModel model_trace.mnn --bizCode biz 或者
MNNConvert -f TORCH --modelFile model_script.pt --MNNModel model_script.mnn --bizCode biz
但是报错:
The device support i8sdot:0, support fp16:0, support i8mm: 0
The device support i8sdot:0, support fp16:0, support i8mm: 0
Framework Input ERROR or Not Support This Model Type Now!
Traceback (most recent call last):
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\runpy.py", line 87, in run_code
exec(code, run_globals)
File "D:\Anaconda3.7\envs\pytorch_gpu\Scripts\mnnconvert.exe_main.py", line 7, in
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\site-packages\MNN\tools\mnnconvert.py", line 49, in main
dst_model_size = os.path.getsize(arg_dict["MNNModel"]) / 1024.0 / 1024.0
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\genericpath.py", line 50, in getsize
return os.stat(filename).st_size
FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'model_trace.mnn'
平台(如果交叉编译请再附上交叉编译目标平台):
windows x86
Github版本:
2.7.1
编译方式:
pip install MNN==2.7.1
我想把pytorch训练的.pth文件转换为.mnn格式。首先将.pth转换为.pt文件,代码如下:
model_path1 = '3_resnetfc_ce_epoch_9_length_1_opt_1_mulopt_0_flip_1_crop_1_batch_256_train_9976_val_8320_valDice_9275_lr_1e-4.pth'
net = resnet_lstm()
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
net.load_state_dict(torch.load(model_path1, map_location=device))
net = net.cuda()
net = net.eval()
model_trace = torch.jit.trace(net, torch.rand(1, 3, 224, 224).cuda())
model_trace.save('model_trace.pt')
model_script = torch.jit.script(net)
model_script.save('model_script.pt')
然后通过命令行将.pt转换为.mnn,命令行如下:
MNNConvert -f TORCH --modelFile model_trace.pt --MNNModel model_trace.mnn --bizCode biz
或者
MNNConvert -f TORCH --modelFile model_script.pt --MNNModel model_script.mnn --bizCode biz
但是报错:
The device support i8sdot:0, support fp16:0, support i8mm: 0
The device support i8sdot:0, support fp16:0, support i8mm: 0
Framework Input ERROR or Not Support This Model Type Now!
Traceback (most recent call last):
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\runpy.py", line 87, in run_code
exec(code, run_globals)
File "D:\Anaconda3.7\envs\pytorch_gpu\Scripts\mnnconvert.exe_main.py", line 7, in
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\site-packages\MNN\tools\mnnconvert.py", line 49, in main
dst_model_size = os.path.getsize(arg_dict["MNNModel"]) / 1024.0 / 1024.0
File "D:\Anaconda3.7\envs\pytorch_gpu\lib\genericpath.py", line 50, in getsize
return os.stat(filename).st_size
FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'model_trace.mnn'
我试过将onnx和tflite转换为mnn,都可以正常运行,但torch到mnn一直不行。找不到model_trace.mnn这个文件感觉很奇怪,这个文件不是输出的文件吗?
初学者,如有不对,敬请指正
The text was updated successfully, but these errors were encountered: