自己显卡显存不够用,batch_size调的比较小导致val_loss上升,所以试着去租了云显卡。写一下在跟着教程做的过程中自己遇到的障碍,也算对站内各教程的一点点小补充。
以下是我参考的教程:
1.可以只使用Pycharm专业版,其他软件不是必要的
各教程里写到使用AutoLD的JupyterLab里或XShell的终端控制,我在过程中发现不用这么麻烦,XShell或者别的软件也不是必须下载,只有Pycharm专业版完全够用。
SSH连接好之后,依次如下图点击,你就能得到箭头所指的这一个窗口,这就是租用的显卡的终端cmd窗口。(图中我的模型已经在训练了)。你的各种conda、pip、cd指令直接在这写就行。
2.Pycharm右侧导航栏,修不修改Root path
http://t.csdnimg.cn/QhMso文章中提到修改Root path,我在实际操作中发现这里修改或不修改会使右侧导航栏显示(Tools→Deployment→Browse Remote Host)的目录不同。
这里上节配置路径指本地与远程同步的项目文件夹,为方便找到特地新建的与项目同名的文件夹作为同步的项目文件夹。
如果修改,右侧导航栏会显示项目的映射文件夹,如下图(以我正在使用的yolov5项目为例):
如果不修改,这里显示的就是root目录,在JupyterLab显示的目录更上一级。为了方便写命令行看目录名字,我选择不设置rootpath。
3.上传数据集文件
方法有很多,试过用阿里云盘,速度非常慢,数据集大就传不完整。试过之后还是直接在AutoDL的文件存储这上传压缩包再解压最方便最快速。这里要注意的是初始化文件存储地区要和你的容器地区一致,这里建议不要无卡模式开机,你就直接打开,我跟着教程无卡模式开机一直没有autodl-fs文件夹,就也没办法解压数据集,因为根本定位不到,直到我打开GPU才出现autodl-fs文件夹。解压文件夹也建议直接写绝对地址定位。
cd /root/autodl-fs/
4.安装requirement.txt
前面的坑都避完应该就可以正常的创建虚拟环境一系列操作
// 这是我的指令
conda create -n pytorch python=3.11
conda activate pytorch
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=11.8 -c pytorch -c nvidia
别忘记安装requirement.txt,这里我又小出了点问题。问题和解决方法都如下图所示,要定位到项目目录里,但是直接cd 项目名找不到(我自己觉得可能和第2点我没设置rootpath有关,这样目录级数比较大,直接cd项目名找不到,但是好像我改了rootpath也还是定位不到,总之也算提供了一个思路吧),直接写绝对路径定位,然后就可以正常安装requirement.txt了。
cd autodl-tmp/yolov5-7.0
pip install -r requirements.txt
5.修改数据集路径
运行有报错,Dataset not found,找不到数据集这里我有两个小问题:
第一个是参考http://t.csdnimg.cn/N5vTD,把路径改成绝对路径;
train: /root/autodl-fs/UA-DETRAC-G2/images/train
val: /root/autodl-fs/UA-DETRAC-G2/images/val
但是改完还是报这个错,这是第二个问题,解决方法往下看(6.修改参数后运行发现怎么参数没变),即两边都修改,远端的多一个上传更新的步骤。
6.修改参数后运行发现怎么参数没变
我自己试出来的方法就是在本地项目里改了参数后,比如说这里我修改了epochs和batch-size,
那么就要在右侧点开远端的同一个文件,也把参数修改成一样的,然后上传,刷新。
这样在终端输入以下命令行就可以开始以新参数开始训练啦。
python train.py