正负样例不均匀

问题

1.正负样例不均匀是什么?

2.当识别一副图片时,one stage 会生成大量的anchor(候选框)代码中在哪里体现的?

正负样例不均匀是什么?

在机器学习任务中,我们经常会遇到这种困扰,数据不均衡问题,以总体分类准确率为学习目标的传统分类算法会过多地关注多数类,从而使得少数类样本的分类性能下降.

解决方法:

1.重新采样训练集

可以使用不同的数据集,有两种方法使不平衡的数据集来建立一个平衡的数据集---欠采样和过采样

1.1 欠采样

     欠采样是通过减少丰富类的大小来平衡数据集,当数据量足够时就该采用此方法,通过保存所有稀有类样本呢,并在丰富类别中随机选择与稀有类别样本相等数量的样本

1.2 过采样

     相反,当数据量不足时就应该使用过采样,它尝试通过增加稀有样本的数量来平衡数据集,而不是去除丰富类别的样本的数量,通过使用重复,自举或合成少数类过采样等方法来生成新的稀有样品.

 

作为one stage的网络,正负样例不均匀对于网络精度的潜在影响一直不可忽视,举个简单的例子说明一下,当识别一副图片时,one stage 会生成大量的anchor(候选框)当识别一副图片时,one stage 会生成大量的anchor(候选框),这其中只有少数是正例(物体),大部分的候选框只是框住了背景,在计算损失的时候,网络的loss会被大量的负例(背景)左右,two stage的网络在这方面会做的好一些,因为他们在一开始将anchors做二分类,这等于做了一个初筛,这样一来就降低了正负样本分布不均匀的情况.

retinanet通过改变分类损失计算公式,很大程度上解决了分布不均匀带来的影响,计算公式如下

为什呢?让我们从头说起,二分类误差一般采用交叉熵cross entropy(CE),

CE(p,y)=CE(p_t)=-log(p_t))

一个常用的平衡类别不均的方法是加上一个权重\alpha(范围在0,1])

CE(p_t)=-\alpha log(p_t))

focal loss就是再加上一个权重

(1-p_t)^\gamma

为什么加上一个权重就能发挥如此大的作用,可以举一个例子说明,假设\alpha =0.25, \gamma =2,前景的概率是p=0.9,那么交叉熵是

CE(foregroud)=-log(0.9)=0.1053 \\CE(backgroud)=-log(1-0.1)=0.1053 \\FL(foregroud)=-1*0.25*(1-0.9)^2*log(0.9)=0.00026 \\FL(backgroud)=-1*0.25*(1-0.1)^2*log(1-0.1)=0.00026

损失变成了原来的.....这一段没看懂

网络结构

这么强大的性能,网络结构却十分简单,可以归纳为:resnet(backbone)+FPN+FCN

图像经过resnet主干网络,每经过一个res_block,图像的size都要缩小一半

retinanet选取最后的层构建anchors, 我们可以给它们命名为[C3,C4,C5,P6,P7]

 这个时候FPN登场,通过结合多层的特征信息,网络能够更好的处理小目标,同时融合了深层语义信息和浅层的图片细节(局部特征,目标定位等)信息,网络的准确性得到进一步提升.

C3,C4,C5都经过一个卷积层后得到了p3,p4,p5,然后我们将每个金子塔(p3-7)都接上输出,再将他们都连接起来就得到了最终的结果,每一层的输出如下

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值