代码拉取完成,页面将自动刷新
同步操作将从 PaddlePaddle/Paddle2ONNX 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
简体中文 | English
paddle2onnx支持将PaddlePaddle模型格式转化到ONNX模型格式。
python >= 2.7
静态图: paddlepaddle >= 1.8.0
动态图: paddlepaddle >= 2.0.0
onnx == 1.7.0 | 可选
pip install paddle2onnx
git clone https://github.com/PaddlePaddle/paddle2onnx.git
python setup.py install
Paddle模型的参数保存为多个文件(not combined):
paddle2onnx --model_dir paddle_model --save_file onnx_file --opset_version 10 --enable_onnx_checker True
Paddle模型的参数保存在一个单独的二进制文件中(combined):
paddle2onnx --model_dir paddle_model --model_filename model_filename --params_filename params_filename --save_file onnx_file --opset_version 10 --enable_onnx_checker True
参数 | 参数说明 |
---|---|
--model_dir | 配置包含Paddle模型的路径, 由paddle.fluid.io.save_inference_model 保存得到 |
--model_filename |
[可选] 配置位于--model_dir 下存储网络结构的文件名称。当且仅当所有模型参数被保存在一个单独的二进制文件中,它才需要被指定。默认为None |
--params_filename |
[可选] 配置位于--model_dir 下存储模型参数的文件名称。当且仅当所有模型参数被保存在一个单独的二进制文件中,它才需要被指定。默认为None |
--save_file | 指定转换后的模型保存目录路径 |
--opset_version | [可选] 配置转换为ONNX的OpSet版本,目前比较稳定地支持9、10、11三个版本,默认为9 |
--enable_onnx_checker | [可选] 配置是否检查导出为ONNX模型的正确性, 建议打开此开关。若指定为True,需要安装 onnx>=1.7.0, 默认为False |
--version | [可选] 查看paddle2onnx版本 |
import paddle
from paddle import nn
from paddle.static import InputSpec
import paddle2onnx as p2o
class LinearNet(nn.Layer):
def __init__(self):
super(LinearNet, self).__init__()
self._linear = nn.Linear(784, 10)
def forward(self, x):
return self._linear(x)
layer = LinearNet()
# configure model inputs
x_spec = InputSpec([None, 784], 'float32', 'x')
# convert model to inference mode
layer.eval()
save_path = 'onnx.save/linear_net'
p2o.dygraph2onnx(layer, save_path + '.onnx', input_spec=[x_spec])
# when you paddlepaddle>2.0.0, you can try:
# paddle.onnx.export(layer, save_path, input_spec=[x_spec])
Provided under the Apache-2.0 license.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。