Paper2019CVPR《 Looking for the Devil in the Details: Trilinear Attention Sampling Network (TASN)》解读

Paper 2019CVPR《 Looking for the Devil in the Details: Learning Trilinear Attention Sampling Network for Fine-grained Image Recognition》解读

论文简介

这篇论文的链接为Looking for the Devil in the Details, 为贺郑亮继RA-CNN, MA-CNN之后在2019年的又一新作,发布于2019CVPR。因为我现在的研究方向涉及到细粒度的识别,所以最近关注到了这篇文章。那么抱着记录学习且分享知识的态度,在此对这篇paper做些解读,如有错误,还请大佬多多指教。
git-hub 源码地址:https://github.com/Heliang-Zheng/TASN

Abstract

现在的大多数基于注意力的细粒度识别方法,主要是依靠定位和放大关键parts,但是受限于parts的数量以及巨大的计算成本。在这篇文章里所用了三线注意力采样网络(TASN)以teacher-student的方式从数百个parts proposals中学习细粒度特征。
主要分为三个大部分:

  1. 三线注意力模块 Trilinear Attention module:生成Attention maps
  2. 注意力采样 Attention-based sampler: 扩大图片关键部位的分辨率
  3. 特征蒸馏 feature distiller: 将部件级特征逐步蒸馏转移到对象级特征

该算法2019年在Naturalist-2017, CUB-Bird, and Stanford-Cars datasets 中都取得了最好成绩。

个人认为该算法的主要优点在于:

  1. 基于弱监督学习,end-to-end 不再受到Attention parts的数量限制,也不需要太繁重的人工标记过程。
  2. 通过三线注意力的模型,很简单的快速的将特征图转换为注意力图。
  3. 注意力采样和知识蒸馏,可以既保证整体上的特征,又获取了大量的局部细节特征。
  4. 很好的解决了基于人工标记的识别中会遇到的multiple consistent问题,也就是说能容许非常规的姿态(比如说部分part被遮盖的图片)。同时也就能处理非常大量的细节局部。

Method

TASN
如上图所示,基本的结构是:

  1. (a)为输入的图片,经过一系列的卷积层得到feature maps到 (b)。
  2. 利用(b)中的三线注意力模型将feature maps转变为Attention maps。
  3. 注意力采样(c) 通过Attention maps 和原图来得到采样图。 这里生成了两种采样图,分别为结构保留(d)以及细节保留(e) 。值得注意的是结构保留是对Attention maps做了average pooling处理,这样来保留住全局的一个特征。 细节保留 是对Attention maps 做了random select,这样对每个注意力图随机的加入采样,意在保留局部部件的细粒度特征。
  4. 上面蓝色的线被称为master-net,学习全局的特征,下面绿色的线被称为part-net,学习局部的特征。接入参数共享的卷积层和全连层最后通过soft target 交叉熵,将part-net中的部件特征提取到master-net中。

Trilinear Attention 三线注意力

该Trilinear Attention 的思路是启发与作者上一篇MA-CNN中通过feature maps的channels间的空间关系来得到Attention maps的方法。
在实现中,用了resnet-18作为backbone,移除了最后两个下采样来获取相对高分辨率的特征图。为了提高卷积响应的鲁棒性,通过添加两组具有多个扩张速率的扩张卷积层来增加视野。
假设一个feature map的shape为 c × h × w c\times h\times w c×h×w。 c表示channels,h表示height,w表示width。首先我们需要reshape成两个维度的图,也就是 c × w h c \times wh c×wh。写做 X ∈ R c × h w X\in \mathbb{R}^{c \times hw} XRc×hw
那么基础的三线公式为: M b ( X ) : = ( X X T ) X M_{b}(X):=(XX^{T})X Mb(X):=(XXT)X
可以很容易推导出 X X T ∈ R c × c XX^{T}\in \mathbb{R}^{c \times c} XXTRc×c,也就代表着各个channels之间的空间关系。比如 X i X j T X_{i}X_{j}^{T} XiXjT就是指代第i个channel上的feature map和第j个chanel上的feature map的空间关系。然后将这个空间关系与特征图feature maps进行一次整合( X X T X XX^{T}X XXTX)就得到了Attention maps。如下图所示。
在这里插入图片描述
在进一步的实验中发现,在 X X X的第二个维度上使用 softmax normalization可以提升三线模型的效果,于是改进的公式为: M b ( X ) : = N ( N ( X ) X T ) X M_{b}(X):=N(N(X)X^{T})X Mb(X):=N(N(X)XT

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值