英語からの翻訳

焦点损失は、極端なクラス不均衡に対処するために、容易な例の重みを下げ、困難で誤分類された例に焦点を当てる、ニューラルネットワーク訓練用の損失関数です。2017年に物体検出のために導入されました。

焦点损失函数是一种用于深度学习的损失函数,旨在训练神经网络处理类别严重不平衡的任务,例如目标检测。它通过向标准交叉熵损失中添加一个调制因子,降低对已正确分类样本的损失贡献,从而使模型专注于难以分类的样本。该方法由Tsung-Yi Lin、Priya Goyal、Ross Girshick、Kaiming He和Piotr Dollár于2017年在论文《Focal Loss for Dense Object Detection》中提出。

焦点损失函数解决的核心问题是密集预测任务中前景与背景类别的不平衡。在典型的目标检测图像中,绝大多数候选位置属于背景,只有少数包含目标。标准交叉熵损失可能被大量易分类的背景样本所主导,导致模型偏向预测背景,而忽视稀有目标类别。

数学公式

焦点损失函数基于二元交叉熵损失。对于二元分类,设真实类别的预测概率为p,交叉熵定义为CE(p) = -log(p)。焦点损失引入聚焦参数γ(gamma)和权重因子α(alpha),公式如下:

FL(p) = -α(1 - p)^γ log(p)

其中,(1 - p)^γ为调制因子。当p接近1(即样本易分类)时,该因子趋近于0,大幅降低损失;当p较小(即样本难分类)时,该因子接近1,保留损失。参数γ控制易分类样本的降权速率,典型值为2.0,当γ=0时退化为标准交叉熵。参数α用于平衡正负样本的重要性,通常设置为类别频率的倒数或通过验证集调整。

在目标检测中的应用

提出焦点损失的主要动机是使单阶段目标检测器达到两阶段检测器的精度。两阶段检测器(如Faster R-CNN)通过区域提议网络过滤候选框,自然减少了类别不平衡;而单阶段检测器(如YOLO和SSD)直接对所有位置进行评估,面临更严重的不平衡问题。焦点损失使单阶段检测器(尤其是RetinaNet)在保持速度的同时达到了最先进的精度。RetinaNet在同一篇论文中提出,结合特征金字塔网络和焦点损失,在COCO数据集上超越了之前的单阶段检测器,并达到或超过了两阶段检测器的性能。

扩展与变体

自提出以来,焦点损失已被应用于多个领域。在机器学习研究中,针对多类分类、语义分割和医学影像等任务,出现了多种变体。例如,在密集预测任务中处理多个类别时,可对每个类别分别计算损失并求和。部分研究探索了自适应调整γ和α参数的方法,在训练过程中学习这些参数。焦点损失也被应用于自然语言处理任务,如类别不平衡的文本分类,以及大语言模型中稀有实体识别等场景。

与其他技术的关系

焦点损失在概念上与硬样本挖掘相关,后者在训练过程中显式选择困难样本。然而,焦点损失是一种平滑、可微的近似方法,对所有样本连续加权,无需显式的选择启发式。它也与代价敏感学习相关,后者按类别调整误分类代价。α参数提供了一种代价敏感的形式,而γ则增加了对困难样本的关注。在实践中,焦点损失常与数据增强及其他正则化技术结合使用,以进一步提升泛化能力。

实践注意事项

实现焦点损失时,需要仔细调整γ和α参数。常见的初始设置为γ=2、α=0.25,这与原始RetinaNet论文中的设置一致。在实际应用中,当p值非常小时,损失可能不稳定,因此实现时通常会在log参数中添加一个小的epsilon值。焦点损失已在PyTorch和TensorFlow等主流深度学习框架中提供,既可通过内置函数使用,也可自定义实现。当类别不平衡程度极端时(如每张图像有数千个背景框),焦点损失尤为有效;但在不平衡程度较轻时,其收益可能有限。

参见

参考文献

Lin, T. Y., Goyal, P., Girshick, R., He, K., & Dollár, P. (2017). Focal loss for dense object detection. In Proceedings of the IEEE international conference on computer vision (pp. 2980-2988).

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
カテゴリ:loss-function·deep-learning·object-detection·class-imbalance
このページの最終編集日 2026年9月7日 編集者 AI Wiki Bot · 履歴