论文笔记:分层问题-图像共注意力问答

整理了2017 Hierarchical Question-Image Co-Attention for Visual Question Answering)论文的阅读笔记

  • 背景
  • 模型
    • 问题定义
    • 模型结构
      • 平行共注意力
      • 交替共注意力
  • 实验
  • 可视化

背景

  视觉问答(VQA)的注意力模型在此之前已经有了很多工作,这种模型生成了突出显示与回答问题相关的图像区域的空间地图。在本文中,作者认为除了建模“看哪里”或视觉注意力外,建模“听什么话”或提问注意力同样重要。因此提出了一种新的VQA共注意模型。
  主要贡献:提出了一种视觉注意和问题注意共同推理的机制,与以往的作品只关注视觉注意力不同,本文的模型在图像和问题之间具有天然的对称性,即使用图像表征来引导问题注意力,使用问题表征来引导图像注意力;建立了一个层次结构,在三个层次上共同关注图像和问题:(a)词级,(b)短语级和©问题级。在单词级别,通过嵌入矩阵将单词嵌入到向量空间中。在短语级,使用一维卷积用于捕获单字母、双字母和三字母中包含的信息。
在这里插入图片描述

模型

  具体来说,本文将单词表示与不同支持度的过滤器进行卷积,然后通过将各种n-gram响应汇集到单个短语级表示中来组合它们。在问题层面,使用递归神经网络对整个问题进行编码。对于该层次结构中问题表示的每一层,构建联合问题和图像共同注意图,然后将它们递归地组合在一起,最终预测答案的分布。

问题定义

  给定一个有T个单词的问题,其表示为 Q = q 1 , . . . , q T Q=q_1,...,q_T Q=q1,...,qT,其中 q T q_T qT是第t个单词的特征向量。我们将 q t w 、 q t p 、 q t s q_t^w、q_t^p、q_t^s qtwqtpqts分别表示为t位置的词嵌入、短语嵌入和问题嵌入。图像特征用 V = v 1 , . . . , v n V=v_1,...,v_n V=v1,...,vn表示,其中 v n v_n vn为空间位置n处的特征向量。层次结构中每一层图像和问题的共同关注特征记为 v r 、 q r v^r、q^r vrqr
  对于 Q = q 1 , . . . , q T Q=q_1,...,q_T Q=q1,...,qT,首先使用词编码得到 Q = q 1 w , . . . , q T w Q=q_1^w,...,q_T^w Q=q1w,...,qTw,为了计算短语特征,我们对词嵌入向量进行一维卷积。具体地说,在每个词的位置,我们用三种窗口大小的过滤器计算词向量的内积:unigram, bigram和trigram。对于第t个单词,窗口大小为s的卷积为 q ^ s , t p = t a n h ( W c s q t : t + s − 1 w ) s ∈ { 1 , 2 , 3 } \hat q_{s,t}^p=tanh(W_c^sq_{t:t+s-1}^w) \ \ \ \ \ s\in\{1,2,3\} q^s,tp=tanh(Wcsqt:t+s1w)     s{1,2,3}  给定卷积结果,然后在每个单词位置跨不同n-gram应用最大池化以获得短语级特征 q t p = m a x ( q ^ 1 , t p , q ^ 2 , t p , q ^ 3 , t p ) t ∈ { 1 , 2 , . . . , T } q_t^p=max(\hat q_{1,t}^p,\hat q_{2,t}^p,\hat q_{3,t}^p)\ \ \ \ \ \ \ \ t \in\{1,2,...,T\} qtp=max(q^1,tp,q^2,tp,q^3,tp)        t{1,2,...,T}  使用LSTM对最大池化后的序列 q t P q_t^P qtP进行编码。对应的问题级特征 q t s q_t^s qts是时刻t的LSTM隐藏向量。

模型结构

  到这个地方,我们就得到了三个层次上的问题特征(词级,短语级和问题级),以及是使用预训练模型提取的图片的token特征,本文提出了两种共同注意机制,它们在生成图像和问题注意图的顺序上有所不同。第一种机制是平行共同注意,它同时产生图像和问题注意。第二种机制是交替共同注意,在生成图像和问题注意之间依次交替:在这里插入图片描述

