首先需要在MindSpore中训练好并经过评估可用的模型,可以以标准格式(例如onnx, mindir等)导出,得到.mindir模型文件(例如lenet.mindir)。为了将模型部署到自定义应用中,还需要将其转换为更为紧凑和高效的ms格式模型,用于在MindSpore-Lite环境中推理,这可以通过MindSpore Lite提供的模型转换工具converter_lite完成。
1.下载并解压发布件
下载地址:参考https://www.mindspore.cn/lite/docs/zh-CN/r2.0/use/converter_tool.html获取converter工具(注意:我用的mindspore版本为1.10.1,下载发布件也下载的1.10.1,两者不一致在转换时可能会报错)。解压刚刚下载的发布件,在位于mindspore-lite-{version}-win-x64\tools\converter\converter
目录,可以找到converter_lite.exe
工具。
2.环境设置
将转换工具需要的动态链接库加入环境变量PATH。
cmd中执行命令:set PATH=%PACKAGE_ROOT_PATH%\tools\converter\lib;%PATH%
我这里是:set PATH=E:\360MoveData\Users\HP\Desktop\mindspore-lite-1.10.1-win-x64\tools\converter\lib;%PATH%
再执行:set path(可以查看设置的环境变量)
3.进入转换工具所在目录
执行如下命令,进入转换工具所在目录。
cd %PACKAGE_ROOT_PATH%\tools\converter\converter
我这里是:
4.执行转换
将模型lenet.mindir
拷贝到转换工具所在目录, 如图:
执行:call converter_lite.exe --fmk=MINDIR --modelFile=lenet.mindir --outputFile=lenet
执行命令后,若转换成功,结果显示如下,并在当前目录生成名为lenet.ms
的新模型文件。
还是说下mindspore和发布件的版本问题,试了mindspore1,10,1和发布件1.6.0,转换时会报错。
另外在转换时认真仔细些,因为我下载了好几个发布件,转换时,版本有一些混乱,输错了,导致花了不少时间。