使用MindSpore将保存的模型导出

2024-11-01 15:43:46

1、导出MINDIR格式文件方法保存了CheckPoint文件后,如果想继续在MindSpore Lite端侧做推理,需要通过网络和CheckPoint生成对应的MINDIR格式模型文件。当前支持基于静态图,且不包含控制流语义的推理网络导出。导出该格式文件的代码样例如下:from mindspore.train.serialization import exportimport numpy as npresnet = ResNet50()# return a parameter dict for modelparam_dict = load_checkpoint("resnet50-2_32.ckpt")# load the parameter into netload_param_into_net(resnet, param_dict)input = np.random.uniform(0.0, 1.0, size=[32, 3, 224, 224]).astype(np.float32)export(resnet, Tensor(input), file_name='resnet50-2_32.mindir', file_format='MINDIR')建议使用.mindir作为MINDIR格式文件的后缀名。

使用MindSpore将保存的模型导出

2、导出AIR格式文件方法如果想继续在昇腾AI处理器上做推理,需要通过网络和CheckPoint生成对应的AIR格式模型文件。导出该格式文件的代码样例如下:from mindspore.train.serialization import exportimport numpy as npresnet = ResNet50()# return a parameter dict for modelparam_dict = load_checkpoint("resnet50-2_32.ckpt")# load the parameter into netload_param_into_net(resnet, param_dict)input = np.random.uniform(0.0, 1.0, size=[32, 3, 224, 224]).astype(np.float32)export(resnet, Tensor(input), file_name='resnet50-2_32.air', file_format='AIR')使用export接口之前,需要先导入mindspore.train.serialization。input用来指定导出模型的输入shape以及数据类型。建议使用.air作为AIR格式文件的后缀名。

使用MindSpore将保存的模型导出

3、导出ONNX格式文件方法如果想继续在昇腾AI处理器、GPU、CPU等多种硬件上做推理,需要通过网络和CheckPoint生成对应的ONNX格式模型文件。导出该格式文件的代码样例如下:from mindspore.train.serialization import exportimport numpy as npresnet = ResNet50()# return a parameter dict for modelparam_dict = load_checkpoint("resnet50-2_32.ckpt")# load the parameter into netload_param_into_net(resnet, param_dict)input = np.random.uniform(0.0, 1.0, size=[32, 3, 224, 224]).astype(np.float32)export(resnet, Tensor(input), file_name='resnet50-2_32.onnx', file_format='ONNX')建议使用.onnx作为ONNX格式文件的后缀名。

使用MindSpore将保存的模型导出
猜你喜欢