VQA 之 Multimodal Compact Bilinear Pooling
2017-06-08 00:07
288 查看
涉及论文
[1]Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding
https://www.arxiv.org/pdf/1606.01847.pdf
[2]Compact Bilinear Pooling
https://arxiv.org/pdf/1511.06062.pdf
[3]Bilinear CNN Models for Fine-grained Visual Recognition
https://arxiv.org/pdf/1504.07889.pdf
VQA =Visual Question Answering, 主要任务是给定一幅图片,并提出几个问题,模型负责回答该问题
简单来说,就是CNN来的图像特征与RNN来的自然语音特征,进过融合之后,将特征放入分类器或者RNN用来生成问题的答案。
改进以上结构的方法有许多,如下图:
可以选择改进CNN或者RNN,也可以选择 改变两种特征的融合方式,或者加入attention,
本文就属于改变两种特征融合方式的一种。
如上图,本文采取的方法是所谓的MCB,简单来说就是一种可以简化的bilinear pooling,
所以下面先从bilinear pooling 说起
下面我们具体来说下如何操作:
对于图片I,会生成两个 feature map, fa,fb, 假设在fa和fb都为h \times w \times D维,在某一个位置l上会有D维特征, 双线性层就是将这两个D维数据按如上公式进行运算,即求outer product。 然后会被拉直为DxD维向量,
outer product的定义:
blinear pooling就是在每个位置如上计算,随后求sum,
有一些解释为由于bilinear 考虑了两个特征间每个元素的interaction,所以效果会更好
说道这里我们可以讨论一下,为什么bilinear pooling 可以提高效果
具体的处理手段是使用count sketch的方法降维求外积:
其中的星号*,代表卷积操作,
,可以表示为
具体的原因可以参考:
[Pham and Pagh2013] Ninh Pham and Rasmus Pagh. 2013. Fast and scalable polynomial kernels via explicit feature maps. In Proceedings of the 19th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’13, pages 239–247, New York, NY, USA. ACM.
计算过程
之后可能会专门写一篇关于类似的计算,这里就偷下懒了⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄
加入attention之后的框架,
[1]Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding
https://www.arxiv.org/pdf/1606.01847.pdf
[2]Compact Bilinear Pooling
https://arxiv.org/pdf/1511.06062.pdf
[3]Bilinear CNN Models for Fine-grained Visual Recognition
https://arxiv.org/pdf/1504.07889.pdf
1 introduction
这里主要涉及三篇文章,首先是做fine-grained的bilinear cnn models[3],但是bilinear cnn会引起参数维度过大,于是作者提出了compact bilinear pooling[2],然后在此基础上做VQA任务[1],并取得了2016年的冠军 http://visualqa.org/roe.htmlVQA =Visual Question Answering, 主要任务是给定一幅图片,并提出几个问题,模型负责回答该问题
2 Multimodal Compact Bilinear Pooling for Visual Question Answering
做VQA的基本方法如下:简单来说,就是CNN来的图像特征与RNN来的自然语音特征,进过融合之后,将特征放入分类器或者RNN用来生成问题的答案。
改进以上结构的方法有许多,如下图:
可以选择改进CNN或者RNN,也可以选择 改变两种特征的融合方式,或者加入attention,
本文就属于改变两种特征融合方式的一种。
如上图,本文采取的方法是所谓的MCB,简单来说就是一种可以简化的bilinear pooling,
所以下面先从bilinear pooling 说起
3 Bilinear CNN Models
两种特征连接或者说融合在一起的方法有许多种,比如相加,concatenate,等等,后来提出的bilinear cnn 是利用了两个特征的外积来融合,效果很不错,如下:下面我们具体来说下如何操作:
对于图片I,会生成两个 feature map, fa,fb, 假设在fa和fb都为h \times w \times D维,在某一个位置l上会有D维特征, 双线性层就是将这两个D维数据按如上公式进行运算,即求outer product。 然后会被拉直为DxD维向量,
outer product的定义:
blinear pooling就是在每个位置如上计算,随后求sum,
有一些解释为由于bilinear 考虑了两个特征间每个元素的interaction,所以效果会更好
说道这里我们可以讨论一下,为什么bilinear pooling 可以提高效果
4 Multimodel compact bilinear pooling
从上面可以看出经过bilinear之后,维度变为原来的平方倍,后面的层会增加很多参数,为了使该过程更高效,这里加了降维的措施具体的处理手段是使用count sketch的方法降维求外积:
其中的星号*,代表卷积操作,
,可以表示为
具体的原因可以参考:
[Pham and Pagh2013] Ninh Pham and Rasmus Pagh. 2013. Fast and scalable polynomial kernels via explicit feature maps. In Proceedings of the 19th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’13, pages 239–247, New York, NY, USA. ACM.
计算过程
之后可能会专门写一篇关于类似的计算,这里就偷下懒了⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄
加入attention之后的框架,
相关文章推荐
- VQA 之 Multimodal Compact Bilinear Pooling
- 阅读笔记(Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding)
- Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding
- Multimodal Compact Bilinear Pooling for Multimodal Neural Machine Translation
- 论文笔记 :Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding
- 论文笔记: (compact) Bilinear Pooling, Confusion
- 论文笔记: Compact Bilinear Pooling
- 论文笔记: HADAMARD PRODUCT FOR LOW-RANK BILINEAR POOLING
- 关于.net精简框架(.NET Compact Framework)
- Hello,.NET Compact Framework 2.0
- PPC: .NET Compact Framework 2.0 正式版下载
- .NET Compact Framework Technology Samples
- 《.NET Compact Framework 移动开发指南》,即将与大家见面
- John C. Nash, «Compact Numerical Methods for Computers Linear Algebra and Function Minimisation» (Reupload)
- SQL Mobile is SQL Everywhere is SQL Compact Edition
- Microsoft.NET Compact Framework 数据访问策略
- 定期运行Compact、Fixup和Updall任务
- Creating a Microsoft .NET Compact Framework-based Animation Control
- 如何将数据导入到 SQL Server Compact Edition 数据库中
- 如何将数据导入到 SQL Server Compact Edition 数据库中(四)