(四)yolov5修改损失函数权重系数|提升小目标检测
损失计算
YOLOv5的损失主要由三个部分组成:
Classes loss,分类损失,采用的是BCE loss,注意只计算正样本的分类损失。
Objectness loss,obj损失,采用的依然是BCE loss,注意这里的obj指的是网络预测的目标边界框与GT Box的CIoU。这里计算的是所有样本的obj损失。
Location loss,定位损失,采用的是CIoU loss,注意只计算正样本的定位损失。
在源码中,针对预测小目标的预测特征层(P3)采用的权重是4.0,针对预测中等目标的预测特征层(P4)采用的权重是1.0,针对预测大目标的预测特征层(P5)采用的权重是0.4,作者说这是针对COCO数据集设置的超参数。
对应在loss.py文件中的class ComputeLoss类找到下面代码,修改相应的数值
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 两个世界的我!
评论