focal loss是什么?能简单介绍一下吗?
1个回答
focal loss是在这篇论文(Focal Loss for Dense Object Detection)中提出的,是对log loss(或者交叉熵)的一种推广。
对于LogLoss,我们比较熟悉
$$\text{LogLoss}=-y\log(p)-(1-y)\log(1-p)$$
而focal loss是对预测值$p$本身加了权重$\gamma$,
$$\text{FocalLoss}=-y(1-p)^\gamma\log(p) - (1-y)p^{\gamma}\log(1-p)$$
当权重$\gamma=0$,focal loss就和log loss等价了。$\gamma$可以取大于0的数,比如0.1,0.5,1,2等等。如下图:
那这个权重有什么作用呢?通过减少易分类样本的权重,从而使得模型在训练时更专注于难分类的样本。所谓“易分样本”就是正样本并且预测出来的概率$p$接近1或者负样本并且预测出来的概率接近0。
此外,focal loss还结合了正负样本的比重(解决正负样本非平衡问题),增加了另一个权重$\alpha$,这个$\alpha$的取值在0到1之间。
$$\text{FocalLoss}=-\alpha y(1-p)^\gamma\log(p) - (1-\alpha)(1-y)p^{\gamma}\log(1-p)$$
比如正样本较少,你想增加正样本的权重,可以设置$\alpha>0.5$
SofaSofa数据科学社区DS面试题库 DS面经
多谢!
-
新同学
2018-12-21 12:28