首页 | 投资 | 产业 | 创投 | 保险 | 公司 | 企业 | 商业 | 消费 | 行情 | 经营 | 商品 | 基金 |
没有“中间商赚差价”,OpenVINO™直接支持PyTorch模型对象

发稿时间:2023-06-27 16:26:06 来源: 面包芯语

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


(相关资料图)

目前 examle_input 支持的数据格式有:

· openvino.runtime.Tensor

· torch.Tensor

· np.ndarray

· listortuplewith tensors (openvino.runtime.Tensor/torch.Tensor/np.ndarray)

· dictionarywhere key is the input name, value is the tensor (openvino.runtime.Tensor/torch.Tensor/np.ndarray)

值得注意的是,以上两个例子导出的均为动态输入模型对象,如果想指定模型的输入 shape,可以再次添加额外的参数 input_shape/input, 将输入 shape 作为参数传入,选其一即可。案例可参考以下的实战部分。

最后,如果开发者希望导出静态 IR 文件以便后续使用,也可以调用以下接口,将 OpenVINO™ 的模型对象进行序列化:

2. 设置模型参数并转化为 OpenVINO™ 模型对象

由于 BERT 是一个多输入模型,这里额外添加了一个 input=input_info 参数,可以用来指定多输入模型中每一个 input 的 shape 以及数据类型。

3. 准备校验数据集,并启动量化

上一步中获得的 model 为 openvino.runtime.Model 类型,可以直接被 NNCF 工具加载

4. 编译量化后的模型对象,并进行推理

最终结果如下:

完整实例和性能精度比较,可以参考:

https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/105-language-quantize-bert/105-language-quantize-bert.ipynb

责任编辑:admin

标签:

琼ICP备2022009675号-32

关于我们 联系邮箱:435 227 67@qq.com