ATUO DL实现入门级项目实战——MNIST手写数字识别
1.打开pycharm,点击新建项目。
2. 而后选择自定义解释器,环境选择现有,类型为conda,下拉环境选项框选择刚刚创建的环境(mllearn),而后点击创建。
3.进入项目,后台会更新python解释器以及索引(这里要等待一会)。
https://pan.baidu.com/s/1k3gh4VWgG7Doe-0ogws41Q?pwd=hxwv 提取码: hxwv
下载项目后,解压到pycharm创建项目所在路径。
点击项目名称,右键选择打开于路径,即可看到项目所在路径。
解压之后即可看到左栏多了一个名为mnist.py的文件。
点击开始运行会自动从torchvision库下载MNIST数据集,左栏会多一个data文件目录。
而后等待epoch训练完即可。
当项目部署在服务器上时,电脑就可以“解放”出来,用于处理其他事务,CPU也不用承担那么大的负担。小编本人使用的是MacBook,但受限于没有GPU,因此更倾向于在服务器上跑代码。
小编选用的是AUTO—DL。
https://www.autodl.com/home
,输入手机号即可注册成功。
注册成功后,点击登录,若是学生,依次点击控制台->点击下方截图中的按钮通过教育邮件进行认证。
认证成功后,会出现下图所示。
而后依次点击控制台->容器实例->租用新实例,会出现下图。
根据自己需要的配置选择合适的进行租用。
1.新手适合选择按量计费,比较节约。
2.地区通常选择带有上角标的地区。
3.选择主机时,要选择空闲主机较多的,否则容易被挤下线或无法租借。
选择合适的基础镜像,此处可以跟我保持一致。
点击立即创建,下图为创建成功后的画面。
平时不用一定要点击关机,否则会持续按小时计费。
在无卡开机的情况下,点击JupterLab。
点击终端,进入Linux终端。
输入:vim ~/.bashrc
出现以下页面,划到最下方。
开始进行编辑:键盘输入i,最后一行出现—INSERT—
光标移动到文件的最后一行,加上source /root/miniconda3/etc/profile.d/conda.sh
保存并退出:按Esc键,输入:wq,再回车
输入bash重启终端(刷新一下)
此步与在本地设置创建新环境类似
1.激活conda base环境
conda activate base
conda create
mllearn_new
conda activate mllearn_new
pytorch torchaudio torchvision
matplotlib
conda-forge torchinfo
此过程有点慢,需耐心等待亲测。直接选择有卡开机(即正常开机)下载速度更快
5.jupyter页面更新
ipython kernel
mllearn_new
刷新一下页面,jupyter页面里会增加一个刚刚创建的环境mllearn_new。
验证环境是否配置成功
点击mllearn,在第一行输入框内输入以下代码
torchvision
torchvision.__version__
torch.cuda.is_available
若出现以下则表示成功。
4.pycharm连接AutoDl
必须是pycahrm专业版!!,否则无法连接
4.1打开pycharm,依次点击
设置->项目:mllearn->添加解释器->SSH。
4.2建立ssh连接
ssh -p 33099 root@connect.cqa1.seetacloud.com
connect.cqa1.seetacloud.com
MGEWGXsnr5MH
ps:表格内的登指令和密码从AutoDl实例页面得到,从中得到主机,端口号和用户名。
4.4输入所有信息后,点击下一步,点击确定后输入密码。
4.5内省服务器成功后,点击下一步。
4.6出现服务器该项目的存储路径,此处要选择conda环境,选择自动上传,即可实现本地与服务器同步。
回到Auto-Dl,找到创建的mllearn环境路径。
点击Conda环境->使用现有环境->选择mllearn。
依次点击工具->部署->浏览远程主机。
上一步的同步文件夹即可找到该项目
双击打开显示该文件与远程文件相同,每次在本地修改该文件,服务器端的文件会自动更新。
依次点击终端->下拉箭头选择当前服务器。
直接点击pycharm的运行即可。
也可以选择在网页的jupterlab运行。
pycharm_project_582
python mnist.py
shutdown的作用是在代码运行结束后,云主机会自动关机,以防止再产生不必要消费。
恭喜你完成了这个深度学习入门项目!通过本文,你已经成功搭建了本地和服务器上的深度学习环境,并运行了MNIST手写数字识别项目。
小编第一次写blog,还有不足敬请见谅,欢迎在评论区留言补充。
