Focal Loss 是为了解决目标检测等任务中常见的类别不平衡而提出的改进型损失函数。传统的交叉熵在样本分布高度倾斜时,会被大量易分类的负例主导,导致模型对少数正例的学习信号几乎被淹没。Focal Loss 通过对易预测样本的损失进行衰减,使训练过程更关注难分类的样本,从而提升对稀有类别的辨识能力。

在二分类的标准交叉熵中,若记模型对真实类别的预测概率为 (p_t),则损失为 (-log(p_t))。Focal Loss 在此基础上引入两个调节因子: [ text{FL}(p_t)= -alpha,(1-p_t)^{gamma},log(p_t) ] 其中 ((1-p_t)^{gamma}) 是调制系数,(gammage 0) 控制对易预测样本的衰减程度;(alphain[0,1]) 是类别平衡系数,用于对不同类别的损失进行加权。
当预测概率 (p_t) 接近 1(即样本易分类)时,((1-p_t)^{gamma}) 会趋近于 0,导致对应的损失几乎被抹去;相反,难分类的样本((p_t) 较小)会保留较大的梯度,从而在梯度更新中获得更高的权重。通过增大 (gamma) 可以加强这种“聚焦”效果,常见的经验值为 (gamma=2)。若数据中正负样本比例悬殊,(alpha) 通常取为少数类的逆频率,以进一步平衡各类的贡献。
该损失最早在 RetinaNet 论文中被系统化验证,实验表明在 COCO 等大规模检测基准上,使用 Focal Loss 的模型能够在保持整体精度的同时显著提升对稀有目标的召回率。实际使用时,只需在原有的分类分支上将交叉熵替换为上述公式,无需改动网络结构,便可直接获得对类别不平衡的鲁棒性。
参与讨论
暂无评论,快来发表你的观点吧!