繁体   English   中英

如何将深度学习模型从 MATLAB 导入到 PyTorch?

[英]How to import deep learning models from MATLAB to PyTorch?

我正在尝试将经过 DNN 训练的 model 从 MATLAB 导入到 PyTorch。

I've found solutions for the opposite case (from PyTorch to MATLAB), but no proposed solutions on how to import a trained model from MATLAB to PyTorch.

请问有什么想法吗?

您可以先将model 导出为 ONNX 格式,然后使用ONNX加载; 先决条件是:

pip install onnx onnxruntime

然后,

onnx.load('model.onnx')
# Check that the IR is well formed
onnx.checker.check_model(model)

到目前为止,您仍然没有 PyTorch model。 这可以通过各种方式来完成,因为它不是本机支持的。


一种解决方法(通过加载 model 参数)

import onnx
onnx_model = onnx.load('model.onnx')

graph = onnx_model.graph
initalizers = dict()
for init in graph.initializer:
    initalizers[init.name] = numpy_helper.to_array(init)

for name, p in model.named_parameters():
    p.data = (torch.from_numpy(initalizers[name])).data

使用onnx2pytorch

import onnx

from onnx2pytorch import ConvertModel

onnx_model = onnx.load('model.onnx')
pytorch_model = ConvertModel(onnx_model)

注意:耗时

使用onnx2keras ,然后使用 MMdnn 从MMdnn转换为 PyTorch (示例)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM