多模態融合算法——Multimodal Compact Bilinear Pooling


【摘要】 很多多模態任務,都需要融合兩個模態的特征。特征融合即輸入兩個模態的特征向量,輸出融合后的向量。最常用的方法是拼接(concatenation)、按位乘(element-wise product)、按位加(element-wise sum)。MCB的作者認為這些簡單的操作效果不如外積(outer product),不足以建模兩個模態間的復雜關系。但外積計算存在復雜度過高的問題。

Multimodal Compact Bilinear Pooling (MCB)來自EMNLP 2016的論文《Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding》。

很多多模態任務,比如VQA、視覺定位等,都需要融合兩個模態的特征。特征融合即輸入兩個模態的特征向量,輸出融合后的向量。最常用的方法是拼接(concatenation)、按位乘(element-wise product)、按位加(element-wise sum)。MCB的作者認為這些簡單的操作效果不如外積(outer product),不足以建模兩個模態間的復雜關系。但外積計算存在復雜度過高的問題。n維的向量,外積計算得到n^2的向量。於是MCB被提出,MCB將外積的結果映射到低維空間中,並且不需要顯式計算外積。

MCB

雙線性(Bilinear)就是向量外積的計算。雙線性池化(Bilinear Pooling)是對雙線性融合后的特征進行池化。在[2]中,雙線性池化首先對卷積得到的feature map的每個位置的特征向量進行向量外積計算,再對所有位置外積計算的結果進行sum pooling得到特征向量x。x經過signed square root和L2 normalization得到最后的特征。

但是雙線性特征的維度是極高的,Compact Bilinear Pooling(CBP)[3]是對雙線性池化的一種降低維度的近似。

雙線性池化的操作可以表示為:

1583315685666799.png

在線性核的情況下有:

1583315685904924.png

因為:

1583315685821705.png

對多項式核的進行低維近似的映射函數Φ,可以用來做對雙線性池化的壓縮。Tensor Sketching [4]是一種近似多項式核的算法,可以用Tensor Sketching進行壓縮。使用Tensor Sketching進行近似雙線性池化的算法如下:

1583371195910834.png

其中Count Sketch function有良好的性質:

1583372146933604.png1583372146899986.png

1583372146349632.png1583372147708476.png

MCB對CBP進行改進,使其適用於融合不同模態的特征。MCB的計算方法如Figure2所示。

1583310843370247.png

首先兩個模態的特征向量分別通過Count Sketch映射函數得到特征的Count Sketch。再經過FFT和逆FFT得到融合的特征。

具體的計算步驟如Algorithm1所示。

1583310853663840.png

VQA

將MCB應用於VQA的框圖如下:

1583311878300259.png

這里用到了兩次MCB模塊,第一個MCB融合圖像特征和文本特征計算圖像每個空間位置的attention weight。第二個MCB融合圖像特征和文本特征得到答案。

下面是在VQA數據集上使用不同融合方式的實驗結果。

1583311879491397.png

Visual Grounding

Visual Grounding的框圖如下:

1583311878850097.png

MCB將圖像proposal的特征和問題的文本特征融合。

下面是在Flickr30k實體數據集上的結果。

1583311878854062.png

參考資料

[1] Fukui A, Park D H, Yang D, et al. Multimodal compact bilinear pooling for visual question answering and visual grounding[J]. arXiv preprint arXiv:1606.01847, 2016.

[2] Lin T Y, RoyChowdhury A, Maji S. Bilinear cnn models for fine-grained visual recognition[C]//Proceedings of the IEEE international conference on computer vision. 2015: 1449-1457.

[3] Gao Y, Beijbom O, Zhang N, et al. Compact bilinear pooling[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 317-326.

[4] Pham N, Pagh R. Fast and scalable polynomial kernels via explicit feature maps[C]//Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining. 2013: 239-247.

[5] https://zhuanlan.zhihu.com/p/62532887

作者:冰糖檸萌


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM