前言
对于没有GPU训练机的人来讲,使用云服务器训练自己的模型应该最最优选择,只是在训练的时候开个按时计费的服务器,训练完成后保存环境镜像之后,可以完全停掉服务器,期间不产生任何费用,下次再训练时,启动环境就可以,很容易保护好自己的训练环境不受污染。
学习交流可加企鹅群:767133823
一、选择服务器
1.这里选择的是阿里有服务器,直接用支付宝账号登录。
2.选择配置,按量计费,我训练yolov5的模型,2万多的数据集,V100完全够用了。
3.选择系统和安装GPU启动
3.选择网络速度(上行下行的速度),之后确认订单就可以了。
二、配置服务器
1.连接服务器,直接点远程连接。
2.切换到root并安装需要的文件。
su
cd
sudo apt-get install vim #vim
sudo apt-get install unzip #解压
sudo apt-get install zip #压缩
sudo apt-get install screen #保护进程会话
三、配置环境(使用Anaconda3)
1.先把Anaconda3下载到自己本地目录,之后用scp上传到服务器
scp data/Anaconda3-5.3.0-Linux-x86_64.sh root@39.xxx.xx.xxx:/home/data/
等待上传完成之后,在服务器上安装Anaconda3,一路确认到安装完成。
把Anaconda3加到环境变量
sudo vim ~/.bashrc
把bin路径加到文件末尾,之后保存文件退出。
export PATH=$PATH:/root/anaconda3/bin
使用环境生效
source ~/.bashrc
2.创建环境
conda create --name yolov5 python=3.7
conda activate yolov5
3.下载算法代码,可以直接从git上下载源码,也可以把自己改好的源码上传。
从git 上下载源码,yolov5s为例:
git下载
git clone https://github.com/ultralytics/yolov5.git
cd yolov5
pip install -r requirements.txt
本地上传与手动安装依赖
scp data/yolov5.zip root@39.xxx.xx.xxx:/home/data/
等上传完成之后,切到服务器
unzip yolov5.zip
cd yolov5
conda install pytorch torchvision cudatoolkit=10.2 -c pytorch
pip install cython matplotlib tqdm opencv-python tensorboard scipy pillow onnx pyyaml pandas seaborn
四、数据处理
1.上传数据集到服务器
scp data/dataset.zip root@39.xxx.xx.xxx:/home/data/yolov5
2.上传完成之后,把数据分成训练集和测试集,这里面使用的coco数据格式,要转成yolov5的格式。
unzip dataset.zip
python generate_txt.py --img_path data/XXXXX/JPEGImages --xml_path data/XXXXX/Annotations --out_path data/XXXXX
数据转换与生成 generate_txt.py源码
import os
import glob
import argparse
import random
import xml