目录

0、简化流程

1、给自己的数据集建立yaml文件

2、修改yolov5s.yaml

3、开始训练


0、简化流程

建立自己数据集的yaml文件→修改yolov5s.yaml文件→开始训练(可修改部分参数)

1、给自己的数据集建立yaml文件

可以参考yolov5中data文件夹下的coco128.yaml文件换成自己的内容:

注意:新建的yaml文件存放在data目录下和coco128.yaml同级,文件名称不要有空格!!

(之前写的face mask.yaml在云端训练报错识别不到mask.yaml)

path: ../datasets/coco128  # 数据集的根路径
train: images/train2017  # 训练集的相对路径
val: images/train2017  # 验证集的相对路径
test:  # test images (optional)

# Classes
nc: 3  # 写自己的类别数
names: ['person', 'bicycle', 'car']  # 对应类别名称

2、修改yolov5s.yaml

yolov5s.yaml在models文件夹下。

# Parameters
nc: 3  # 只修改类别数目,改成自己的类别数
depth_multiple: 0.33  # model depth multiple
width_multiple: 0.50  # layer channel multiple

3、开始训练

查看train.py中的参数部分,有要修改的就改,默认其实可以在命令行更改。

重要参数解释如下:

修改参数:

epoch多训练几轮才可以确保收敛,为防止梯度爆炸,learning rate可以调小。

workers线程数,多线程加载模型更快,使用CPU效率更高,CPU在燃烧。

weights:权重文件路径

cfg:存储模型结构的配置文件

data:存储训练、测试数据的文件

epochs:指的就是训练过程中整个数据集将被迭代(训练)了多少次,显卡不行就调小点。

batch-size:训练完多少张图片才进行权重更新,显卡不行就调小点。

img-size:输入图片宽高,显卡不行就调小点。

device:cuda device, i.e. 0 or 0,1,2,3 or cpu。选择使用GPU还是CPU

workers:线程数。默认是8。

python train.py --data data/face-mask.yaml --cfg models/yolov5s.yaml --batch-size 10 --epochs 100

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