Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering

Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering

原文地址

时间:2018

contribution

提出了结合bottom-up和top-down的视觉注意力机制

Model

给定一张图片 I I I,取其k个salient region的特征
在这里插入图片描述

Bottom-Up Attention Model

bottom-up attention是通过faster R-CNN来实现的,Faster R-CNN检测分为两步,

第一步是Region Proposal Network,预测object proposals,一个小的网络在CNN中间层的输出上滑动,在每个空间位置上给出一个得分和一个box,通过非极大抑制(nms)和iou阈值来选择最好的几个box proposals进入到第二个环节

第二步通过region of interest(ROI) 池化从每个box proposal 中提取一个14*14的特征图,这些特征图随后batch到一起输入到CNN的最后几层中,最终的输出是在class label上的softmax分布以及针对类别的精炼的bounding box

本文使用R-CNN与ResNet-101组合,来生成image feature V以备image captioning和VQA的需要,对模型的输出采用非极大抑制,然后选择那些class detection probability超过置信值的区域,对每个区域 i i i,记 v i ∈ R D v_i\in R^{D} viRD为它的平均池化卷积特征, D D D为2048。这实际是一个"hard" attention机制,因为仅仅一小部分bounding box被选出来,相对于全集的大量bounding box而言

bottom-up attention模型由Faster R-CNN在ImageNet的预训练模型初始化,然后在Visual Genome上训练来辅助特征提取,在类别预测上我们增加了额外的属性预测,为了预测region i i i的属性,我们将平均池化卷积特征 v i v_i vi和学习到的真实目标类的embedding concatenate在一起,然后将结果输入到附加的输出层,这层定义为预测每个属性类得分,外加一个无属性的得分

传统的Faster R-CNN 多任务损失函数包括四个组成部分,包括RPN和最终输出的分类和box regression损失,我们保留这些部分并额外增加了一个multi-class损失来训练属性predictor

Captioning Model

给定图片特征 V V V,captioning model使用一个“soft”的top-down attention mechanism来给每个特征加权

总的来说,captioning model 由两个LSTM组成
在这里插入图片描述

Top-Down Attention LSTM

从现在开始,输入即为bottom-up模型的输出 V V V
attention LSTM的每一步输入都由language LSTM的上一步输出 h 2 h^2 h2组成,具体的,通过concatenate,得到
在这里插入图片描述
其中
在这里插入图片描述
W e W_e We是word embedding 矩阵, ∏ t \prod_{t} t是时刻 t t t的输入词的one-hot向量

这综合了language LSTM的输出,图片的全局信息以及部分的caption输出

加权向量 α i , t \alpha_{i,t} αi,t t t t时刻为 v i v_i vi赋权
在这里插入图片描述
其中的 W W W w w w为待学参数,attended image feature v ^ t \hat{v}_t v^t作为language LSTM的输入,由输入特征的凸组合得到
在这里插入图片描述

Language LSTM

language LSTM的输入为attended image feature和attention LSTM的输出concatenate得到
在这里插入图片描述
y 1 : T y_{1:T} y1:T表示一系列词 ( y 1 , . . . , y T ) (y_1,...,y_T) (y1,...,yT),输出词的概率计算为:
在这里插入图片描述
完整输出的概率由条件概率求得

在这里插入图片描述

目标函数

给定ground truth序列 y 1 : T ∗ y^{*}_{1:T} y1:T以及captioning模型参数 θ \theta θ,最小化交叉熵损失

在这里插入图片描述

VQA Model

给定输入image feature V V V V Q A VQA VQA模型也使用soft top-down的注意力机制来加权每个feature,整体结构如图所示

在这里插入图片描述
使用参数的非线性层gated hyperbolic tangent activation,这个’gated tanh’层是一个映射 f a : x ∈ R m → y ∈ R n , a = W , W ′ , b , b ′ f_a:\mathbf{x}\in R^{m}\rightarrow \mathbf{y}\in R^{n},a={W,W',b,b'} fa:xRmyRn,a=W,W,b,b,定义如下在这里插入图片描述
其中 σ \sigma σ是sigmoid激活函数, a a a是待学习参数, g g g实际上就是一个在 y ^ \hat{y} y^上的门限(gate)

文章的方法是先将每个问题通过GRU encode成隐变量 q q q,问题中的词用word embedding表示,计算出 q q q之后,我们计算特征 v i v_i vi的unnormalized权值
在这里插入图片描述
归一化之后,类似之前计算出 v ^ \hat{v} v^
在这里插入图片描述
最后计算出response y y y的概率
在这里插入图片描述

结果分析

在这里插入图片描述
通过图片可以得到,模型生成词的时候不仅能够focus 小的细节,也可以focus大的区域

结论

本文提出了一个结合bottom-up和top-down的视觉注意力模型,使用bottom-up attention model 综合图片的CNN特征和属性特征,然后利用Top-Down Attention LSTM和language LSTM进行image caption

问题

  • 3.1中learned embedding of the ground-truth object class是怎么学习得到的
    可能是字典学习
  • 3.2.3 self-critical sequence training是啥?一种强化学习方法
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值