yolov5的损失函数包括:
classification loss 分类损失
localization loss 定位损失,预测框和真实框之间的误差
confidence loss 置信度损失,框的目标性
总损失函数为三者的和
classification loss + localization loss + confidence loss
也可以在三个损失前乘上不同的权重系数,已达到不同比重的结果。
在yolov5中的置信度损失和分类损失用的是二元交叉熵来做的,而定位损失是用的CIOU Loss来做的
类别预测(Class Prediction)
在传统的多分类任务中,一般使用的是softmax函数,将预测得分转换为综合为1的概率,就有点二极管那种感觉,不是动物,那就是人,再不行就是背景,就会导致有极强的排他性。
而在yolov3/v4/v5当中,在计算分类损失进行训练时,对每个标签使用二元交叉熵,去替换了softmax函数,降低了计算复杂度,以计算输入特定的标签的可能性,可以输出的标签是行人+儿童这种类型,输出的总分可以大于1。
边界框损失(localization loss)
IoU Loss
早先的对于边界框的损失使用的IoU损失去做的,去看真实框和预测框的交并比,来计算损失。但是会出现一个问题,就是当真实框和预测框不重叠时,IoU值将为0,并不会反应两个形状彼此之间的距离,会造成梯度为0并且无法优化。
</