2019年VQA论文整理
大致將VQA的方法分為如下
1、Attention
2、Modality interaction
3、Relation Reasoning
4、Module Network
5、Count
6、Robust
7.Sence Text
1、Attention
? ? ? 目前大部分工作都存在使用Attention機制,使用Attention主要是找到圖片中與答案的相關(guān)的圖片區(qū)域。
? ? ? (1)Stacked Attention Networks for Image Question Answering
這篇文章創(chuàng)新點在于對于多次提取attention,多次提取后得到的attention與問題更加相關(guān),首先是將問題和圖片送入一個單層網(wǎng)絡,然后通過softmax得到一個權(quán)重向量,其維度等于圖片中區(qū)域的數(shù)量,然后權(quán)重向量與圖片相乘再相加得到新的圖片特征向量,其與問題向量相加得到新的問題特征向量,再進行新一輪的迭代。一般迭代兩輪之后效果就不明顯了。
? ? ? ? ??
(2)Where To Look: Focus Regions for Visual Question Answering
如下所示,這種attention方式也是比較簡單,首先將圖片和文字進行embedding之后,進行點乘然后通過softmax得到一個權(quán)重向量,這個權(quán)重向量與上文相同與區(qū)域的數(shù)量一致,然后坐著將圖片特征與文本特征concat之后,輸入至一個單層網(wǎng)絡中,將權(quán)重與得到的特征相乘,再輸入至最后的分類層。
? ? ? ?
(3)Visual7W: Grounded Question Answering in Images
這篇文章將注意力機制與LSTM相結(jié)合,將attention放在問題上的LSTM,每輸入一個word就產(chǎn)生一個注意力圖,然后就生成了一個新的視覺特征。在特征融合方面選擇使用的了點乘。
(4)Bottom-Up and Top-Down Attention for Image Captioning?and Visual Question Answering
該篇文章主要的貢獻在于提供了更好的特征,即題目中所說的Bottom up的圖片特征,該方法 基于Faster R-CNN框架內(nèi)的ResNet CNN。通過使用Visual Genome數(shù) 據(jù)集為給定圖像中的特定元素標注。由此產(chǎn)生的特征可以解釋為以圖像中前K個對象為中心的ResNet特征。也就是說,不是用整張圖片作為視覺特征,而是選擇前K個圖片中的proposal作為視覺特征。
而其中的Top-down即問題特征為Top與各個proposal的特征concat之后,通過非線性層和線性層得到一個attention,然后attention與視覺特征相乘得到更好的特征。
對兩種模態(tài)進行融合,作者采用了簡單的元素級相乘(element-wise)
(4)Differential Attention for Visual Question Answering
已有的注意力研究都是通過關(guān)注某一個圖像區(qū)域來回答問題,而本文認為已有研究的注意力機制關(guān)注的區(qū)域與人類會關(guān)注的圖像區(qū)域并不相關(guān)。因此,本文提出通過一或多個支持和反對范例來取得一個微分注意力區(qū)域(differential attention region)。
與基于圖像的注意力方法比起來,本文計算出的微分注意力更接近人類注意力,因此可以提高回答問題的準確率。本文的前提是,語義最近的范例和遠語義范例之間存在差異,這樣的差異能夠引導注意力關(guān)注于一個特定的圖像區(qū)域。
原理流程:
首先為微分注意力網(wǎng)絡(differential attention network, DAN),重點為通過正反例注意力更新目標注意力,使之與人類的注意力更相似。
?然后就是微分上下文注意力(DCN),其主要應用映射的概念,縮小正例與目標注意力之間的距離,刪除反例上下文與目標注意力之間的特征,從而達到更新注意力的目的。
2、Modality interaction
由于VQA的模型輸入一般為兩種模態(tài)的數(shù)據(jù),即圖像數(shù)據(jù)和文本數(shù)據(jù),對于這兩種模態(tài)的數(shù)據(jù)需要進行融合,一般的方法為
(1)Bilinear Attention Networks
首先需要指出之前的模型,將文本特征(即問題)提取為一個數(shù)組,而視覺數(shù)據(jù)提取為多矩陣,即多個數(shù)組,每個區(qū)域的特征的提取為一個數(shù)組。針對這種情況,有人提出了低秩雙線性池化,具體方法如下,由于要將兩種模態(tài)融合,將權(quán)重矩陣W分解為U,V。減少了參數(shù),將其相乘得到后池化,即得到了注意力權(quán)重,然后與視覺特征相乘得到新的視覺特征(突出了局部特征)。
在此基礎上,作者提出不是將文本特征提取為一個數(shù)組,而是矩陣,即每個單詞提取為一個數(shù)組。但是這導致了模態(tài)融合時參數(shù)更加復雜,與上述做法相似,提出一個注意力圖A,A中的每個元素都是經(jīng)過低秩雙線性池化得到
(2)Compact Trilinear Interaction for Visual Question Answering
本篇提出了網(wǎng)絡模型 Compact Trilinear Interaction (CTI) 用于發(fā)掘三元組輸入(Image, Question, Answer)間的線性關(guān)聯(lián),使用 PARALIND 分解 有效地參數(shù)化 trilinear interaction。
這么做的話會出現(xiàn)兩個問題:(1) trilinear interaction 維度過高,會導致模型在運行時間,存儲空間上帶來巨量的開銷,(2) VQA 問題分為開放式回答和多選問題,以三元組作為輸入僅僅適用于多選問題。因此提出 knowledge distillation
可參考這篇文章鏈接?
?
對于多選問題,輸入是三元組(Image,Question,Answer),使用 Glove 對 Question 和 Answer 做 embedding,在 ImageNet 預訓練網(wǎng)絡,通過 FPN(ResNet152) 對 Image 做 Object Detection 后得到特征向量。預測是一個二分類問題,即判斷每一個 Answer 的正負性,Loss 函數(shù)使用 BCE
對于開放式問題,輸入是(Image,Question),一般我們是將其看成多分類問題。但由于待選答案列表較長,一方面會增加 CIL 預測時的計算量,另一方面 CIL 輸入的是三元組。
所以提出了 knowledge distillation 技術(shù):整個模型分為兩塊,一個是 teacher model(這里使用 CIL),另一個是 student model( 現(xiàn)階段 state-of-the-art 模型,比如 BAN),訓練過程是二者一塊進行,測試階段僅僅使用 student model。
?
(4)Multi-modality Latent Interaction Network for Visual Question Answering
這篇文章考慮到在多種方式來進行模態(tài)融合,在Summarizations階段,通過單層網(wǎng)絡和softmax得到k組線性組合權(quán)重,然后與特征相乘,得到的Summarizations是在全局上對特征的總結(jié)。Interaction階段就是簡單的進行點積通過單層網(wǎng)絡。
Propagation比較有意思,是在跨模態(tài)配對特征的不同方面,以對輸入圖像個問題之間的復雜關(guān)系進行建模。第一個操作著重于建模每個單獨的視覺潛在對之間的關(guān)系,第二個操作則嘗試在所有視覺問題對之間傳播更高階的信息,以對更復雜的關(guān)系進行建模。
Aggregation階段是使用transformer從A中聚合信息以更新特征的信息。
再就是作者采用模塊化,多個模塊疊層,多次更新信息。
?
?
?
(5)Dynamic Fusion with Intra- and Inter-modality Attention Flow for Visual Question Answering(參考鏈接)
最大的亮點是同時考慮了intra-modality relation(模態(tài)內(nèi)部關(guān)系)和inter-modality relation(跨模態(tài)關(guān)系)。之前沒有人嘗試過同時利用這兩類關(guān)系來處理VQA問題。intra-modality relation是對inter-modality relation的補充:對視覺模態(tài)來說,每個圖像區(qū)域不應該僅獲得來自問題文本的信息,而且需要與其他圖像區(qū)域產(chǎn)生關(guān)聯(lián),比如對于who is above the skateboard ?這樣的問題,模型就應該把滑板對應的區(qū)域和滑板上方的區(qū)域關(guān)聯(lián)起來;而對文字模態(tài)來說,使各個單詞之間互相產(chǎn)生聯(lián)系有助于提高模型對問題的理解,這方面BERT的Transformer是一個很好的例子。
給定圖片視覺特征和問題文本特征,模型首先對兩者進行跨模態(tài)的關(guān)系建模,然后分別在兩個模態(tài)內(nèi)部各自進行關(guān)系建模,這兩個步驟可以重復多次,最后把輸出的兩個特征經(jīng)過一個簡單的分類器得出答案。
3、Relation Reasoning
(1)MUREL: Multimodal Relational Reasoning for Visual Question Answering(可參考鏈接)
直觀上來說,在 VQA 領域,Attention 機制相當于在給定問題的前提下,對每個 Image region 打分后做信息加權(quán)。由于忽略了 Image region 間的 spatial 和 semantic 間的關(guān)聯(lián),所以不能做到有效地推理。
MUREL 單元用于發(fā)掘 Question 和 Image region 間的細粒度關(guān)聯(lián),最后輸出每個 Image region 上下文感知的編碼信息。 MUREL 單元主要由兩部分構(gòu)成:(1) Bilinear Fusion,(2) Pairwise Relational Modeling
4、Module Network
(1)Deep Compositional Question Answering with Neural Module Networks
本文也是針對 Visual question answering 這個問題的,還是用 CNN網(wǎng)絡,這里使用一個語義解析器(natural language parser)來動態(tài)的決定一個CNN網(wǎng)絡,CNN網(wǎng)絡有幾個模塊過程,通過語義解析器,我們動態(tài)的通過組合模塊構(gòu)成一個 CNN網(wǎng)絡來解決 圖像問答問題。
?(2)Interpretable Visual Question Answering by Reasoning on Dependency Trees
?
5、Count
(1)LEARNING TO COUNT OBJECTS IN NATURAL IMAGES FOR VISUAL QUESTION ANSWERING(鏈接)
目前很多模型都在記數(shù)問題上表現(xiàn)很差,所以需要單獨解決這個問題。
Problems with Soft Attention
在 VQA 領域中,造成計數(shù)類問題表現(xiàn)不佳的原因主要有:(1) Soft-Attention 的廣泛運用,(2) 區(qū)別于標準的計數(shù)問題,對于 VQA 來說,沒有明確的標簽標定需要計數(shù)對象的位置,(3) VQA 系統(tǒng)的復雜性,表現(xiàn)在不僅要處理計數(shù)類問題,同時還要兼顧其他復雜的問題,(4) 真實場景中,對某個對象區(qū)域可能存在多次重疊采樣。
截至目前,即使是 Hard Attention 和 structured Attention 表現(xiàn)也并不樂觀(所列舉的論文采用限制 Attention 每次作用域單個 Bounding box),直觀的解釋比如一張圖片有兩只貓,各自分得了 0.5 的權(quán)重,在做信息加權(quán)時候,則又退化到一只貓的情況。另外文章還表示 sigmoid 函數(shù)作為激活函數(shù),在處理計數(shù)問題時,效果并不好。
3. Counting Component
本文的關(guān)鍵思想在于將相關(guān) object proposal 描述成點 V, 其間的內(nèi)部與外部關(guān)系描述成邊 E,形成圖 G=(V,E)G = (V, E)G=(V,E),全文設計策略,通過在極端情況分析,設計算法,而實際的激活函數(shù)學習到的參數(shù)可適用于真實場景。
6、Robust
現(xiàn)在的VQA模型有各種各樣的魯棒性問題,針對模型的某一個問題,加以改進就可以提高模型的準確率。
(1)Cycle-Consistency for Robust Visual Question Answering(可參考鏈接)
該篇文章針對的是當某一個問題有其他語法形式表達,兩者的意思是完全一樣的,但是會出現(xiàn)答案不一致的魯棒性問題。
本文給出:
VQA-Rephrasing數(shù)據(jù)集從VQA v2.0發(fā)展而來,包含4萬個圖像,對應的4萬個問題通過人工改寫成了3個表述方式不同的問題語句。?
如果我們用Q表示問題,I?表示圖像,A?表示答案,那么一個VQA問題(上圖中的a)可以表示為:F:(Q, I) → A′,一個VQG問題(上圖中的b)可以表示為:G:(A, I) → Q′。如果給定一個(I,Q,A)元組,我們首先可以根據(jù)原始問題Q在VQA模型中獲得一個預測答案A',然后用預測答案A'和圖像?I?可以在VQG模型中生成一個原問題的改述問題Q′,最后我們可以根據(jù)Q'再生成A'',作者認為一個具有魯棒性的VQA模型,改述問題Q'在語法和語義上正確,且跟原問題Q表述一致,對于問題Q和改述問題Q',回答的答案應該相同,下面進行詳細分析該框架。
引入了生成對抗網(wǎng)絡中CycleGAN提出的循環(huán)一致性(cycle-consistency)原理:
- (a) 重新生成的問題和答案應與ground-truth保持一致
- (b) 視覺問題生成模塊的架構(gòu)細節(jié)
(2)Self-Critical Reasoning for Robust Visual Question Answering
本篇論文的出發(fā)點是當前的VQA模型會由于數(shù)據(jù)分布的原因,由于語言先驗強,深度學習系統(tǒng)傾向于在訓練數(shù)據(jù)中捕獲表面的統(tǒng)計相關(guān)性,而不能推廣到具有顯著不同的問題回答(QA)分布的測試數(shù)據(jù)。回答問題不考慮圖片的內(nèi)容,所以針對這個情況作者采用增強對正確答案對圖片中region的敏感度,
?(3)RUBi: Reducing Unimodal Biases in Visual Question Answering
這篇文章針對目前的模型存在依賴于問題和答案之間的統(tǒng)計規(guī)律,比如問題是香蕉是什么顏色,因為訓練數(shù)據(jù)中大部分香蕉是黃色,在測試數(shù)據(jù)中圖片中即使是有綠色的香蕉也無法正確回答。所以模型即使不考慮圖片的因素也能回答問題,所以針對這類問題作者采用了增加一個只有問題的分支來增強模型的魯棒性。
如上圖所示,在右側(cè)模型中增加了一個只有問題的分支,在訓練期間,分支充當代理,防止VQA模型出現(xiàn)學習偏差。在訓練結(jié)束時,我們只需刪除分支并使用來自基本VQA模型的預測。?
?
本文主要是使用單獨問題分支的輸出與VQA模型的輸出進行點積,降低VQA模型的bias,比如上圖中如果是黃色香蕉,與問題分支的mask進行點積后得到的輸出loss減小,相當于減小了這個例子的重要性,對于參數(shù)的改變也就小了。如果是綠色香蕉,點積之后Loss增大,增大了這個例子的作用,對模型的參數(shù)修改更大。
最后訓練過程中整個模型的Loss包括兩部分,第二部分中的loss只修改問題分支中的分類和神經(jīng)網(wǎng)絡nn的參數(shù),對問題的embedding的參數(shù)由第一個Loss修改,兩個分支共享對問題的embedding的參數(shù)。
(4)Answer Them All! Toward Universal Visual Question Answering Models(可以參考鏈接)
VQA的研究分為兩個營地:一個是注重VQA數(shù)據(jù)集需要自然圖像的理解,二是注重合成數(shù)據(jù)集的推理。一個好的VQA模型能夠兼顧這兩個方面,所以作者比較了5個VQA算法在這兩個方面的表現(xiàn),并用了8個VQA數(shù)據(jù)集。作者的實驗表明這些方法同時在這兩個領域不具有泛化能力,因此作者提出了一個新的VQA模型以解決這個問題。
?
7.Sence Text
這個分類下強調(diào)VQA問題下一部分是對圖片中的文本進行提問,回答問題需要找到文本,然后對文本進行分析得到最終的結(jié)果。
(1)Scene Text Visual Question Answering
本篇文章主要是提出一個數(shù)據(jù)集,數(shù)據(jù)集中的問題需要通過分析圖片中的文本進行回答。
(2)Towards VQA Models That Can Read?
首先,作者引入一個新的TextVQA數(shù)據(jù)集來促進在這個重要問題上的進展。現(xiàn)有的數(shù)據(jù)集要么有一小部分關(guān)于文本的問題(例如,VQA數(shù)據(jù)集),要么太小(例如,VizWiz數(shù)據(jù)集)。TextVQA包含45,336個問題,涉及28,408張圖像,需要對文本進行推理才能回答。其次,作者引入一個新的模型架構(gòu),圖像中讀取文本,原因在圖像的背景和問題,并預測答案可能基于文本和圖像的扣除或由字符串中發(fā)現(xiàn)的形象。因此,稱方法為Look、Read、Reason & Answer(LoRRA) .我們在TextVQA數(shù)據(jù)集中展示了LoRRA優(yōu)于現(xiàn)有的最先進的VQA模型。我們發(fā)現(xiàn),在TextVQA上,人類性能和機器性能之間的差距明顯大于VQA 2.0,這表明TextVQA非常適合沿著與VQA 2.0互補的方向?qū)M展進行基準測試。
作者提出的方法是查看圖像,讀取它的文本,關(guān)于圖像和文本內(nèi)容的原因,然后回答,或者從固定的答案詞匯表中選擇一個答案a,或者選擇OCR字符串s中的一個。虛線表示沒有經(jīng)過聯(lián)合訓練的組件。右邊的方塊顏色越深,注意力越重。OCR令牌20在示例中具有最高的注意權(quán)重。
VQA 組件:?紅色、藍色部分和通用的VQA模型基本相同,問題的句子先對自身做self-attetion,然后再對faster-rcnn提取的圖像region 特征做spatial-attetion。選擇了用GloVe來編碼詞向量。
Read 組件:對圖片中包含文字的區(qū)域做OCR。OCR模型可以從圖像中讀取并返回一串單詞。假設獲取了M個單詞,就可以用預先訓練好的FastText進行詞嵌入的編碼。后面的contextual attetion和前面VQA的類似。在加權(quán)注意過程中,由于特征與權(quán)重相乘,然后取平均值,排序信息就會丟失。所以將注意力權(quán)重與最終的權(quán)重平均特性連接起來。這允許Answer模塊按順序知道每個令牌的原始注意權(quán)重。
Answer 組件:在固定的回答空間中,當前的VQA模型只能預測固定的標記。由于圖像中的文本經(jīng)常包含訓練時沒有看到的單詞,因此很難僅根據(jù)預定義的答案空間來回答基于文本的問題。所以本文選擇對詞表進行擴展,即將N個tokens也添加到答案空間里。根據(jù)Read組件里的權(quán)重,權(quán)重最大的即為預測的答案。如果模型預測的索引大于N(即,在答案空間的最后M個令牌中),直接“復制”相應的OCR令牌作為預測答案。?
?
總結(jié)
以上是生活随笔為你收集整理的2019年VQA论文整理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电子科技大学《图论及其应用》复习总结--
- 下一篇: Jensen不等式