Yolov5工程记录
常用语句
训练路径下数据集
python train.py --batch-size 2 --epochs 200 --data TrainData/Wood/data.yaml --weights weight/yolov5n6.pt
运行训练数据
python .\detect.py --source D:\Data\train\valid\images --weights runs/train/exp2/weights/best.pt --conf-thres 0.02 --iou-thres 0.5
工程功能结构
train.py 框架训练文件
detect.py 框架运行文件
runs 执行运行生成结果
detect 运行结果保存
train 训练结果保存
weight 初始化权重文件(自行下载)
训练参数解析
参数名 | 参数含义 | 必填 |
---|---|---|
weights | 初始化权重文件 | 否 |
cfg | 选用神经网络 | 否 |
data | 待训练数据路径 | 是 |
hyp | 训练网络的一些超参数设置 | 否 |
epochs | 训练轮次 | 是 |
batch-size | 并行训练数量 | 是 |
imgsz | 图片大小 | 否 |
rect | 是否采用矩形训练 | 否 |
resume | 指定你之前训练的网络模型,想继续训练这个模型 | 否 |
noval | 只保留最终网络模型 | 否 |
noautoanchor | 是否采用锚点 | 否 |
noplots | 不保存绘图文件 | 否 |
evolve | 是否寻找最优参数 | 否 |
bucket | 否 | |
cache | 是否缓存图片,加快训练 | 否 |
image-weights | 测试过程中,图像的那些测试地方不太好,对这些不太好的地方加权重 | 否 |
device | 训练设备选择 | 否 |
multi-scale | 图片尺度变换 | |
single-cls | 训练数据集是单类别还是多类别 | 否 |
optimizer | 否 | |
sync-bn | 分布式训练 | 否 |
workers | 多线程训练 | 否 |
project | 训练结果保存路径 | 否 |
name | 训练结果保存文件名 | 否 |
exist-ok | 覆盖上一次训练结果 | 否 |
quad | 在dataloader时采用什么样的方式读取我们的数据 | 否 |
cos-lr | 余弦LR调度器 | 否 |
label-smoothing | 在dataloader时采用什么样的方式读取我们的数据 | 否 |
patience | early stop被激活(如发现loss相比上一个epoch训练没有下降),则经过patience个epoch后停止训练 | 否 |
freeze | 冻结层,指定层数不进行更新训练 | 否 |
save-period | early stop被激活(如发现loss相比上一个epoch训练没有下降),则经过patience个epoch后停止训练 | 否 |
seed | 否 | |
local_rank | 分布式训练 | 否 |
entity | 否 | |
upload_dataset | 否 | |
bbox_interval | 否 | |
artifact_alias | 否 |