平行共注意力

  该共注意力机制通过计算图像和问题在所有图像位置和问题位置对的特征之间的相似度来连接图像和问题。具体来说,给定图像特征映射 V ∈ R d × N V\in R^{d×N} VRd×N和问题表示 Q ∈ R d × N Q\in R^{d×N} QRd×N,亲和矩阵 C ∈ R T × N C \in R^{T×N} CRT×N的计算方式为: C = t a n h ( Q T W b V ) C=tanh(Q^TW_bV) C=tanh(QTWbV)  在计算这个亲和力矩阵之后,计算图像(或问题)注意力的一种可能的方法是简单地最大化其他模态位置上的亲和力,即 α v [ n ] = m a x i ( C i , n ) α^v[n]=max_i(C_{i,n}) αv[n]=maxi(Ci,n) α q [ t ] = m a x j ( C t , j ) α^q[t]=max_j(C_{t,j}) αq[t]=maxj(Ct,j)。但是作者提出了一种方法,把相似关联矩阵看成是feature, 并且学习去预测image和question的注意力图,即: H v = t a n h ( W v V + ( W q Q ) C ) H^v=tanh(W_vV+(W_qQ)C) Hv=tanh(WvV+(WqQ)C) H q = t a n h ( W q Q + ( W v V ) C T ) H^q =tanh(W_qQ+(W_vV)C^T) Hq=tanh(WqQ+(WvV)CT) α v = s o f t m a x ( w h v T ) α^v=softmax(w_{hv}^T) αv=softmax(whvT) α q = s o f t m a x ( w h q T H q ) α^q=softmax(w_{hq}^TH^q) αq=softmax(whqTHq)  其中, α v ∈ R N α^v\in R^N αvRN α q ∈ R T α^q\in R^T αqRT分别为每个图像区域vn和单词qt的注意概率,亲和矩阵C将问题注意空间转换为图像注意空间。基于上述关注权重,将图像和问题的关注向量计算为图像特征和问题特征的加权和: v ^ = ∑ n = 1 N α n v v n \hat v=\sum_{n=1}^Nα_n^vv_n v^=n=1Nαnvvn q ^ = ∑ t = 1 T α t q q t \hat q=\sum_{t=1}^Tα_t^qq_t q^=t=1Tαtqqt

交替共注意力

  在这种注意机制中,依次在生成图像和问题注意之间交替进行。简而言之,这包括三个步骤(如图2b所示):1)将问题总结为单个向量q;2)根据总结的问题特征关注图像;3)根据注意力的图像特征注意问题。
  具体地说,本文定义了一个注意操作 x ^ = A ( x : g ) \hat x=A(x:g) x^=A(x:g),以图像(或问题)特征X和来源于问题(或图像)的注意引导g为输入,输出注意力加强的图像(或问题)特征向量,即:
H = t a n h ( W x X + ( W g g ) 1 T ) H=tanh(W_xX+(W_gg)1^T) H=tanh(WxX+(Wgg)1T) α x = s o f t m a x ( w h x T H ) α^x=softmax(w_{hx}^TH) αx=softmax(whxTH) x ^ = ∑ α i x x i \hat x=\sumα_i^xx_i x^=αixxi  其中, 1 T 1^T 1T是全1矩阵的转置, α x α_x αx是对特征X的注意力权重。
  共注意力在问题特征的三个层次上进行,得到 v ^ r \hat v^r v^r q ^ r \hat q^r q^r r ∈ { w , p , s } r\in\{w,p,s\} r{w,p,s}。本文将VQA视为分类任务。根据所有三个层次的共出席图像和问题特征来预测答案。使用多层感知器(MLP)对注意力特征进行递归编码: h w = t a n h ( W w ( q ^ w + v ^ w ) ) h^w=tanh(W_w(\hat q^w+\hat v^w)) hw=tanh(Ww(q^w+v^w)) h p = t a n h ( W p [ ( q ^ p + v ^ p ) , h w ] ) h^p=tanh(W_p[(\hat q^p+\hat v^p),h^w]) hp=tanh(Wp[(q^p+v^p),hw]) h p = t a n h ( W s [ ( q ^ s + v ^ s ) , h p ] ) h^p=tanh(W_s[(\hat q^s+\hat v^s),h^p]) hp=tanh(Ws[(q^s+v^s),hp]) p = s o f t m a x ( W h h s ) p=softmax(W_hh^s) p=softmax(Whhs)其中,p是最终答案的概率。
在这里插入图片描述

实验

  在两个数据集上评估了所提出的模型:VQA数据集和COCO-QA数据集。表1是VQA数据集结果,表2是COCO-QA数据集结果。在这里插入图片描述在这里插入图片描述
  其中, O u r s p Ours^p Oursp表示平行共注意机制, O u r s α Ours^α Oursα表示交替共注意机制。
消融实验:

  1. Image Attention alone,与之前的作品类似,我们没有使用任何问题注意力。这种比较的目的是验证我们的改进不是正交贡献的结果。(比如更好的优化或更好的CNN特征)。
  2. Question Attention alone,仅进行提问注意,不进行图像注意。
  3. W/O Conv,其中不执行卷积和池化来表示短语。相反,我们在单词级输出的顶部堆叠另一个单词嵌入层。
  4. W/O W-attention,没有单词级别的共同注意。我们用均匀分布来代替单词级别的注意力。短语和问题级的共同关注仍然是建模的。
  5. W/O p-attention,其中不执行短语级别的共同注意,并且短语级别的注意设置为统一。单词和问题级的共同关注仍然被建模。
  6. W/O q-attention,不执行问题级别的共同注意。我们用均匀分布来代替问题级别的关注。单词和短语级别的共同关注仍然被建模。在这里插入图片描述

