天天看點

Visual Question Answering with Memory-Augmented Networks閱讀心得

本文中利用記憶增強神經網絡來預測視覺問題的準确答案,即使這些答案很少出現在訓練集中。記憶網絡結合了内部和外部記憶塊,并有選擇地關注每個訓練範例。證明了在答案重尾分布的VQA環境中,記憶增強神經網絡能夠保持對稀缺訓練樣本的相對長期記憶。

一、文章引入

現有的VQA系統訓練深度神經網絡存在的兩個問題:

1)首先,使用基于梯度的方法訓練的深度模型學會響應大多數訓練資料,而不是特定的稀缺樣本。然而,在自然語言中,問答對往往是重尾分布的。現有的方法将問題中的稀有詞标記為無意義的未知标記(例如,unk),并簡單地将稀有答案排除在訓練集之外。

2)其次,現有的VQA系統從問答對中了解對象的屬性,有時獨立于圖像。VQA算法在沒有底層模型真正了解視覺内容的情況下,會受到人類語言的偏見。

本文使用記憶體網絡來記住罕見的事件,并建議學習記憶增強網絡,注意VQA的罕見答案。首先采用共同注意機制來共同嵌入圖像和問題特征。然後學習記憶增強網絡,保持長期記憶稀缺的訓練資料。本文提出的的方法與動态記憶體網絡的顯著不同之處在于,本文的記憶體網絡既包含LSTM内部的記憶體,也包含由LSTM控制的外部記憶體,而動态記憶體網絡隻實作了注意門控遞歸單元(attention gated unit, GRU)内部的記憶體。

二、内容簡介

下圖給出了本文所提出算法的主要步驟。

Visual Question Answering with Memory-Augmented Networks閱讀心得

圖一:使用預先訓練的CNNs的最後一個池化層來提取編碼空間布局資訊的圖像特征。使用雙向LSTMs為每個單詞生成一個固定長度的特征向量。一種關注相關圖像區域和文本文字的協同注意機制。将參與的圖像和問題特征向量連接配接起來,并将它們輸入到一個由标準LSTM作為控制器和一個擴充的外部存儲器組成的記憶擴充網絡中。控制器LSTM決定何時從外部記憶體寫入或讀取。記憶增強網絡在保持對稀缺訓練資料的長期記憶方面起着關鍵作用。将記憶增強網絡的輸出作為圖像和問題對的最終嵌入,并将此嵌入提供給分類器以預測答案。

2.1 Input Representation

Image Embedding使用預先訓練好的VGGNet-16和ResNet-101提取CNN特征。将圖像大小調整為448×448,然後将其輸入CNNs。将VGGNet-16的最後一個池化層(pool5)或ResNet-101的最後一個池化層(res5c)的輸出作為對應于14×14個空間分布區域的圖像特征。用{v1,…,vN}來表示輸出特征,其中N = 196為區域總數,vN為第N個特征向量,VGGNet-16為512維,ResNet-101為2048維。

Question Embedding如圖一所示,利用雙向LSTMs來生成問題特征。{w1,…,wT}為含有T個單詞的輸入問題的獨熱向量。應用一個嵌入矩陣M将單詞嵌入到另一個向量空間,即xt= Mwt。然後将嵌入的向量送入雙向LSTMs:

Visual Question Answering with Memory-Augmented Networks閱讀心得

式中h+t和h−t分别表示t時刻前後LSTMs的隐含狀态。将雙向狀态h+t和h−t連接配接起來作為特征向量qt= [h+ t,h−t]來表示輸入問題中的第t個單詞。

2.2 Sequential Co-Attention

給定一對視覺特征向量和問題特征向量,協同注意機制旨在關注每一類特征中與另一類特征相對的最相關部分。設{vn}和{qt}分别為視覺特征向量和問題特征向量。計算一個基向量m0來建議後面的注意計算:

Visual Question Answering with Memory-Augmented Networks閱讀心得

⊙是逐元素乘積。 為了確定視覺特征向量v0和問題特征向量q0具有相同的維,将雙向LSTM的隐藏狀态的大小設定為視覺特征向量vn的一半。 對視覺和問題特征向量進行相同的共同注意機制,利用雙層神經網絡來實作軟注意 。 為了視覺注意,軟權重{αn| n = 1,…,N}和關注的視覺特征向量v* 如下:

Visual Question Answering with Memory-Augmented Networks閱讀心得

其中Wv,Wm和Wh表示隐藏狀态。 類似地,按以下方式計算參與問題特征向量q* :

Visual Question Answering with Memory-Augmented Networks閱讀心得

将參與的向量v* 和q* 連接配接起來,以表示輸入圖像和問題對。圖二顯示了共同注意機制的流程。

Visual Question Answering with Memory-Augmented Networks閱讀心得

2.3 Memory Augmented Network

作者希望有一種機制可以有選擇地更多地關注稀缺的訓練項目,這些項目在大量的訓練疊代過程中總是被忽略。 先前的工作已經表明,RNN可以作為一種注意機制,從先前的時間步中參考隐藏狀态來選擇目前輸入中最相關的部分。 但是,RNN缺乏外部存儲器來維護稀缺訓練資料的長期存儲器。

