【yolov5训练前准备】建立yaml文件,更改部分参数
建好数据集之后训练前准备
文章共875字 · 阅读需要大约3分钟
一键AI生成摘要,助你高效阅读
问答
·
目录
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
更多推荐
已为社区贡献2条内容
所有评论(0)