可视化

  COCO-QA数据集上的图像和问题共同关注图的可视化。从左至右:原始图像和问题对、词级共同注意图、短语级共同注意图和问题级共同注意图。在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/576205.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习优化算法(深度学习)

目录 预备知识 梯度 Hessian 矩阵(海森矩阵,或者黑塞矩阵) 拉格朗日中值定理 柯西中值定理 泰勒公式 黑塞矩阵(Hessian矩阵) Jacobi 矩阵 优化方法 梯度下降法(Gradient Descent) 随机…

Python列表、元组、字典及集合

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、列表定义方式: 二、元组1、定义方式:2、元组中的物理存储地址不可修改,如果修改则会报错,但是元组中的列表、字典项等却可以…

2024环境,资源与绿色能源国际会议(ICERGE2024)

2024环境,资源与绿色能源国际会议(ICERGE2024) 会议简介 2024环境、资源与绿色能源国际会议(ICERGE2024)将于2024年在三亚举行。该会议是一个围绕环境、资源与绿色能源研究领域的国际学术交流活动。 会议主题包括但不限于环境科学、环境工程、资源利用、绿色能源开…

tomcat和Servlet开发小案例

在上篇文章中,我已经正确安装了tomcat和利用servlet写了个基础的hello world程序,明白了这两个东西到底是啥玩意. 接下来,需要写个登录的小案例来进一步熟悉下基于servlet开发的流程. 一,新建项目 我们新建的maven项目其实里面是空的。所以我们需要给他变成一个servlet项目。 …

Netty对Channel事件的处理以及空轮询Bug的解决

继续上一篇Netty文章,这篇文章主要分析Netty对Channel事件的处理以及空轮询Bug的解决 当Netty中采用循环处理事件和提交的任务时 由于此时我在客户端建立连接,此时服务端没有提交任何任务 此时select方法让Selector进入无休止的阻塞等待 此时selectCnt进…

天途又获证书:甲级互联网地图服务企业、一级软件开发服务企业、一级信息技术服务运行维护服务企业。

10月24日,天途收到了三项重量级证书,甲级互联网地图服务企业资质证书、一级软件开发服务企业资质证书、一级信息技术服务运行维护服务企业证书。 互联网地图,是指登载在互联网上或者通过互联网发送的基于服务器地理信息数据库形成的具有实时…

【一种基于改进A*算法和CSA-APF算法的混合路径规划方法】—— 论文阅读

论文题目:A Hybrid Path Planning Method Based on Improved A∗ and CSA-APF Algorithms 1 摘要 大问题:复杂动态环境下全局路径规划难以避开动态障碍物,且局部路径容易陷入局部最优的问题 问题1:针对A*算法产生冗余路径节点和…

在 Windows 11 上安装 MongoDB

MongoDB 是一个流行的 NoSQL 数据库,它提供了灵活的数据存储方案,而 MongoDB Compass 则是一个可视化管理工具,可以更轻松地与 MongoDB 数据库交互和管理。在本文中,我们将介绍如何在 Windows 11 上安装 MongoDB,并配置…

冒泡排序(六大排序)

冒泡排序 冒泡排序的特性总结: 1. 冒泡排序是一种非常容易理解的排序 2. 时间复杂度:O(N^2) 3. 空间复杂度:O(1) 4. 稳定性:稳定 动图分析: 代码实现: Swap(int*p1,int*p2) {int tmp *p1;*p1*p2…

2.11 Python关键字(保留字)

Python关键字(保留字)一览表 保留字是Python 语言中一些已经被赋予特定意义的单词,这就要求开发者在开发程序时,不能用这些保留字作为标识符给变量、函数、类、模板以及其他对象命名。 Python 包含的保留字可以执行如下命令进行…

SQL-CRUD-2数据库实验

目录 第一关任务描述 相关知识 插入完整内容的行 插入选定内容的行 编程要求 测试说明 第一关代码 第二关任务描述 相关知识 删除表中的指定行 删除表中的所有行 编程要求 测试说明 第二关代码 第三关任务描述 相关知识 更新表中的指定行 编程要求 测试说明…

计算机专业在找工作时的注意事项

目录 说在前面关于我一些忠告关于简历关于银行写在最后 说在前面 满满的求生欲。我不是什么大佬,更没有能力教大家什么。只是看到有不少学弟学妹,还在为找一份工作焦头烂额,却没有努力的方向。所以这里斗胆给计算机相关专业的学弟学妹们的一…