本文中,作者建議使用一個記憶擴增神經網絡的VQA。具體來說,利用标準的LSTM網絡作為控制器,它接收輸入資料并使用一些讀寫頭與外部記憶體子產品進行互動。LSTM具有内部記憶體,其功能類似于GRU。但是,本文的記憶體擴充網絡與GRU的顯著不同之處在于,除了LSTM中的内部記憶體之外,還利用了外部記憶體Mt,它可以讀寫。具體地說,記憶體塊mt由一組作為記憶體槽的行向量組成。

令{xt,yt},t = 1,…,T是整體T訓練資料,其中xt = [v*t,q*t]表示視覺和問題特征向量的級聯,而yt是相應的獨熱編碼答案向量。 首先将特征向量xt饋入LSTM控制器,如下所示:

Visual Question Answering with Memory-Augmented Networks閱讀心得

為了從外部記憶體Mt中讀取,将隐藏狀态ht作為Mt的查詢。首先,計算查詢向量ht和記憶體中每一行的餘弦距離:

Visual Question Answering with Memory-Augmented Networks閱讀心得

接下來,計算讀取操作的權重向量wr,在餘弦距離上使用softmax:

Visual Question Answering with Memory-Augmented Networks閱讀心得

通過這些讀取權值,可以得到一個新的記憶體rt:

Visual Question Answering with Memory-Augmented Networks閱讀心得

最後,将新的記憶向量rt與控制器隐藏狀态ht連接配接起來,生成學習分類器的輸出向量ot。

先前的存儲網絡依靠可學習的門将新的輸入資料寫入特定的存儲位址中。 盡管在基于序列的預測任務中表現良好,但是該方案對于處理重尾訓練資料而不是序列的聯合編碼的VQA任務并不是最佳的。 在這種情況下,作者希望在将新資訊寫入很少使用的位置和寫入最近使用的位置之間取得平衡。 與記憶增強神經網絡相似,使用權重wut來控制寫入記憶體。 通過衰減其先前狀态并添加目前讀寫權重來更新每個時間步的使用權重:

Visual Question Answering with Memory-Augmented Networks閱讀心得

此處,γ是衰減參數。 為了計算寫入權重,本文引入了一種截斷方案來更新最少使用的位置。 請注意,這種截斷方案有利于網絡為重尾訓練資料維持較長的存儲時間,而不是迅速消除其影響。 在這裡,使用符号m(v, n)表示向量v的第n個最小元素。應用可學習的sigmoid門參數來計算先前讀取的權重和使用權重的組合:

Visual Question Answering with Memory-Augmented Networks閱讀心得

此處,σ(·)為Sigmoid函數,

Visual Question Answering with Memory-Augmented Networks閱讀心得

,α為标量參數。 如果x為true,則訓示符函數✶(x)傳回1,否則傳回0。較大的n導緻對稀缺訓練資料的存儲期限更長。 與LSTM内部的内部存儲器相比,參數γ和n都可以調整寫入外部存儲器的速率。這給了我們更多的自由來調節記憶體更新。 根據寫入權重,将輸出隐藏狀态ht寫入記憶體:

Visual Question Answering with Memory-Augmented Networks閱讀心得

2.4. Answer Reasoning

将隐藏狀态ht和讀取記憶體rt連接配接起來,作為圖像和問題對的最終嵌入ot= [ht,rt]。通過ot生成輸出分布。特别地,使用由線性隐層和softmax函數組成的單層感覺器來輸出分類分布。分類分布産生一個向量pt,其元素顯示類的機率:

Visual Question Answering with Memory-Augmented Networks閱讀心得

這裡Wo和Wh是線性層的隐藏參數。在訓練階段,給定輸出分布pt,通過最小化輸入獨熱編碼标簽向量yt的損失,對網絡進行優化:

Visual Question Answering with Memory-Augmented Networks閱讀心得

三、實驗結果

Visual Question Answering with Memory-Augmented Networks閱讀心得

在VQA基準上的單模型準确率。

Visual Question Answering with Memory-Augmented Networks閱讀心得

成分分析。遞增地添加元件以獲得更好的性能。

Visual Question Answering with Memory-Augmented Networks閱讀心得

使用CNN(VGGNet)圖像嵌入或不嵌入外部存儲器的準确性和損失,并提供前3000個答案,以進行VQA基準測試的訓練+驗證集。

Visual Question Answering with Memory-Augmented Networks閱讀心得

VQA基準v2.0的結果

Visual Question Answering with Memory-Augmented Networks閱讀心得

Visual 7W Telling 資料集的準确性。

四、主要貢獻

1.使用記憶增強網絡來提高注意網絡的能力,以記住不常見的問題和答案對的視覺問題回答。

2.使用共同注意機制來關注最相關的圖像區域和文本文字,然後共同嵌入圖像和問題特征。

繼續閱讀