VQA背景概括(簡介、方法、數據集)


本文為論文《Visual Question Answering: A Survey of Methods and Datasets》的閱讀筆記,論文是17年的,所以暫時不包括近三年的進展,后續學習過程中將逐漸更新。

Abstract

VQA是一項結合了CV和NLP的任務,給定一張圖片和一個問題,它的目標是從圖片的視覺信息中推理出問題的正確答案。
本文總結了VQA領域的方法、數據集以及評估方式。

Introduction

VQA和其他CV任務的區別是,它回答的問題直到run time才確定,因此它更接近general image understainding。
VQA比image caption更復雜,因為它往往需要圖像以外的信息。另外VQA的答案往往更簡短,因此也更容易和ground truth比較。
VQA的難點在於圖像是高維信息,缺少語法規則和結構,也不能直接使用句法分析、正則表達式等NLP方法。此外,圖像捕捉到的信息更接近現實世界,而語言本身就是一種抽象。

Methods

---Joint embedding

joint embedding的目的是在common space中學習到CV和NLP任務的representation。它是大多數VQA 方法的基礎。
所使用的image representations一般是在object recognition上預訓練的CNN,text representations一般是在large text corpora上預訓練word embedding,然后將問題中words的embedding送入到RNN中,用於解決變長序列。
Neural-Image-QA:Question和image features被一起送入encoder LSTM,生成一個固定長度的vector后進入decoder LSTM,每次迭代生成一個word,這個word會被傳入到下一個recurrent中直到end symbol出現。
DPPnet:CNN with a dynamic parameter layer,weights由question決定。為了得到adaptive parameter,引入了一個GRUs組成的獨立的parameter prediction network,輸入question,輸出candidate weights。
MCB:Multimodal Compact Bilinear pooling,將image和text features隨機投影到高維空間,然后在傅立葉空間進行卷積。

---Attention mechanisms

上述方法大多使用global features來表示visual input,會引入不相關的信息,attention機制使用local features,並允許模型在不同regions給予不同weights。在VQA中即專注於與question相關的regions。
《Show, Attend and Tell: Neural Image Caption Generation with Visual Attention》是attention機制在visual tasks中的一個早期應用。
QAM:Question-guided Attention Map,通過卷積核在spatial image feature map中搜索與question語義相關的visual features。卷積核是將question embeddings轉換到visual space得到的。
SAN:Stacked Attention Networks
Attention技術提高了所有datasets上的表現,但是在binary questions上沒有帶來顯著提高。一種假設是是非型問題需要更長的推理鏈,而開放型問題往往只需要關注圖片的某一方面。

---Compositional models

這種方法是思路是構建模塊化的網絡,每個模塊對應着某種具體的功能。
NMN:Neural Module Networks,專門為VQA設計,可以利用question的語言結構。NMN會根據不同的question實時地計算出復雜度,然后用textual QA相關的策略,利用語義分析將question轉化為邏輯表達式。對question的分析使用的是Standford dependency parser。NMN對於復合結構的問題表現很好,但是在簡單問題上表現不佳,它的parsing模塊限制了網絡結構和糾錯的可能。

DMN:Dynamic Memory Networks,主要由4部分組成。Input module將數據轉換為vector,稱為facts,根據input類型決定具體實現;Question module使用GRU將question轉換為vector;Episodic memory module檢索出用於回答question的facts;Answer module使用memory的final state來給出答案。

---Knowledge base enhanced approaches

VQA通常需要先驗知識,例如“圖中有幾只哺乳動物“,因此joint embedding存在缺陷:只能獲取訓練集中已有的知識,不可能覆蓋真實世界的所有情況。因此一個解決方案是將推理過程與知識庫結合起來。
Ahab:使用最大的結構知識庫之一DBpedia,先用CNN提取圖片中的信息,然后將它們與DBpedia中類似的概念節點聯系起來,並學習從images/questions到知識圖中的queries的一個mapping,最終的答案根據query總結得到。
FVQA:改進了Ahab,使用LSTM和data-driven approach學習mapping,並使用兩個額外的數據庫,ConceptNet和WebChild。
ACK:首先用CNN從image中提取語義屬性,然后從DBpedia中檢索相關的知識,利用Doc2Vec轉換為定長vectors。LSTM會接收這些模型,並interprets with question,最后得到答案。

Datasets and evaluation

VQA的data至少為一個image、question、answer的三元組。
DAQUAR:First VQA dataset designed as benchmark,DAtaset for QUestion Answering on Real-world images。1449 RGBD images,795 training,654 testing。有2種問答pairs,一種是使用8種模板合成的,一種是人工標注的。共有12468個問題,6794 training,5674 testing。

COCO-QA:123287 images,72783 training,38948 testing。每個image有一個問答pair,由COCO dataset中的image descriptions轉換而來

VQA:使用最廣泛的數據集之一,2017年更新為VQA v2.0,包含使用真實圖片的VQA-real和卡通圖片的VQA-abstract。VQA-real包含123287 training和81424 test images from COCO,由真人提供開放型和是非型問題和多種候選答案,共614163個questions。VQA-abstract包括50000scenes,每個scene對應3個questions

Visual Genome:1.7 million questions/answer pairs,問題包括free-form和region-based兩種形式,比VQA-real更具多樣性。

Visual7W:Visual Genome的一個子集。
Other datasets:使用外部知識庫的KB-VQA、FVQA,較簡單的Diagrams、Shapes。

Evaluation Measures

為了對answer進行評估,句法和語義的正確性都需要考慮,因此大多數VQA datasets的answer被限制為3個words以下。
WUPS:Wu-Palmer Similarity,在taxonomy tree中比較兩者的common subsequence,當similarity超過某一閾值就認為是正確答案,一般使用0.9和0.0兩種閾值。
在VQA數據集中,只有當3個以上的人(共10個)提供了該答案,才認為給出的答案是正確的。


免責聲明!

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



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