应对长尾分布的目标检测 -- Balanced Group Softmax

应对长尾分布的目标检测 – Balanced Group Softmax

这次给大家介绍一篇CVPR2020的文章,题为“Overcoming Classifier Imbalance for Long-tail Object Detection with Balanced Group Softmax”,主要解决目标检测中的长尾数据分布问题,解决方案也十分简洁。

长尾分布的数据

首先,长尾分布的数据广泛存在,这里以COCO和LVIS两个数据集为例,如下图所示:

long-tail

横坐标是类别的索引,纵坐标是对应类别的样本数量。

可以看到,在这两个数据集当中,存在着明显的长尾分布。

以往应对长尾分布的方法

这里给出一些相关的工作,按类别给出:

  • 基于数据重采样(data re-sampling)
    • 对尾部数据进行过采样:Borderline-smote: a new over-sampling method in im- balanced data sets learning
    • 对头部数据进行删减:class imbalance, and cost sensitivity: why under-sampling beats over sampling
    • 基于类别平衡的采样:Exploring the limits of weakly supervised pretraining.
  • 代价敏感学习(cost- sensitive learning)
    • 通过对loss进行调整,对不同类别给予不同的权重

这些方法通常都对超参数敏感,并且迁移到检测框架的时候表现不佳(分类任务和检测任务的不同)

Balanced Group Softmax

这里直接给出算法的具体框架:

bgs

如上图所示,在训练阶段,我们会对类别进行分组,不同组内部分别计算Softmax,然后计算出各自的交叉熵误差。

对于分组,论文给的是按0,10,100,1000,+inf作为切分点进行切分

这里我们需要为每一个组分别添加一个other类别,使得,当目标类别不在某一个组的时候,groundtruth设置为other。

最终的误差形式为:
L k = − ∑ n = 0 N ∑ i ∈ G n y i n log ⁡ ( p i n ) \mathcal{L}_k=-\sum_{n=0}^{N}\sum_{i\in \mathcal{G}_n}y_i^n\log (p_i^n) Lk=n=0NiGnyinlog(pin)
其中, N N N 是组的数量, G n \mathcal{G}_n Gn 是第 n n n 个组的类别集合, p i n p_i^n pin 是模型输出的概率, y i n y_i^n yin 是标签。

效果评估

这里给出一张全面对比的精度表

comparison

AP的下标对应着划分的组的索引,可以看到,在尾部的精度,也就是 A P 1 AP_1 AP1 A C C 1 ACC_1 ACC1 上都达到了SOTA的性能。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值