使用云端的GPU进行yolov5的训练


前言

        本文介绍了使用云端GPU进行yolov5训练环境配置的过程


一、创建实例

        这里使用的是恒源云的GPU服务器,官方网址为恒源云_GPUSHARE-恒源智享云

        他的用户文档为Tmux - 恒源云用户文档

        一般的问题在用户文档中都可以找到解决办法。

        注册并登录后的界面如下图所示。使用云端的GPU进行yolov5的训练_第1张图片

         点击云市场,选择合适的机型,我这里选择的是TITAN X,务必注意的一点是一定要选择英伟达的显卡和英特尔的cpu,不然会出问题。

后面经过测试发现即使是英伟达的显卡和AMD的cpu,代码也是能跑的。

使用云端的GPU进行yolov5的训练_第2张图片

         点击立即租后出现以下界面,完成镜像配置后点击创建实例。

使用云端的GPU进行yolov5的训练_第3张图片

        使用我上传的这个镜像即可,这个镜像已经配置好了yolov5训练所需的环境,也适用于30系显卡,可直接用于模型训练。

         等待实例创建成功使用云端的GPU进行yolov5的训练_第4张图片

         点击JupyterLab使用云端的GPU进行yolov5的训练_第5张图片

         点击:使用云端的GPU进行yolov5的训练_第6张图片

         我已经将yolov5的训练环境配置好了,将数据集上传,然后将代码同步到云端即可进行训练,无需创建虚拟环境。

二、导入数据集到实例

        导入数据集的方法见数据上传 - 恒源云用户文档,数据集建议使用oss进行上传,其他两种方法不适合传输大文件。见OSS - 恒源云用户文档。

          使用云端的GPU进行yolov5的训练_第7张图片

         这里展示用windows上传数据的过程。使用云端的GPU进行yolov5的训练_第8张图片

        下载完成后的文件可以直接打开。

使用云端的GPU进行yolov5的训练_第9张图片

         打开之后是这样。

使用云端的GPU进行yolov5的训练_第10张图片

         在这里需要登录一下,命令为 login,账号为注册恒源云的手机号,密码为登录恒源云的密码。

使用云端的GPU进行yolov5的训练_第11张图片

 登录成功后,输入 mkdir oss://datasets ,创建一个个人数据的文件夹。

使用云端的GPU进行yolov5的训练_第12张图片

         上传的数据必须是压缩包形式,把需要上传的数据集移到刚才下载的oss这个exe文件的文件夹下。

使用云端的GPU进行yolov5的训练_第13张图片

         输入命令cp 你数据集的名字.zip oss://datasets/ 即可进行上传,上传的文件在datasets下,文件越大,传输的时间越长。

使用云端的GPU进行yolov5的训练_第14张图片

        如果界面这样,那么说明上传成功了。

使用云端的GPU进行yolov5的训练_第15张图片

         现在我们已经将数据上传到个人数据集了,现在需要将上传到个人数据集的数据下载到我们创建的实例中去,首先开启实例并点击JupyterLab。

使用云端的GPU进行yolov5的训练_第16张图片

         点击:使用云端的GPU进行yolov5的训练_第17张图片

使用云端的GPU进行yolov5的训练_第18张图片

        下载数据的命令为 oss cp oss://datasets/你数据集的名字.zip /hy-tmp/。

        下载完毕后输入命令 cd /hy-tmp 进入存储数据的文件夹。

        输入ls 查看是否下载成功。

使用云端的GPU进行yolov5的训练_第19张图片

         下载成功后,输入命令 unzip 你数据集的名字.zip,即可解压文件,到这里,我们已经将数据集成功下载到实例中了。

三、连接云端与本机的代码

        这部分可以实现的功能是,将云端与本地的项目形成一个映射,本地中对项目做的改动会更新云端的项目文件,这里官方用户文档介绍的比较详细,我就不做说明了。

        见PyCharm - 恒源云用户文档。

        完成上述各步骤后,就可以在云端训练自己的yolov5模型了,注意训练的batchsize大小一定要和gpu的显存相适应,不然服务器会崩溃。比如说yolov5s的模型,在12g显存下 batchsize设置为16比较合适。


你可能感兴趣的:(python,深度学习,机器学习,pytorch)