YOLOv5、YOLOv8的损失函数、正负样本匹配策略和anchor_free/anchor_base的差异对比
本文主要针对YOLO算法中具有里程碑意义的YOLOv5和YOLOv8算法的细节进行对比分析。
一、损失函数
1、YOLOv5:
1.1 YOLOv5的损失主要由三个部分组成:
1)Classes loss,分类损失,采用的是BCE loss,注意只计算正样本的分类损失。
2)Objectness loss,obj损失,采用的依然是BCE loss,注意这里的obj指的是网络预测的目标边界框与GT Box的CIoU。这里计算的是所有样本的obj损失。
3)Location loss,定位损失,采用的是CIoU loss,注意只计算正样本的定位损失。
其中,λ1 , λ2 , λ3 为平衡系数。
1.2 平衡不同尺度的损失
这里是指针对三个预测特征层(P3, P4, P5)上的obj损失采用不同的权重。在