没有“中间商赚差价”, OpenVINO™ 直接支持 PyTorch 模型对象

OpenVINO™2023.0版本引入了新的PyTorch前端,允许开发者直接将PyTorch模型对象转换为OpenVINO™模型,不再需要通过ONNX作为中介。此功能支持torch.nn.Module、torch.jit.ScriptModule和torch.jit.ScriptFunction,并基于TorchScript进行转换。文章通过BERT模型的案例展示了从PyTorch模型到量化模型的完整流程,简化了转换和部署过程。

点击蓝字

关注我们,让开发变得更有趣

作者 | 杨亦诚

排版 | 李擎

没有“中间商赚差价”, OpenVINO™ 

直接支持 PyTorch 模型对象

背景

作为最热门的开源深度学习框架之一,PyTorch 的易用性和灵活性使其深受学术和研究界的喜爱。之前 OpenVINO™ 对于 PyTorch 模型的支持也仅仅停留在 ONNX 过渡阶段,需要通过将 PyTorch 动态模型导出为 ONNX 静态格式后,才可以直接被 OpenVINO™ runtime 离线加载,虽然 PyTorch 也提供了官方的 torch.onnx.export 接口帮助开发者导出 ONNX 模型,但毕竟有这么一个“中间商”在那里,其中很多额外的配置工作也为 OpenVINO™ 开发者带来了不便,诸如动态/静态输入设定,以及 opset 版本设定等。

一、OpenVINO™ 直接支持 PyTorch 模型对象

f4209414be9c61105ede77ab045d7ec5.png

随着 OpenVINO™ 2023.0 版本的发布,OpenVINO™ 工具库中预置了全新的 PyTorch 前端,为开发者们提供了一条全新的 PyTorch 模型支持路径,带来更友好的用户体验—— OpenVINO™ 的 mo 工具可以直接将 PyTorch 模型对象转化为 OpenVINO™ 的模型对象,开发者可以不需要将 ONNX 模型作为中间过渡。

import torchvision
import torch
from openvino.tools.mo import convert_model


model = torchvision.models.resnet50(pretrained=True)
ov_model = convert_model(model)

对比以 ONNX 作为中间过度的方式,新 PyTorch 前端有以下特点:

79d4a045ccf2c1a86306dfac157d96c4.png

目前支持的 PyTorc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值