论文阅读【Attention on Attention for Image Captioning】

  • 发表:2019 ICCV
  • idea:对注意力机制的改进。传统的attention中,不管Q和K/V是否相关,都会为Q输出一组归一化的权重,即使二者并不相关,这会产生误导信息。因此作者提出了AoA(Attention on Attention)模块,用于关注Q和V之间的相关性,在传统的attention的基础上再增加另一个attention。
  • 代码:AoANet
AoA block

用于关注Q和V之间的相关性,通过对Q和V进行线性变化生成information vector i i i和attention gate g g g
在这里插入图片描述

使用element-wise multiplication得到attended information i ^ \widehat i i
在这里插入图片描述

AoA整体计算流程如下:
在这里插入图片描述

在这里插入图片描述

整体架构

在这里插入图片描述

  • Encoder

在这里插入图片描述
首先通过CNN或R-CNN提取一组初步的特征向量 A = a i i = 1 k A={{a_i}_{i=1}}^k A=aii=1k,然后将其输入包含AoA模块的网络中,如上所示。这里的AOA模块( A o A E {AoA}^E AoAE)采用了多头注意力
在这里插入图片描述

在这里插入图片描述

其中 f m h − a t t f_{mh-att} fmhatt是多头注意函数,沿通道纬度将Q,K,V分为 H = 8 H=8 H=8个切片,对每个切片采用scaled dot-product函数 f d o t − a t t f_{dot-att} fdotatt,最后将所有头concate在一起作为最终表达。
此模块可以寻找图像中不同区域的相互作用,并使用AoA进一步关注它们之间的关联程度,最后将 A ← A ′ A \leftarrow A' AA,该过程并不会改变A的储存,因此可以堆叠操作(论文中堆叠了6次)

  • Decoder
    使用LSTM进行解码
    在这里插入图片描述

其中 a ‾ \overline{a} a为A的平均池化; c t − 1 c_{t-1} ct1表示context vector,保存了解码状态以及新获取的信息( c − 1 c_{-1} c1初始化为0向量)
在这里插入图片描述

W e ∏ t W_e\prod_{t} Wet表示输入单词的embedding

  • decoder 整体计算公式( A o A D {AoA}^D AoAD
    在这里插入图片描述
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值