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

Dice Loss,balanced cross entropy,Focal Loss

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

Dice Loss,balanced cross entropy,Focal Loss

Dice Loss

Dice系数是一种集合相似度度量函数,取值范围在[0,1]: s = 2 ∣ X ∩ Y ∣ ∣ X ∣ + ∣ Y ∣ s=frac{2|Xcap Y|}{|X|+|Y|} s=∣X∣+∣Y∣2∣X∩Y∣​其中, ∣ X ∩ Y ∣ |Xcap Y| ∣X∩Y∣是 X X X和 Y Y Y之间的交集元素个数, ∣ X ∣ , ∣ Y ∣ |X|,|Y| ∣X∣,∣Y∣分别是 X X X和 Y Y Y的元素个数。

Dice Loss为: L d i c e = 1 − 2 ∣ X ∩ Y ∣ + 1 ∣ X ∣ + ∣ Y ∣ + 1 L_{dice}=1-frac{2|Xcap Y|+1}{|X|+|Y|+1} Ldice​=1−∣X∣+∣Y∣+12∣X∩Y∣+1​Dice Loss常用于语义分割,我们将 ∣ X ∩ Y ∣ |Xcap Y| ∣X∩Y∣近似为预测tensor与GT tensor的element-wise乘积,再将乘积后的矩阵求和(令 X X X是pred, Y Y Y是GT):

逐个元素求和:

对于 ∣ X ∣ |X| ∣X∣和 ∣ Y ∣ |Y| ∣Y∣的计算,直接对pred和GT tensor求和得到。


dice loss 比较适用于样本极度不均的情况,一般的情况下,使用 dice loss 会对反向传播造成不利的影响,容易使训练变得不稳定。因为CE的梯度形式是加法,而Dice Loss的梯度形式是乘法,这导致梯度会很小或者很大,训练过程难以收敛。


balanced cross entropy

基于样本非平衡造成的损失函数倾斜,一个直观的做法就是在损失函数中添加权重因子,提高少数类别在损失函数中的权重,平衡损失函数的分布。权重的大小根据正负样本的比例进行设置。

比如对于二分类问题,BCE为: L = − y l o g ( p ^ ) − ( 1 − y ) l o g ( 1 − p ^ ) L=-ylog(widehat{p})-(1-y)log(1-widehat{p}) L=−ylog(p ​)−(1−y)log(1−p ​)其中, p ^ widehat{p} p ​为预测是正样本的概率, y y y为label(0负样本或1正样本)

当考虑正负样本比例后,BCE为: L = − α l o g ( p ^ ) − ( 1 − α ) l o g ( 1 − p ^ ) L=-alpha log(widehat{p})-(1-alpha)log(1-widehat{p}) L=−αlog(p ​)−(1−α)log(1−p ​)其中, α 1 − α = n m frac{alpha}{1-alpha}=frac{n}{m} 1−αα​=mn​, m m m为正样本数, n n n为负样本数。

Focal Loss

本质上,focal loss是针对样本难分类问题而设计的,focal loss的具体形式为:

将二分类拓展到多分类任务,我们令 p t p_{t} pt​为样本真实类别上对应的预测概率,由于目前只有两类,并且前面规定类别1对应概率 p ^ widehat{p} p ​,所以我们写成:

则focal loss表示为: L f l = − ( 1 − p t ) γ l o g ( p t ) L_{fl}=-(1-p_{t})^{gamma}log(p_{t}) Lfl​=−(1−pt​)γlog(pt​)同理可将CE表示为: L c e = − l o g ( p t ) L_{ce}=-log(p_{t}) Lce​=−log(pt​)在focal loss中, γ > 0 gamma>0 γ>0为可调节因子,对于分类准确的样本, p t p_{t} pt​接近1,则 ( 1 − p t ) γ (1-p_{t})^{gamma} (1−pt​)γ接近0,对于分类不准确的样本, p t p_{t} pt​接近0,则 ( 1 − p t ) γ (1-p_{t})^{gamma} (1−pt​)γ接近1。

即相比交叉熵损失,focal loss对于分类不准确的样本,损失没有改变,对于分类准确的样本,损失会变小。 整体而言,相当于增加了分类不准确样本在损失函数中的权重。换言之,focal loss有助于提高难分类样本的分类性能。

样本不平衡问题是样本难分类问题的一个体现,balanced cross entropy是一种hard的方式,而Focal loss是随训练过程动态决定样本分类难易程度的方式。

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

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

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