栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Focal loss

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Focal loss

一张图像中能够匹配到目标的候选框 正样本 个数一般只有十几个活几十个。而没有匹配到的候选框 负样本 大概有10000 - 100000个。在这10000 - 100000个未匹配的候选框中大部分都是简单易分的负样本 对训练网络起不到什么作用 但由于数量太多淹没掉少量但有助于训练的样本

OHEM 是使用正负样本选取的结果 最后一行是Focal loss的结果 可以看到效果还是不错的。

 

 focal loss 的设计是为了去应对one stage目标检测里面正负样本极度不平衡的情况 前景和背景极度不平衡的情况 。对于二分类而言计算公式如 1 所示。y 1表示正样本。公式里的log ln。将公式 2 带入公式 1 中可简化为 -log pt 。

引入参数α。此时公式如 3 所示。当 为正样本时αt  α 当为负样本时αt 1 - α。

α本质上是超参数 不是正负样本的比例。从图上可以看出当α为0.75时效果最好。

引入新因子。公式如 4 所示。α是平衡正负样本的权重 但是它并不能区分样本是容易区分还是困难区分。因此作者提出了一个新的损失函数 他可以降低简单样本的权重。因此可以聚焦于困哪样本的训练。

右图横坐标为pt。当样本为正时我们希望p越大越好 当样本为负时我们希望p越小越好。因此无论正负样本我们都希望pt越大越好。从图像可以看出当pt处于0.6-1之间时 样本已经处于分类比较好的阶段了。对于这些简单的样本我们没必要在他上面放置很多权重了。因此能够降低易分样本的损失贡献。

Focal loss最终的表达式

 

或者 

 

从图可以看出当α 0.25 γ 2时效果最好 。

 此图的γ 2 α 0.25。

其中 p表示预测的目标概率 y表示真实的标签 1为正样本0为负样本 CE是采用二分类获得的损失 FL 为采用Focal loss得到的损失   rate为CE和FL之间的倍数。

首先看前两行两个都是正样本 而且他们的p都很大 在正样本中属于易分的正样本。求得他们的CE 分别为0.105 0.033。可以看到使用FL会使易分的样本loss占比下降很多。同理第三四行也是一样。最后两行可以看出他们都是相对难区分的样本 FL对其的倍数相较于易分的样本差距很大。从而可以看出FL能够降低易分样本的损失贡献。

Focal loss的缺点 容易受到噪音的干扰。因为你一旦正负样本标注错了 就会一直针对训练你标错的样本。因此使用Focal loss一定要把样本标注正确。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267822.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号