[CVPR 2017] Look Closer to See Better: Recurrent Attention Convolutional Neural Network for FGVC

Recurrent Attention Convolutional Neural Network (RA-CNN)

在这里插入图片描述

  • Multi-task formulation:上图展示了 3 scales 的 RA-CNN 网络,由上到下,网络能逐渐识别出更细粒度的语义特征,并且通过不断堆叠网络结构,可以构造出更细粒度的识别流程。每层网络都由 APN + cls head 组成
  • Attention Proposal Network (APN):假设每层的输入图像为 X X X,则 X X X 先由 CNN 抽取出语义特征 f X f_X fXAPN f X f_X fX 得到 attended region (a square):
    [ t x , t y , t l ] = g ( f X ) [t_x,t_y,t_l]=g(f_X) [tx,ty,tl]=g(fX)其中 t x , t y t_x,t_y tx,ty 为中心坐标, t l t_l tl 为边长的一半, g g g 为两个全连接层。之后 APN 就将 attended region 进行双线性插值放大后当作下一层网络的输入来抽取更细粒度的特征。为了确保 crop 操作可导,作者将一个二维窗函数用作 attention mask 来近似 crop 操作。窗函数定义如下:
    在这里插入图片描述其中, t x ( t l ) , t x ( b r ) , t y ( t l ) , t y ( b r ) t_{x(tl)},t_{x(br)},t_{y(tl)},t_{y(br)} tx(tl),tx(br),ty(tl),ty(br) 为 attended region 的左上和右下点坐标
    在这里插入图片描述 h h h 为 logistic function with index k k k:
    在这里插入图片描述 k k k 很大时,有 x > 0 , h ( x ) = 1 ; x < 0 , h ( x ) = 0 ; x = 0 , h ( x ) = 1 / 2 x>0,h(x)=1; x<0,h(x)=0; x=0,h(x)=1/2 x>0,h(x)=1;x<0,h(x)=0;x=0,h(x)=1/2,也就是说只有当 ( x , y ) (x,y) (x,y) 处于 attended region 内时, M ( x , y ) M(x,y) M(x,y) 才不为 0. k → ∞ ⇒ { h ( x ) = 1 x > 0 h ( x ) = 0 x < 0 h ( x ) = 1 / 2 x = 0 k\rightarrow\infty\Rightarrow\left\{\begin{aligned}h(x)=1\quad x>0\\h(x)=0\quad x<0\\h(x)=1/2\quad x=0\end{aligned}\right. k h(x)=1x>0h(x)=0x<0h(x)=1/2x=0因此 attended region 可由下式得到
    在这里插入图片描述之后再进行双线性插值即可:
    在这里插入图片描述其中, λ \lambda λ 为上采样系数,放大后图像上的点 ( i , j ) (i,j) (i,j) 在原图上对应的坐标为 ( i / λ , j / λ ) (i/\lambda,j/\lambda) (i/λ,j/λ) m = [ i / λ ] + α m=[i/\lambda]+\alpha m=[i/λ]+α 为采样点周围 4 个点的两个 x x x 坐标, n = [ j / λ ] + β n=[j/\lambda]+\beta n=[j/λ]+β 为采样点周围 4 个点的两个 y y y 坐标, [ ⋅ ] [\cdot] [] 为整数部分, { ⋅ } \{\cdot\} {} 为小数部分

与 RPN 不同,APN 并没有使用任何 bbox 标签,而是使用弱监督学习来帮助模型定位特征显著区域

缺陷:图像中往往不止一个显著特征区域,但 APN 每次只能选出一个显著特征区域,无法同时抽取多个显著特征区域的特征,因此更深层的细粒度网络可能会丢失很多有用的语义信息,这一缺陷可以在一定程度上通过作者后面提出的 Multi-scale Joint Representation 进行弥补,但是更好的方法应该是如何抽取出更多的显著特征区域,并且在抽取细粒度信息的同时又不丢失全局信息

  • Classification and Ranking:cls head 由 f X f_X fX 经过 FC + softmax 后得到分类概率。损失函数由 intra-scale classification lossinter-scale pairwise ranking loss 组成:
    在这里插入图片描述其中, s s s 表示 scale, Y ( s ) Y^{(s)} Y(s) 表示 predicted label vector, Y ∗ Y^* Y 表示 ground truth label vector, p t ( s ) p_t^{(s)} pt(s) 表示 GT label t t t 的预测概率。排序损失如下,它可以使得 p t ( s + 1 ) > p t ( s ) + m a r g i n p_t^{(s+1)}>p_t^{(s)} + margin pt(s+1)>pt(s)+margin,这表示深层网络能够凭借细粒度信息更准确地预测出 GT 标签
    在这里插入图片描述
  • Multi-scale Joint Representation:由 RA-CNN 最终可以得到对应不同粒度的 N N N 个特征 (cls head 的 FC 输出)
    在这里插入图片描述为了充分利用这些多尺度特征,作者分别将 F i F_i Fi 归一化,concat 后由 FC + softmax 得到分类结果

Experiments

  • Attention localization
    在这里插入图片描述在这里插入图片描述
  • CUB-200-2011 (下表中的 scale i , j i,j i,j 代表使用 scale i , j i,j i,j 输出的特征进行融合分类)
    在这里插入图片描述
  • Stanford Dogs
    在这里插入图片描述
  • Stanford Cars
    在这里插入图片描述

References

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值