caff2 与 pytorch 模型的转换--onnx

onnx和caffe2的安装参考另一篇博客

caffe2新版本中添加了onnx-caffe2,所以无需再安装

Pytorch to ONNX

import torch
from pnasnet import PNASNet5Large
from torch.autograd import Variable

model = PNASNet5Large(50)
m = torch.load('pnas_meitu_001-9708.pt')
model.load_state_dict(m)
model.train(False)

x = Variable(torch.randn(1, 3, 331, 331))
y = model(x)
torch_out = torch.onnx._export(model,  # model being run
                               x,  # model input (or a tuple for multiple inputs)
                               "pnas.onnx",  # where to save the model
                               export_params=True)

ONNX to Caffe2

直接运行

import onnx
import caffe2.python.onnx.backend as bc
import numpy as np

x = np.zeros((1, 3, 331, 331)).astype(np.float32)
model = onnx.load("pnas.onnx")
out = bc.run_model(model, [x])

 或者直接转成caffe2的model

convert-onnx-to-caffe2 assets/squeezenet.onnx --output predict_net.pb --init-net-output init_net.pb

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值