相机网站建设规划书网站违规关键词
yolov5源码解读--训练策略
- 超参数解读
 - 命令行参数
 - train
 - 模型迭代
 
超参数解读
hyp.scratch.yaml
 

lr0: 0.0032   初始学习率
lrf: 0.12     使用余弦函数动态降低学习率(lr0*lrf)
momentum: 0.843   动量
weight_decay: 0.00036  权重衰减项
warmup_epochs: 2.0   预热(较小的学习率那时候)
warmup_momentum: 0.5  预热动量
warmup_bias_lr: 0.05  预热学习率不同的损失函数开始了
box: 0.0296     
cls: 0.243
cls_pw: 0.631
obj: 0.301
obj_pw: 0.911
iou_t: 0.2
anchor_t: 2.91
# anchors: 3.63
fl_gamma: 0.0
hsv_h: 0.0138
hsv_s: 0.664
hsv_v: 0.464
degrees: 0.373
translate: 0.245
scale: 0.898
shear: 0.602
perspective: 0.0
flipud: 0.00856
fliplr: 0.5
mosaic: 1.0
mixup: 0.243
 


命令行参数

 我这里是训练自己的口罩数据集
 
train

 控制台打印log + 保存训练数据,参数等
训练的超参数保存文件为:hyp.yaml
 
 opt.yaml文件:
 
 标签分布:
 
 tensorboard展示文件
 
 是否使用预训练模型:
 
model = Model(opt.cfg, ch=3, nc=nc).to(device)
 
加载完成了模型
是否冻结层训练
 
和反向传播更新参数有关
 
 更新权重、偏置
 衰减率
 
 图像大小要是32的倍数。。。
 
 滑动平均: EMA
 
模型迭代
创建训练集和测试集:
 
 模型超参数相关:
 
 模型训练:
 其中(pytorch1.6新功能 fp32与fp16混合 提速比较多)
 
 训练:
 
