Deep Learning -- Six

**前言:**今天由于早晨和下午都有课,所以没有进行太多新的学习任务,主要是复习了昨天看过的Faster R-CNN模型原理以及简单了解了一下RetinaNet的原理。

一.RetinaNet简单介绍

1.focal loss
focal loss是一种新的损失函数,这种损失函数是在标准交叉熵损失基础上修改得到的。这个函数可以通过减少易分类样本的权重,使得模型在训练时更专注于难分类的样本。
focal loss的含义可以看如下Figure1,横坐标是pt,纵坐标是loss。CE(pt)表示标准的交叉熵公式,FL(pt)表示focal loss中用到的改进的交叉熵,可以看出和原来的交叉熵对比多了一个调制系数(modulating factor)。这个调制系数目的是通过减少易分类样本的权重,从而使得模型在训练时更专注于难分类的样本。首先pt的范围是0到1,所以不管γ是多少,这个调制系数都是大于等于0的。易分类的样本再多,你的权重很小,那么对于total loss的共享也就不会太大。那么怎么控制样本权重呢?举个例子,假设一个二分类,样本x1属于类别1的pt=0.9,样本x2属于类别1的pt=0.6,显然前者更可能是类别1,假设γ=1,那么对于pt=0.9,调制系数则为0.1;对于pt=0.6,调制系数则为0.4,这个调制系数就是这个样本对loss的贡献程度,也就是权重,所以难分的样本(pt=0.6)的权重更大。Figure1中γ=0的蓝色曲线就是标准的交叉熵损失。 在这里插入图片描述2.交叉熵损失(以二分类为例)
公式如下: 在这里插入图片描述 其中,p表示概率,范围为0到1,y的值为正1或负1,从公式可以看出,当label=1即y=1的时候,设样本为1的概率为0.6,则损失为-log(0.6)。即当预测值越靠近1时,损失值越小;当预测值越靠近0的时候,损失值则越大。
那为了方便,用pt代替p,则公式变为:
在这里插入图片描述接下来对交叉熵做一些改进,增加一个系数at。当label=1时,at=a;当label=-1时,at=1-a,a的范围也为0到1。即可以通过设定a的值来控制正负样本对loss的权重影响。如下图公式:
在这里插入图片描述如上公式虽然可以控制正负样本对loss值的权重影响,但是没法分出容易分类样本和难分类样本,所以就产生了focal loss,公式如下:
在这里插入图片描述这里的γ称作focusing parameter,γ>=0。
在这里插入图片描述称为调制系数。

二.总结

今天只是简单了解了focal loss,但这也是RetinaNet的核心,明天早上要上人工智能课程,下午将继续进行RetinaNet的深入学习,争取理解清楚每一步实现的原理,晚上将阅读相关的论文。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值