通过AI Gallery体验使用MindSpore训练Lenet5

一、创建OBS

进入OBS主页:https://console.huaweicloud.com/console/?region=cn-north-4&locale=zh-cn#/obs/manager/buckets

点击页面右上方的创建桶,随后在出来的页面中【数据荣誉存储策略】选择【单AZ存储】,【桶名称】位置填写一个桶的名字,自定义,只要不重复就行,重复会有提示,全都填写完成后点击,页面右下角的【立即创建】就完成了桶的创建工作

二、AI Gallery订阅算法和数据集

MindSpore框架的Lenet5算法代码和Mnist数据集体检在AI Gallery中提前创建完成了,只需要前往订阅算法和将数据集下载到自己的OBS中即可。

AI Gallery主页:https://marketplace.huaweicloud.com/markets/ai/gallery.html

LeNet算法订阅:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=82628461-9b19-4508-9659-c65ebcd00451

点击链接进入到算法订阅界面,点击【订阅】按钮即可完成订阅。

完成算法订阅后,可以发现在算法页面显示已订阅,然后再点击【前往控制台】同步一下算法,控制台的区域选择【华为-北京四】,不然可能无法正常使用。

完成算法的订阅后,我们再去订阅一下数据集

MNIST数据集页面:https://marketplace.huaweicloud.com/markets/aihub/datasets/detail/?content_id=46214da0-fae2-44b8-8ea6-0a30fabcea15

点击页面上的【下载】就可以将数据集下载到我们的OBS中

在出来的页面中【目标位置】这一栏点击右面的文件夹小图标,选择我们前面第一步创建的OBS,然后在出来的页面中点击【新建文件夹】创建一个文件夹data(为了方便管理),然后点确定。随后返回到页面后继续点确定,就开始将数据集下载到OBS中了。

三、创建训练作业

算法和数据集都订阅下载完后就可以前往MoelArts进行模型训练操作

ModelArts主页:https://console.huaweicloud.com/modelarts/

点击页面左面的【训练管理】-【训练作业New】即可进入到创建训练作业的页面了,然后我们点击页面上方的【创建训练作业】,开始创建我们的训练作业

训练作业名字自定义即可,【算法】选择【我的订阅】,然后找到前面订阅的算法【Lenet5_Mindspore】,然后点向下的小箭头,然后在1.0版本前选中

选择完算法后,接下再选择一下数据集,在页面【训练输入】的位置选择【选择数据存储位置】,然后找到我们前面创建的OBS桶点进去后找到我们前面存放数据集的目录【data】,点击data,进去后直接点【确定】即可(能看到train文件夹和test文件夹的时候点确定)

随后我们还要指定一下训练产生的checkpoint文件存放位置,在【模型输出】的位置点击【选择】,然后和前面下载数据集的时候一样操作,创建一个output文件夹用于存放输出文件。最后我们还要设定一下模型的训练参数。这面做一个说明

device_target:使用的训练设备【Ascend、GPU、CPU】 这边不用动,就Ascend即可

epoch_size:训练的epoch数

eval:训练模式还是验证模式

ckpt_path:验证模式的时候这边填写ckpt文件路径

当然我创建算法的时候只列了几个常用的超参,模型本身还有其他的超参,具体的可以参考算法来源:https://gitee.com/mindspore/mindspore/tree/master/model_zoo/official/cv/lenet

里面的说明文件自己添加超参

最后还需要设定一个作业日志路径,点击【选择】进入到我们创建obs,然后创建一个目录存放训练的日志文件,选择完后点页面下方的【提交】就可以开始模型训练。

当在页面中看到状态为【已完成】,然后就可以去右面的日志文件显示的地方看下有没有epoch 相关的信息。因为训练的时候还有Event日志信息打印出来,所以要稍微找一下,应该不难。

四、验证模型精度

训练完成后,我们回到OBS页面看一下模型训练生成的文件是不是已经储存进来了

进入到OBS主页,然后点击页面中桶名字,然后进入选择【对象】,然后进入到我们存放输出文件的output文件,如果看到有一些ckpt文件产生,那就说明训练正常完成了。随后我们找到checkpoint_lenet-10_1875.ckpt这个文件,然后点进去

随后点击文件名右面的小图标,完成复制文件路径的操作后再回到创建训练作业的位置,和前面一样操作创建训练作业。唯一不同的是超参的位置我们需要把eval设置为True,然后在ckpt_path将我们前面复制的ckpt路径粘贴过来。

全部完成后和前面一样点击提交开始模型验证阶段的代码运行,当看到日志区域出现Accuracy的时候整个验证就算完成了,一般来说不需要改参数精度基本都在98以上。

至此,整个操作就完成了,如果此时你还在参加CANN训练营的话,CANN训练营模型营第一次作业的第五题就这么完成了。

如果你还不知道CANN训练营是什么的话,赶紧点链接了解一下吧!链接在此->https://bbs.huaweicloud.com/forum/thread-129524-1-1.html



(完)