十三、在Atlas 200DK上使用MindSpore训练LeNet网络
手写数字识别LeNet是深度学习最简单入门的神经网络。一般拿它来入门AI框架最合适不过了。我们来试一下,看看如何在200DK上跑LeNet:
1、下载models代码仓
git clone https://gitee.com/mindspore/models.git

2、准备MNIST数据集
cd models/official/cv/lenet
mkdir MNIST
mkdir ckpt
cd MNIST
下载MNIST数据集:
wget http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz
wget http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz
wget http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz
wget http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz

按照README指定的方式解压:
gzip -d *.gz
mkdir train
mkdir test
mv train*ubyte train/
mv t10k* test/

sudo apt install tree

tree 查看目录结构:

3、训练LeNet网络
cd ..
开始训练:
python train.py --data_path=./MNIST/ --device_target="Ascend" --ckpt_path=./ckpt

报语法错误。
检查一下:

原来200DK的python缺省是Python2版本,print语句不支持 flush=True这种语法。
那就换成python3试一下:

没装yaml,那就装一下pyyaml
python3 -m pip install pyyaml -i https://pypi.tuna.tsinghua.edu.cn/simple

这里一开始没有使用 --user,所以报权限错误,后来增加--user参数安装成功。
重新训练:
python3 train.py --data_path=./MNIST/ --device_target="Ascend" --ckpt_path=./ckpt

报错如下:
[CRITICAL] CORE(2461,fffeffff81a0,python3):2022-04-17-02:17

本文档详细记录了在Ubuntu 18.04 X86环境下使用MindSpore训练LeNet网络,并在Atlas200DK上进行模型推理的过程。遇到的挑战包括Python版本问题、依赖库安装、模型转换、推理代码编译等,最终成功在200DK上实现了离线推理。
最低0.47元/天 解锁文章
981

被折叠的 条评论
为什么被折叠?



