題目:Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering
- 作者 : Peter Anderson , Xiaodong He , Chris Buehler , Damien Tency
- 論文地址[https://arxiv.org/abs/1707.07998 ]
1.解決的問題
- Image Captioning 和 VQA
2.方法
- ?Top-down atttention 和 Bottom-up attention 結(jié)合起來作箍,作者說 bottom-up attention 就是將圖片的一些重要得區(qū)域提取出來窍荧,每一個區(qū)域都有一個特征向量肮雨,Top-down attention 就是確定特征對文本得貢獻(xiàn)度。
? 對于一個圖片I ,提取出 k 個圖片特征V=\{v_1,v_2,...,v_k\},v_i \epsilon R^D ,每一個特征代表圖片得一個顯著區(qū)域的編碼,V? 就可以看成是 bottom-up attention model 的輸出揭朝,然后將這些用于top-down attention model,提取出對描述貢獻(xiàn)大的顯著性區(qū)域的特征匈子。
3. Bottom-Up Attention Model
- 使用 Faster R-CNN 來提取圖片中的興趣點蜒车,然后對感興趣的區(qū)域采用 ResNet-101 來提取特征讳嘱,使用 IoU 閾值來對所有區(qū)域進(jìn)行一個篩選("hard" attention)。對于每一個區(qū)域 i , v_i 定義為每個區(qū)域的 mean-pooled convolutional 特征(2048維)酿愧。使用這種方法從很多候選配置中選出一小部分候選框沥潭。
- 預(yù)訓(xùn)練Bpttom-Up Attention Model , 首先初始化Faster-RCNN 和 ResNet-101并在ImageNet上進(jìn)行預(yù)訓(xùn)練,然后在Genome data 上進(jìn)行訓(xùn)練嬉挡。為了增強學(xué)習(xí)特征表達(dá)的能力钝鸽,作者增加了一個預(yù)測物體屬性類別的任務(wù),為了預(yù)測區(qū)域 i 的屬性庞钢, 作者將 v_i 與一個代表著物體真實類別的 embedding 連接拔恰,并將其喂給一個新增的輸出層輸出一個在屬性類別和非屬性類別上的softmax。
4.Captioning Model
- 主要有兩個LSTM基括,第一個是Attention LSTM, 第二個是Language LSTM颜懊。
4.1. Top-Down Attention LSTM
-
首先,Attention LSTM 在每個時間步上的輸入為:上一個時間步的 Language LSTM的 輸出 + \bar{v} = \frac{1}{k} \sum_i v_i + 上一時刻生成的encoding of word风皿。
? x_i^1 = [h_{t-1} ^{2},\bar{v},W_c\prod_t]
?W_c 是一個word embedding matrix河爹,\prod_t 是一個單詞的one-hot編碼,這個輸入提供給了Attention LSTM截至當(dāng)前時間步的最大上下文信息揪阶,還有整個圖片的內(nèi)容昌抠,以及當(dāng)前生成的單詞內(nèi)容,W_c 是隨機生成的鲁僚,沒有經(jīng)過預(yù)訓(xùn)練炊苫。
-
在每個時間步:Attention LSTM 都會輸出一個output h_{t}^{1} ,并且都會為 k 個image feature v_i 生成一個標(biāo)準(zhǔn)化的 attention權(quán)重 \alpha_{i,t} :
? a_{i,t} = w_{a}^{T} tanh(W_{va}v_i + W_{ha}h_{t}^{1})
? \alpha_t = softmax(a_t)
W_{va}冰沙,W_{ha}侨艾,w_a 是學(xué)習(xí)的參數(shù),并且 Attention的結(jié)果:
? \widehat{v}_i = \sum_{i=1}^{K} a_{i,t} v_i
4.2. Language LSTM
- Language LSTM的輸入為:x_{t}^{2} = [\widehat{v}_t, h_{t}^{1}] 拓挥,即是Attention LSTM的隱含層輸出和Attention的結(jié)果唠梨,然后輸出的 h_{t}^{2} 經(jīng)過softmax 層輸出單詞的概率,整個句子的概率可以看成是所有單詞概率的連乘侥啤。
5. VQA Model
- 作者沒有說太多細(xì)節(jié)当叭,看另一個論文:D. Teney, P. Anderson, X. He, and A. van den Hengel. Tips and tricks for visual question answering: Learnings from the 2017 challenge. In CVPR, 2018.
6. Result
使用了 Visual Genome 數(shù)據(jù)集對我們的bottom -up 模型進(jìn)行預(yù)訓(xùn)練。這個數(shù)據(jù)集共有108K的圖片并且有物體屬性和關(guān)系盖灸,并且有 1.7M 的問題和答案蚁鳖。預(yù)訓(xùn)練bottom-up attention model 只使用了物體和屬性的數(shù)據(jù),保留了5K作為驗證赁炎,5K作為測試醉箕,剩下的98K作為訓(xùn)練。這個數(shù)據(jù)集中接近51K的圖片都可以在MSCOCO里面找到,作者也小心的避免了數(shù)據(jù)交叉的問題(比如有一張圖在Visual Genome訓(xùn)練集中讥裤,一張在MSCOCO的測試集中)放棒。這個數(shù)據(jù)集中有2000個object classes 和 500 個 attribute classes, 作者手動的移除了一些detection 效果不好的物體和屬性,剩下1600個object classes 和 400 個 attribute classes己英。當(dāng)訓(xùn)練VQA Model 時间螟,用Visual Genome數(shù)據(jù)集擴(kuò)增了(VQA 2.0)數(shù)據(jù)集。
MSCOCO 數(shù)據(jù)集
VQA 2.0 數(shù)據(jù)集损肛,包含1.1M的問題和11.1M的答案(關(guān)于MSCOCO的)
Image Captioning 結(jié)果:
?
- VQA 結(jié)果: