编程如画,我是panda!
之前已经教过大家如何在自己的电脑中配置Pytorch深度学习环境,但是有些小伙伴没有英伟达的GPU,所以用CPU的话训练模型会比较慢,所以这次出一期使用GPU云服务器的教程。
码字不易,如果对各位有帮助,希望点赞收藏加关注哦~
前言
因为之前我的电脑是没有英伟达的独立显卡的,所以平常跑深度学习的模型使用CPU的话会比较慢,要跑很久很久,所以之前一直在找GPU的云服务器,也走了不少弯路,这次出一期教程介绍一下服务器的使用方法,来让小伙伴们避免踩坑。
一、服务器使用步骤
1.注册账号
网上有很多家GPU服务器平台,我使用的是恒源云,他家的我个人感觉还不错,也可以使用AutoDL算力云的,具体步骤是差不多的。
恒源云官网:恒源云_GPUSHARE-恒源智享云
算力云官网:AutoDL算力云 | 弹性、好用、省钱。租GPU就上AutoDL
进入恒源云官网,点击免费注册,注册完账号后登录(新人有优惠券和福利):
也可以使用我的邀请链接,可以额外多获得十元代金券:
https://gpushare.com/auth/register?user=15*****9985&fromId=67760011ab17&source=link
2.租借服务器
打开云市场:
挑选适合的服务器,然后租用:(系统盘20G,数据盘大多都是50G,如果不够可以申请扩容)
然后选择你需要的深度学习的框架和版本,然后创建:
等待创建完成:
创建完成后可以点击Jupyter Lab:
启动后创建终端:
然后你就可以查看你当前机器的环境:
后续就和python的Jupyter的使用一样了 ,建议有Jupyter基础来使用服务器。
二、在服务器运行YOLOV5项目
1.下载YOLOV5项目
YOLOV5项目官网:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
这里提供两种方法
1.1. 方法一:直接进官网下载,然后上传到服务器
进入官网,点击Code然后下载源码:
这样做是直接把代码下载到本地,后续需要上传到服务器,如何上传我后面会讲解。
1.2.通过git命令
进入官网,点击Code,然后复制命令:
然后回到服务器终端,输入git+clone+你刚才复制的指令
cd hy-tmp
git clone https://github.com/ultralytics/yolov5.git
这里要先cd到hy-tmp文件夹中,因为这个文件夹才是你的数据盘,有50G
然后等待克隆完成:
注:如果git失败或者git显示超时等错误,请先更新一下git:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git
如果失败的话,就使用国内镜像源:https://gitee.com/monkeycc/yolov5?_from=gitee_search
同样执行git clone命令就可以了
如果还不行的话!!!就用方法一,然后用我后面讲的方法上传到服务器。
2.训练YOLOV5
首先cd到yolov5的文件夹:
执行下列命令下载YOLOV5所需要的依赖:
pip install -r requirements.txt
然后执行下列命令:
python train.py --data coco128.yaml --weights yolov5s.pt --img 640
如果你的运气好的话,会成功运行,然后训练出官方提供的训练数据集,如果你运气不好,可能看到这样的结果:
这时候就需要我说的下一步了。。。。先下载到本地然后上传到服务器。
三、本地与服务器进行数据交换
1.官方提供工具
1.1.下载工具
恒源云官方提供了上传数据的工具:数据下载 - 恒源云用户文档 (gpushare.com)
选择你的操作系统然后下载:
这里建议把下载好的工具单独放在一个文件夹(Edge会警告你让你删了,保留就行),然后重命名为oss.exe:
1.2.上传数据
按住Win+r输入cmd,打开Windows的命令行,进入到你的oss所在路径,执行命令:(一定要重命名oss)
.\oss login
然后登录进你的恒源云的账号密码:
上传数据命令格式为:(官方提供的下载工具的上传的数据格式只能是压缩包)
.\oss cp 你要上传的数据的路径 oss://
1.3. 从服务器获取数据
回到你的服务器终端,输入oss login进行登录,登录后执行以下命令:
命令最后有个点别忘了
oss cp oss://你的压缩包.zip .
这样就能从服务器收到数据了
2.xftp工具
2.1.下载Xftp工具
下载地址:https://www.xshell.com/zh/free-for-home-school/
双击下好的工具:
点击下一步:
这里默认:
2.2.上传数据
运行xftp,然后会弹出这个窗口:
如果没有就找这里:
点击新建:
名字随便起,然后回到服务器控制台界面,复制登录指令:
然后点击连接:(这里选接受并保存,不然连接不上)
然后你就将你的电脑和服务器建立起了联系:
直接将你想传输的文件拖过去就行了:
进入你的服务器,你就能看到你上传的数据:
四、使用VSCode或Pycharm进行服务器连接
打开VSCode,找到插件,然后搜索ssh,下载:
找到左侧的远程资源管理器:
新建远程:
复制登录指令:
然后输入登录指令按回车:
选择第一个
选择连接:
选择Linux:
然后继续:
然后输入你的服务器密码,
如果连接提示“试图写入的管道不存在”,可能是 Windows 自带的 SSH 问题。可以通过安装 Git,然后在 VSCode 首选项 - 设置中搜索
remote.SSH.path
,填写ssh可执行文件的路径,让 VSCode 使用 Git 提供的 SSH 客户端。
安装git请看下一部分。
然后打开文件夹:
然后继续输入密码,然后信任:
右键文件夹空白区域,在集成终端打开:
如果还需要你输入密码继续输入就行了,可能你把复制的密码粘贴进去不显示,这是正常的,直接回车就行,Pycharm配置也一样的。
五、Git安装并且配置VSCode ssh
下载地址:Git - Downloading Package (git-scm.com)
选择下载文件:
下载好以后进行安装,一直默认就行,因为Git的安装选项比较麻烦,所以,可以去网上自行查找教程,我的建议是默认就行。
然后打开VSCode,找到SSH插件,设置:
往下滑找到下图,改成你对应的路径就行:
更改完以后再去执行第四部分就没有这个错误了。
六、从VSCode训练模型
在终端中继续输入这个代码:(先cd进YOLOV5目录)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640
如果运行还报错就去手动下载,因为这是从国外下载,所以服务器可能连接不上,才会报错,如果需要手动下载的文件,可以私信我。
就算你有幸,真的运行出来了,可以看到,下载数据集的速度还是比较慢的:
将下载好的文件用Xftp传到服务器:
然后将coco128数据集转换成yolov5的数据集格式,就可以使用了,转换代码可以去网上搜也可以私信我。
然后运行文件就就能发现可以开始训练了:
运行结果会放在yolov5目录下runs/train目录。
如果不需要用了,在实例管理可以找到关机选项,关机就可以了。
总结
这篇文章对于想要入门深度学习并且没有英伟达的GPU的小伙伴还是很友好的,希望对各位有帮助,如果遇到任何问题,可以私信我。
版权归原作者 爱敲代码的panda 所有, 如有侵权,请联系我们删除。