远程服务器配置深度学习环境

        随着AI技术越来越火,一个机械结构的也开始卷入深度学习机器视觉。由于对YOLO(You Only Look Once)比较感兴趣,参考了B站Bubbliiiing(ID:Bubbliiiing,Bubbliiiing-CSDN博客)教程搭建Yolov3基于VOC2007+12数据集的深度学习模型。由于本子太慢了,借助远程服务器进行训练。

一、远程服务器平台选择及连接

        白嫖的colab、kaggle网页用起来不带劲,还是比较习惯pycharm这种能够大模型、大数据交互的应用,浴室开始查找对打工人比较友好的平台。本着性价比、便捷的原则,最终选择了Autodl平台,价格稍微亲民。

        云服务器的租用页面能够选择镜像,包括基础镜像、社区镜像和我的镜像三部分。如果其中正好有你需要的那就太棒了。

SSH(Secure Shell)网络协议

        SSH是一种加密的网络协议,用于通过网络连接到远程计算机并执行命令,提供了加密的通道,用于在客户端和服务器之间传输数据,以防止第三方拦截和窃听,允许用户在远程计算机上执行命令,访问文件和目录,并进行其他系统管理任务。

        通过SSH的定义可以知道这是一种加密通信协议,相对来说是比较安全的。通过SSH,用户可以在终端上执行命令,并通过加密通道传输数据。只需在本地终端上输入SSH命令加上要连接的服务器的IP地址和登录用户名,即可远程登录服务器。例如:

ssh username@server_ip

连接远程服务器

        这里笔者使用的是Pycharm,需要注意的是只有专业版才能支持远程开发功能。开机后,复制自己的实例指令:

ssh -p XXXX root@region-1.autodl.com。

        其中的xxxx为你的端口号P。

        在Pycharm中[File] -> [Settings],打开以下设置弹窗,搜索interpreter找到[Python interpreter]设置项。

点击Add Interpreter,选择On SSH并点击 (PyCharm社区版本无该选项)

        

        将实例SSH指令中的Host、Port与Username进行匹配和填写(Username均为root,Host和Port查看自己实例的SSH指令)

        下一步:输入SSH的密码。

        继续下一步,直到看到下面的弹窗。选择System Interpreter,配置远程Python解释器地址为/root/miniconda3/bin/python(如果您安装了其他Python或虚拟环境则根据实际情况填写)。

        配置同步目录,意思是本地项目和远程实例中的哪个目录进行关联,这里设置为实例的数据盘子目录:/root/autodl-tmp/project/ (不建议使用默认的/tmp目录)。

点击创建,如果配置均无误PyCharm会有小会配置过程,完成后即可远程开发。

如果您在运行时找不到Python文件,可能是没有自动同步代码,那么可以选择手动同步:

配置好PyCharm远程开发后,可以在PyCharm的终端中下拉找到远程服务器打开远程终端:

或者在工具tool中选择start SSH session即可打开服务器的终端,输入指令激活你的环境。

二、远程服务器上配置深度学习环境

深度学习框架

所需依赖库

        参考神仙博主Bubbliiiing关于yolov3基于pytorch训练及预测的框架,环境配置如下:

序号

版本

1

Torch

1.2.0

2

torchvision

0.4.0

3

tensorboard

2.10.1

4

scipy

1.2.1

5

numpy

1.17.0

6

matplotlib

3.1.2

7

opencv_python

4.1.2.30

8

tqdm

4.60.0

9

Pillow

8.2.0

10

h5py

2.10.0

        Autodl平台镜像系统版本为Ubuntu,并且有一定的内置框架及版本镜像,如果里面能找到所所需要的版本环境,那么恭喜你。

conda环境搭建

        服务器安装了miniconda,上述Pycharm的服务器使用conda指令创建环境。

conda create -n yourEnv(你的环境名字) python=3.6(版本号可变自己选)

这里笔者生成了环境为“divid”的conda运行环境。,如果要查看已经安装的环境:

conda env list

在远程服务器终端激活“divid”conda环境。

conda activate david

        前面(david)便是更改了conda运行的编译环境。

依赖库安装

        然后参考神仙博主Bubbliiiing老师教程深度学习环境配置2——windows下的torch=1.2.0环境配置_torch1.2.0-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_44791964/article/details/106037141?ops_request_misc=%7B%22request%5Fid%22%3A%22170763671316777224462570%22%2C%22scm%22%3A%2220140713.130102334..%22%7D&request_id=170763671316777224462570&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-106037141-null-null.142^v99^pc_search_result_base3&utm_term=%E7%8E%AF%E5%A2%83&spm=1018.2226.3001.4187配置torch环境。文中提供了两种方式:

  1. 官方安装方法(比较慢)
pip install torch===1.2.0 torchvision===0.4.0 -f https://download.pytorch.org/whl/torch_stable.html

        Bubbliiiing推荐的是这种方法,但真的好慢,网络不稳定的话一下子就挂了,而且还提醒在官网找不到torch===1.2.0版本(果断放弃)。

        2.先下载whl后安装

        在网上搜索pytorch的安装文件,其中的轮子whl是适合于windows系统的安装文件,根据自己的笔记本系统选择相应的版本。比如我需要的如下:

        下载完成后的安装文件上传至远程服务器,这里可以用Pycharm的自动更新(小文件方便),大文件就采用AutoPanel的公共网盘,是真的快!后悔发现的晚了。这个具体有机会再西详细说。

        在远程服务器终端,打开whl文件所在的文件夹:

cd /root/autodl-tmp

采用ls显示该文件夹下的文件

ls

采用安装命令pip,而不能采用conda安装文件。

pip install torch-1.2.0-cp36-cp36m-win_amd64.whl

在ssh terminal输入来查看cuda型号:

nvidia-smi

        进入CUDA官网按照cuda版本和操作系统来选择下面选项,最后给出的是安装的指令。将安装指令复制到你的ssh terminal,回车即可开始安装。

装好之后在终端输入

conda list

        检查是否安装好了所需要版本的pytorch、torchvision和tensorboard,其他依赖库安装为了方便,在本地创建一个requirements.txt文件如下。

        在远程服务器终端使用pip指令安装,路径和根据你的实际路径进行修改。

pip install -r /root/requirements.txt

同样再创建的环境下,使用conda list检查依赖库是否安装完成。

代码及训练集上传

        代码的上传可以直接使用Pycharm的deployment-upload,而对于大文件上传下载使用公共网盘(强烈推荐)。

        阿里云网盘比较方便,现在百度云盘不针对个人用户授权,会有些麻烦,阿里云盘普通用户单个上传文件大小上限为100GB,限制也少一些。

        上传在网盘的压缩包可以下载至远程服务器的/root/autodl-tmp中,打开:

Cd /root/tmp
ls
tar -xzvf VOC07+12+test.zip -C /root/autodl

        自动生成数据集:

三、结束语

        上述到这,笔者所需要的基于远程服务器优越性能的pytorch的深度学习框架以及数据集都完美解决了,可以愉快的运行代码当个炼丹门徒了。只要想学习进步,方法总比困难多,感谢各位大佬的无私分享。聊以记之,方便日后查阅。

        

  • 22
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值