专栏首页Python编程和深度学习BBN:长尾视觉识别模型(CVPR 2020)

BBN:长尾视觉识别模型(CVPR 2020)

今天分享一篇发表在CVPR 2020上的论文:BBN: Bilateral-Branch Network with Cumulative Learning for Long-Tailed Visual Recognition (原文链接:[1])。

1 研究背景

如上图所示,计算机视觉识别任务中经常面临长尾数据分布的挑战,即少数类占有多数样本,多数类只有少数样本。解决这个问题主要有两类方法:重采样(Re-Sampling, RS)和重新分配损失权重 (Re-Weighting, RW)。具体地,重采样可以对少数样本类进行过采样或者对多数样本类进行降采样,还可以通过一些合成方法合成新的样本,其目的是通过采样方法使得类间样本数分布趋于平衡。重新分配权重是根据不同类别的不同样本数决定其损失值的惩罚系数大小,比如对于少数样本类,其损失惩罚应该更大,通常的做法是为交叉熵损失加上各个类别的权重系数,该系数通常定义为类别样本数的倒数。

如上图(Figure 2)所示,这篇文章先将分类学习任务解耦成两部分:表征学习和分类器学习。并且通过对比实验讨论分析了RW和RS分别对于表征学习和分类器学习的影响。如下图(Figure 2)所示,以左边图为例,先看第1列,即固定表征学习部分的参数(采用交叉熵CE训练得到的),从上往下3行分别表示采用RS、RW、CE训练得到的分类器,其中RS得到的模型效果最好,RS和RW有利于分类器的学习。再看第1行,即固定分类器部分的参数(采用RS训练得到的),从左往右分别是采用CE、RW、RS训练的表征学习部分,可以看到CE反而是性能最好的,RW和RS实际上会对表征学习产生一些负面影响。其它行和列分析同上。因此文中认为,表征学习部分应该在数据原有的分布上进行训练,RS和RW这些改进方法只需要加在分类器学习上即可,从而提出了Bilateral-Branch Network (BBN)以提高模型在长尾分布数据上的性能。

2 方法

2.1 整体流程

如上图(Figure 3)所示,文中提出的BBN框架包含了三个主要部分:卷积学习分支(conventional learning branch)、重平衡分支(re-balancing branch)和累计学习策略(cumulative learning)。其中卷积学习分支和重平衡分支共享网络参数(除了最后一个residual block)。假设一对训练样本描述为,其中表示类别的数量。卷积学习分支和重平衡分支分别采用均匀采样和逆采样(具体可见下一节分析),采样的样本分别表示为和,两类样本分别喂入各自的分支产生特征向量和。而后通过累计学习策略综合两个分支的输出。具体地,定义权衡参数,将和分别作为分类器和的输入,而后两个分类器的输出做元素相加,这个过程可以用如下公式表示,

其中为对每个类别的预测,例如对于每一个类别的预测表示为,再通过softmax函数可以得到每一个类别的预测概率,

然后通过交叉熵损失函数计算对于预测概率的损失值。最终的损失函数可以表示为,

2.2 卷积学习分支和重平衡分支
2.2.1 数据采样

上一节提到卷积学习分支和重平衡分支的输入分别采用均匀采样和逆采样。其中均匀采样是指对于每一个样本在每一个epoch中都有等概率被采样一次,这种采样方法能够反映数据的原始分布,因此有利于表征学习。逆采样中将每个类的抽样概率设置为与其样本数量的倒数成正比,类别中样本数越多,采样概率越小,假设第个类别的样本数为,最多的类别样本数为,那么逆采样过程分为以下三步:

  1. 计算第个类别的采样概率
  2. 按照概率选择一个类别
  3. 从该类别中等概率选择一个样本

重复上述过程即可得到一个mini-batch的数据。

2.2.2 权重共享

文中采用ResNets(ResNet-32和ResNet-50)作为骨干网络,卷积学习分支和重平衡分支共享除了最后一个residual block的骨干网络。文中认为两个分支共享权重具有两个优势:

  1. 卷积学习分支学习到的好的表征能够帮助重平衡分支更好的学习
  2. 共享特征能够在推理时大量地减少计算复杂度
2.3 累积学习策略

提出累计学习策略是为了权衡卷积学习分支和重平衡分支对于最后分类损失的贡献程度。其设计目的是先学习通用的特征表达模式,而后逐渐关注尾部数据。上述的过程通过控制2.1节提到的权衡参数实现,该参数定义为,

随着训练的进行越来越小,即一开始更加关注卷积学习分支中的表征学习,而后慢慢将注意力放在重平衡分支的分类器学习上。

2.4 推理过程

在推理过程中,测试样本将同时作为卷积学习分支和重平衡分支的输入,分别产生输出和,并且固定为0.5,以保证两个分支是同等重要的。而后两个输出分别送入相应的分类器和产生两个概率预测,将这两个概率预测逐元素相加得到最终分类器的输出。

3 实验结果

这里我只给出论文中的部分实验结果,具体的实验结果分析以及实验和参数的设置请看原文。

4 参考资料

[1] https://arxiv.org/abs/1912.02413

本文分享自微信公众号 - Python编程和深度学习(Python_Deeplearning),作者:czifan

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-08-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Dilated-Net+BPB+SBE:解决分割边界模糊问题 (CVPR2020)

    今天分享一篇发表在CVPR2020上的关于医学图像处理的论文:Structure Boundary Preserving Segmentation for Me...

    Minerva
  • 医疗图像分割结果的3D可视化

    Dicom文件包含了诸多的元数据信息(比如像素尺寸,每个维度的一像素代表真实世界里的长度),Dicom文件即文件后缀为.dcm的文件。

    Minerva
  • 强化学习(三)算法概述

    前面的文章我们已经介绍过强化学习的强化学习(一)入门介绍和强化学习(二)重要概念,这篇文章介绍强化学习的算法概述。

    Minerva
  • 人工智能自学能力的提高正挑战人类的能力

    Peter Lu
  • 机器学习知识体系

    随着2016年Alpha Go在围棋击败李世石,2017年初卡内基梅隆大学人工智能系统Libratus在长达20天的鏖战中,打败4名世界顶级德州扑克玩家,这标志...

    机器学习AI算法工程
  • 如何看待机器学习中的“稳定性”?

    前言 机器学习的过程往往被人戏称为“炼丹”,这大概要归功于其中难以估量的不确定性。 在道观(实验室)里,我们可以放心的让算法在丹炉(GPU)上无休无止的炼(...

    AI研习社
  • 基于maven+ssm的增删改查之批量删除

    将多选id组合成1-2-3-4的形式传给后端,可以发现我们的请求地址是和单个删除是同一个地址,因此要对删除方法进行改造。

    绝命生
  • 机器学习理解上最新案例:“以貌取物”与“以貌取书”(附下载)

    【新智元导读】 本文介绍 MIT Technology Review 最近报道了关于机器学习的两项研究成果:让机器学会对人产生“第一印象”、能凭借书的封面判断内...

    新智元
  • 【阳光私塾】网络正在拉低社会智商?

    大数据文摘
  • 什么是机器学习?有哪些应用?终于有人讲明白了

    导读:人工智能的快速发展,带动了相关技术的繁荣。近些年,国内外的科技公司对机器学习人才都有大量需求。怎样入行机器学习?本文带你从0开始学起。

    华章科技

扫码关注云+社区

领取腾讯云代金券