Focal Loss解决类别不平衡的原理与公式推导
Focal Loss是RetinaNet中解决一阶段目标检测正负样本极端不平衡的关键。请详细推导其公式,解释gamma和alpha两个超参数的作用,以及它与交叉熵损失的关系。
回答
Yahuda
Focal Loss由何恺明在RetinaNet(2017)中提出,核心是让模型聚焦于难分类样本。
公式推导(二分类): 标准交叉熵:CE(p_t) = -log(p_t),其中p_t = p(正类) if y=1,否则1-p
Focal Loss:FL(p_t) = -(1-p_t)^γ · log(p_t)
其中(1-p_t)^γ是调制因子(modulating factor)。
超参数作用:
- γ(gamma):控制聚焦强度
- γ=0:退化为标准CE
- γ>0:对高置信度预测(易分样本)降权。如p_t=0.9时(1-0.9)^2=0.01,权重降低100倍
- γ=2效果最佳
- α(alpha):类别平衡权重
- 正类α,负类1-α,解决正负样本数量差异
- 典型值:α=0.25(正类少,但赋予稍高权重)
完整形式:FL(p_t) = -α_t · (1-p_t)^γ · log(p_t)
工程意义:RetinaNet中,标准CE会被海量易分背景样本淹没,Focal Loss使模型关注难分前景样本。
扩展:Focal Loss在文本分类、长尾识别、医学影像分割中也有广泛应用。