超50篇论文串联起从VQA到多模态预训练大模型的前世今生—Part 1
文章簡介
本文從視覺問答(VQA)任務出發,講述了 2015 年任務的定義開始,接踵出現的各種多模態技術。從無注意力機制的深度學習模型,發展到天然適合注意力機制的多模態場景的模型,再到基于 Transformer 模型的即將到來的多模態領域大一統模型。其中,穿插了一些有趣的技術梳理,比如非深度學習技術和工程型優化的技術等。
筆者利用課余時間收集整理,耗時一年撰寫本文章,經歷了三個版本迭代,旨在為同學們入門多模態預訓練大模型領域提供一些力所能及的幫助。經過對多模態領域模型與方法演化進程的梳理,筆者認為這一領域的研究前景較為樂觀,如果未來真的會有“大一統模型”,那么它將出現在多模態領域。
作者信息
王軍杰
粵港澳大灣區數字經濟研究院(IDEA研究院)實習研究博士生
清華大學2021級客座學生、早稻田大學博士生(指導老師:楊余久、酒井哲也)
序言作者
張家興
IDEA研究院CCNL 講席科學家
張家興博士現任 IDEA 研究院認知計算與自然語言研究中心(簡稱“IDEA CCNL”)講席科學家兼負責人,攜 IDEA CCNL 科研團隊建設了“封神榜”大模型體系,并致力于推動以預訓練大模型為代表的新一代認知計算與自然語言技術的進一步發展及其產業落地。他于 2006 年北京大學博士畢業,曾任微軟亞洲研究院研究員、螞蟻金服資深算法專家、360 數科首席科學家。張家興博士是大數據框架、深度學習框架、深度學習算法的早期開創者和實踐者,引領深度學習在工業界場景中落地,在金融領域產生廣泛影響力。他在自然語言處理、深度學習、分布式系統、物理等領域的頂級學術會議和期刊(NIPS, OSDI, CVPR, SIGMOD, NSDI, AAAI, WWW...)上發表二十余篇學術論文,提交七十余項專利。
Before everything
Github:
https://github.com/wanng-ide/VQA_to_multimodal_survey
歡迎來到多模態的世界!本文主要是對 VQA 任務以及延伸至多模態領域做一個綜述,而非專業論文,旨在整理所見所聞以幫助同學快速了解該領域的發展和脈絡。
信息來源包括但不限于以下材料:
1. Visual Question Answering using Deep Learning: A Survey and Performance Analysis
https://arxiv.org/abs/1909.01860
2. Visual Question Answering: A Survey of Methods and Datasets
https://arxiv.org/abs/1607.05910
3. Survey of Visual Question Answering: Datasets and Techniques
https://arxiv.org/abs/1705.03865
4. 視覺問答-1_綜述.md
https://github.com/shengnian/Algorithm_Interview_Notes-Chinese/blob/master/B-自然語言處理/D-視覺問答-1_綜述.md
5. Visual Question Answering: Datasets, Algorithms, and Future Challenges
https://arxiv.org/abs/1610.01465
總體結構
● VQA 任務是什么
●?介紹之前的模型和方法
●?歡迎來到 Transformer 的時代
2019:嘗試多模態表征
2020:擁抱多模態表征
2021:統一構架的探索?
●?下游任務(VQA 等)
●?更多其他有趣的論文
本 Part 1 主要介紹:
●?VQA 任務是什么
●?介紹之前的模型和方法
版本迭代
第一版(2020.10):
梗概以及整體框架的確定
VQA的相關數據集,2015-2018的部分模型
第二版(2022.01):
修改了文章的結構,優化了可讀性
增加了2019到2021年的部分模型
增加了部分數據集的介紹
之前的模型的一些錯誤修正
添加了一些新坑
第三版(2022.02):
增加了2021-2022的部分模型
重修了2015-2019的模型解釋
不再局限于VQA而是多模態任務
重新規劃了文章結構把VQA相關數據集轉移到了下游任務章節中
挖下更多的坑
/ 序
十萬年前的非洲大草原上,當一個智人壓低聲音對他的同伴說:“小心,遠處有只獅子。”一個多模態認知任務隨即產生了。眼中看到的各種圖像塊,耳中聽到的“小心”、“遠處”、“獅子”這些音節,在智人的大腦皮層中,構建出了一個意義,指導著他的行動。不能完成這個任務的智人,被獅子吃掉了,沒能跨越進化的檻并淹沒在了歷史洪流之中。因而,今天地球上的人類,都是多模態認知的大師,這些大師通過五感接收信息,依賴著大腦中一百多億個神經元認知周圍的意義。那么機器呢?機器要如何通過多模態認知這個世界?
認知是一種計算。生物大腦中,神經元突觸之間傳遞的電脈沖信號,神經元與膠質細胞之間的互動,是一種連續空間中的計算。而數字計算機里二進制狀態通過邏輯門的變換,是一種離散空間中的計算。盡管存在于離散空間的通用圖靈機并不能完成世間所有的計算,但我們仍舊相信實現了通用圖靈機的數字計算機,可以進一步實現認知的計算。
計算存在于一種結構。人的大腦從最基礎的圖像塊和音節開始,從下到上逐步計算,構建了圖像和語言各自的意義,最后又在大腦皮層中進行了多模態的整合。生命在億萬年的進化中,找到了進行多模態認知計算的結構。那么機器的多模態認知計算結構該是怎樣?
近 10 年深度學習的發展,讓我們探索出越來越好的計算結構。在一個圖像中,像素和圖像塊在二維平面用他們的相對位置表達著意義,因此對圖像的理解也可以對應著一個二維計算結構。受到生物視覺神經系統的啟發,逐層處理圖像塊的卷積神經網絡(CNN)被提出。在新世紀第二個十年,卷積神經網絡在強大算力的支撐下,推動了計算機視覺技術的應用落地,并且創造了一個 AI 產業。
不同于圖像的二維結構,句子是由一個個詞語構成的一維結構,專門處理序列的循環神經網絡(RNN)通常被用來處理語言,但是這種古老的計算結構顯然已不再勝任語言這種有信息層級的任務。從 2018 年開始,一種新計算結構 Transformer 迅速地取代了循環神經網絡。Transformer 作為新世紀第一個被提出的基礎計算結構,超越了它的前輩卷積神經網絡和循環神經網絡,用注意力結構代替了曾經的卷積和循環結構,并且從語言擴展到圖像,成為了認知智能統一的底層計算結構。
統一的計算結構帶來了更多的好處,多模態的融合也終于可以在一個計算結構中進行。認知計算結構的變遷,是新的技術范式取代舊的范式,新的計算結構 Transformer 帶來的全面優勢,吸引了幾乎全部研究和應用的注意力,而舊的計算結構(CNN, RNN)只能去尋找它們適合的其他應用領域。
認知能力依賴于多任務學習。生物在億萬年的進化中,解決了無數個任務,不能解決關鍵任務的生物個體,就像那個被獅子吃掉的智人,其后代無法存活于這個世界。我們想讓機器具備多模態認知能力,也必須為機器構造包含圖像和語言的各種學習任務,恢復句子中掩蔽的詞(MLM)、恢復圖像中被掩蔽的圖像塊(MAE)、匹配圖像和文本(ITM)。
新的計算結構也使得我們在構造學習任務上有了更多的選擇。在機器學習的過程中,當深度神經網絡逐漸越來越好地完成了這些學習任務,也就意味著它逐步具備了多模態認知的能力。但隨著神經網絡結構越來越大,構造并完成這些學習任務所需要的數據和算力也越來越大。終于,認知智能與生物面臨了同樣的挑戰:學習和進化的成本。一萬個智人被獅子吃掉,才會誕生一個學會俯下身的聰明智人。那一萬個被吃掉的智人,就是生物進化的成本。
讓機器具備多模態認知的能力,同樣需要巨大的算力成本。我們當下的技術水平,是否已經準備好去迎接這一變革了呢?或許某一天,腦科學的進步,新算力形式的出現,甚至能源技術和太空技術的重大突破,都有可能讓機器追上生物40億年的進化,超越人類對圖像和語言的多模態認知能力。
若干年后的非洲大草原,背著獵槍的智人向他的機器人伙伴壓低聲音說“小心,遠處有只獅子”。機器人俯下身子,卻突然開始思考:“為什么獅子會淪落成人類的獵物?”然后,機器人輕輕地站了起來,向獅子揮了揮手......
——張家興
粵港澳大灣區數字經濟研究院(福田)
認知計算與自然語言研究中心?講席科學家
VQA任務簡介
VQA 介于圖像理解(CV)和自然語言處理(NLP)的交集。VQA 任務的目的是開發出一種系統來回答有關輸入圖像的特定問題。答案可以采用以下任何形式:單詞,短語,二元答案,多項選擇答案或文本填空。
在 CV 領域,CNN 是當前非常重要的基礎模型。進而產生了 VGGNet,Inception,ResNet 等模型。類似的,NLP 領域,RNN 是之前主要的模型架構,因為 LSTM 的引入使得 RNN 有了重大突破。如 Vanilla VQA 模型使用了 VGGNet 和 LSTM 相結合的方法。后來在 NLP 領域的注意力機制(Attention Mechanism)也開始在 CV 領域開始得到應用。就有了 Stacked Attention Network 等。
2018 年 BERT 橫空出世,在 NLP 領域掀起了革命。所以近兩年,BERT 也開始進入到 VQA 任務中,BERT 一開始是用于替換 RNN 來處理文本。但是在 2019,2020 年開始,一些模型(如,VL-BERT)開始把簡單有效的 Transformer 模型作為主干并進行拓展,視覺和語言嵌入特征可以同時作為輸入。然后進行預訓練以兼容下游的所有視覺-語言聯合任務。
1.1 VQA和NLP任務的區別
我們來看下面的這張圖
其中,machine reading comprehension(MRC)和 question answering(QA)的關系其實是相對獨立的。在本圖中,Pure VQA 任務一般是沒有引入額外的 context,只是單純的有 {圖,問句,回答}。而 Multimodal MRC 任務,實際上就只是引入了額外的 context 作為 VQA 任務的知識,并且更加注重于自然語言的理解。下圖可以給出一個來自 TQA 數據集的例子。(該數據集主要來自課本)
既然講到了 MRC 不妨提一下,MRC 的主要任務類型一共有四種,分別為完形填空(Cloze Style)、多項選擇(Multiple Choice)、片段抽取(Span Prediction)和自由作答(Free-form Answer)。大多數現有的 MRC 任務都是文本問題解答任務,因此將這種機器閱讀理解任務視為典型的機器閱讀理解任務(Typical MRC)。
關于 VQA 和 Textual Question Answering(TQA)的不同,主要是數據集信息形式的不同。
1.2 VQA和CV任務的區別
●? VQA 的總體目標是從圖像中提取與問題相關的語義信息,從細微物體的檢測到抽象場景的推理。
●??大多數 CV 任務都需要從圖像中提取信息,但與 VQA 相比都存在某些局限性。
●??但是實際上,由于 VQA 中問題會提供一定的場景,在這個場景下,答案的粒度是一定的。并且是有明確的答案,所以相對來說 VQA 的評價要相對簡單一些。
基于對象檢測的任務
對象識別、動作識別和場景分類都可以被定義為圖像分類任務,現在最好的方法是使用 CNN 進行訓練,將圖像分類為特定的語義類別。
對象識別一般只需要對圖像中的主要對象進行分類,而不用理解其在整個場景中的空間位置或作用。
目標檢測通過對圖像中每個對象實例放置一個邊界框來定位特定的語義概念。
語義分割通過將每個像素分類為一個特定的語義類,使定位的任務更進一步。
實例分割(Instance segmentation)用于區分同一語義類的不同實例。
標簽歧義
▲ 左:目標檢測,右:語義分割
語義分割或實例分割都不足以全面理解整個場景
其中主要的問題在于標簽歧義(label ambiguity)
比如上述圖中“黃叉”的位置取"bag"、"black"、"person"之一都沒有問題。
一般來說,具體選取哪個標簽,取決于具體的任務。
此外,目前的主流方法(CNN+標簽)不足以理解物體在整個場景下的作用(role)
比如,將“黃叉”位置標記為"bag"不足以了解該包與人的關系;或者標記為"person"也不能知道這個人的狀態(跑、坐、...)
1.3 圖像描述任務
除了 VQA 外,圖像描述(image captioning)是另一個比較主流的、需要結合 CV 和 NLP 的任務。圖像描述任務的目標是對給定圖像生成相關的自然語言描述。
結合 NLP 中的一些方法(RNN 等),生成描述有不同的解決方案。
但是,圖像描述的另一個難點是評價。
一些自動評價方法:BLEU、ROUGE、METEOR、CIDEr
這些方法中,除了 CIDEr,最初都是為了評價機器翻譯的結果而提出的。
這些方法每一個都存在一些局限性,它們常常將由機器生成的標題排在人工標題之前,但從人的角度看,這些結果并不夠好,或者說不是目標描述。
評價的一個難點在于,給定圖像可以存在許多有效的標題,這些標題可以比較寬泛,也可能很具體。
比如上面的圖中既可以描述為"A busy town sidewalk next to street parking and intersections.";
也可以使用 "A woman jogging with a dog on a leash."
如果不加限制,圖像描述系統總是傾向于生成得分更高的表述。
比如 "A person is walking down a street" 或 "Several cars are parked on the side of the road" 這些普適的描述總是會得到較高的排名(Rank)。
事實上,一個簡單圖像描述系統,只要使用 KNN 等方法找到與給定圖像比較相似的圖像,并把它們的描述返回就能在部分評估指標下得到不錯的分數。
曾經的主流模型與方法
一般來說,我們可以在 VQA 中概述這些方法:
從問題中提取特征(LSTM, GRU,BERT)
從圖像中提取特征(VGGNet, ResNet, GoogLeNet, ImageNet)
結合這些特征來生成一個答案(目前主要有基于分類和生成兩種方法)
2.1 非深度學習方法
現在都是基于深度學習了,但是這里依然寫上,主要是為了時候可以用這些方法來改進深度學習模型或者是有什么別的未發現的點。
2.1.1 回答類型預測Answer Type Prediction(ATP)
Answer-Type Prediction for Visual Question Answering
https://readpaper.com/paper/2442626797
https://www.chriskanan.com/wp-content/uploads/Kafle2016.pdf
(Kafle and Kanan,2016)提出了 VQA 的貝葉斯框架,其中他們預測問題的答案類型并使用它來生成答案。可能的答案類型因其考慮的數據集而異。例如,對于 COCO-QA,他們考慮四種答案類型:對象,顏色,計數和位置。
他們的模型根據圖像 x 和問題 q 計算出答案 a 和答案類型 t 的概率。
使用語義分割來識別圖像中的對象及其位置。
他們使用 ResNet 來處理圖像,并跳級思考向量(skip-thought vectors)來處理文本。
然后,利用貝葉斯算法對目標的空間關系進行建模,計算出每個答案的概率。
是較早的 VQA 解決方案,但其有效性不如簡單的基線模型;部分原因在于其依賴語義分割的結果。
2.1.2 多元世界問答 Multi-World QA
A Multi-World Approach to Question Answering about Real-World Scenes based on Uncertain Input
https://readpaper.com/paper/2951619830
https://arxiv.org/abs/1410.0210
(Malinowski and Fritz,2014)這篇論文將基于問題和圖像的答案概率建模為
這里 T 為隱藏變量,它對應于從問題語義分析器(semantic parser)得到的語義樹(semantic?tree)。W 是世界,代表圖像。它可以是原始圖像或從分割塊獲得的附加特征。使用確定性評價(deterministic evaluation)函數來評估 P(A|T,W)。使用簡單的對數線性模型得到 P(T|Q)。這個模型被稱為 SWQA。
作者進一步將其擴展到多元世界的場景,用來模擬分割和分類標簽的不確定性。不同的標簽代表不同的 W,所以概率模型為
這里,S 是帶有類標簽分布的一組分割圖像集。因此,從分布中抽樣分割圖像時將得到其對應的一個可能的 W。由于上述方程很復雜,作者僅從 S 中抽樣固定數量的 W。
2.2 無注意機制的深度學習模型 Non-attention Deep Learning Models
VQA 的深度學習模型通常使用卷積神經網絡(CNN)來嵌入圖像與循環神經網絡(RNN)的詞嵌入(word embedding)來嵌入問題。這些嵌入以各種方式組合和處理以獲得答案。
2.2.1 iBOWING
CNN(GoogLeNet)
BoW
Simple Baseline for Visual Question Answering
https://readpaper.com/paper/2190656909
https://arxiv.org/abs/1512.02167
Github:
https://github.com/metalbubble/VQAbaseline
(Zhou,2015)提出了一種叫做 iBOWING 的基線模型。他們使用預訓練的 GoogLeNet 圖像分類模型的層輸出來提取圖像特征。問題中每個詞的詞嵌入都被視為文本特征,因此文本特征是簡單的詞袋(bag-of-word)。連接圖像和文本的特征,同時對答案分類使用 softmax 回歸。結果表明,該模型在 VQA 數據集上表現的性能與幾種 RNN 方法相當。
作者的靈感來源于早期的一篇文章,BOWIMG baseline(Bag-of-words + image feature)在 COCO 數據集上的效果要比 LSTM 要好一些,但是在更大一些的 COCO VQA 數據集上,BOWIMG baseline 卻表現比 LSTM 更糟。基于此,作者提出了 iBOWIMG 模型。
訓練過程中作者提到了兩個小細節:
Learning rate and weight clip(學習率和權值截取):作者發現設置不同的學習率和權值截取對于詞嵌入和 softmax 都有性能的提升。在詞嵌入層的學習率要高于 softmax 的學習率。
Model parameters to tune(模型參數微調):需要調整的有 3 個參數,訓練的 epoch,權值截取和學習率,低頻 QA 的閾值。
2.2.2 Full-CNN
CNN only
Learning to Answer Questions From Image Using Convolutional Neural Network
https://readpaper.com/paper/1606748815
https://arxiv.org/abs/1506.00333
(Ma,2015)提出了一種僅用 CNN 的模型,稱為 Full-CNN。模型使用三種不同的 CNN。
編碼圖像
于編碼問題
將圖像和問題的編碼結合在一起并產生聯合表征
圖像 CNN 使用與 VGG 網絡相同的架構,并從該網絡的第二層獲取長度為 4096 的向量。這通過另一個完全連接的層,以獲得大小為 400 的圖像表征向量。
句子 CNN 涉及 3 層卷積和最大池化(max pooling)。卷積感受野(receptive field)的大小設置為 3。換句話說,核函數(kernel)會計算該詞及其相鄰的鄰居。
聯合 CNN 稱為多元模態 CNN(multi-modal CNN),在問題表征上的卷積感受野大小為 2。每個卷積運算都在完整的圖像上進行。將多元模態 CNN 的最終表征結果傳入 softmax 層以預測答案。
2.2.3 神經元詢問 Ask Your Neurons(AYN)
CNN
RNN(LSTM)
Ask Your Neurons: A Deep Learning Approach to Visual Question Answering
https://readpaper.com/paper/2963981422
https://arxiv.org/abs/1605.02697
Github:
https://github.com/mateuszmalinowski/visual_turing_test-tutorial
(Malinowski, 2016)以 CNN 和 LSTM 為基礎,以一種新的使用方式,設計了一個預測結果長度可變的模型。該模型將視覺問答任務視為結合圖像信息作為輔助的 sequence to sequence 任務。
首先由一個預訓練好的深度 CNN 模型抽取出要回答的圖片特征,然后將圖片特征和轉化為詞向量的問題詞一起送入 LSTM 網絡,在每次送入一個問題詞的同時將圖片特征送入網絡,直到所有的問題特征信息抽取完畢。接下來用同一個 LSTM 網絡產生答案,直至產生結束符 ($) 為止。該模型的訓練過程是結合圖像特征的 LSTM 網絡的訓練以及詞向量的生成器的訓練。
解碼答案可以用兩種不同的方式,一種是對不同答案的分類,另一種是答案的生成。分類由完全連接層生成輸出并傳入覆蓋所有可能答案的 softmax 函數。另一方面,生成由解碼器 LSTM 執行。在每個時間點的 LSTM 將前面生成的詞以及問題和圖像編碼作為輸入。下一個詞使用覆蓋詞匯表的 softmax 函數來預測。需要注意的一點是,該模型在編碼器和解碼器 LSTM 之間共享一些權重。
2.2.4 Vis + LSTM
CNN(VGG Net)
RNN(LSTM)
Exploring Models and Data for Image Question Answering
https://arxiv.org/abs/1505.02074
https://readpaper.com/paper/1575833922
Github 1:
https://github.com/abhshkdz/neural-vqa
Github 2:
https://github.com/renmengye/imageqa-public
Github 3:
https://github.com/VedantYadav/VQA
論文(Ren et al., 2015)有以下幾點貢獻:
提出一個 end-to-end QA 模型,這個模型利用 visual semantic embedding ?連接 CNN, RNN。
提出一個自動問題生成算法,這個算法可以將描述圖像的句子轉化為問題
基于以上算法生成 COCO-QA 數據集
該模型與 AYN 模型非常相似。該模型使用 VGG Net 的最后一層隱藏層作為visual embeddings,并且在訓練期間保持 CNN 不變。與之前的模型相反,在編碼問題之前,它們將圖像編碼作為第一個“詞”傳入 LSTM 網絡。該 LSTM 的輸出先通過完全連接層,然后通過 softmax 層。
作者還提出了一種使用雙向 LSTM 的 2Vis+BLSTM 模型。向后的 LSTM 也將圖像編碼作為第一個輸入。兩個 LSTM 的輸出相連接,然后通過一個 dense 和 softmax 層。
一共四個模型:
Vis + LSTM
2-Vis + BiLSTM
IMG + BOW
FULL(以上三個模型的平均)
2.2.5 Vanilla VQA(deeper LSTM Q + norm I)
CNN(VGG Net)
RNN(2 layer LSTM)
說老實話,這個模型的名字只有在"Visual Question Answering using Deep Learning: A Survey and Performance Analysis"這里看到過。實際上應該是在論文"VQA: Visual Question Answering"中所描述的 "deeper LSTM Q + norm I"。
Visual Question Answering using Deep Learning: A Survey and Performance Analysis
https://arxiv.org/abs/1909.01860
VQA: Visual Question Answering
https://arxiv.org/pdf/1505.00468.pdf
Github:
https://github.com/GT-Vision-Lab/VQA_LSTM_CNN
圖像:
I:利用 VGGNet 最后一層隱藏層的激活作為 4096- dim 圖像嵌入。
norm I:這些是在 VGGNet 的最后一個隱藏層使用 L2 正則化激活。
問題:
詞袋問題(BoW Q)問題和答案的第一個單詞有很強的相關性。選擇前 30 個創建一個詞袋。
LSTM Q 具有一個隱藏層的 lstm 對 1024 維的問題進行嵌入。對對每一個問題字進行編碼,采用全連通層 + tanh 將其進行 300 維嵌入,然后供給 LSTM。
deeper LSTM Q:使用具有兩層隱藏 LSTM 將問題進行 2048 維嵌入,然后利用全連通層 + tanh 非線性函數將 2048-dim 嵌入變換為 1024 維。
多層感知機:將圖像和問題結合。首先通過全連通層 + tanh 非線性將圖像嵌入變換為 1024-dim 來匹配問題的 LSTM 嵌入。轉換后的圖像和 LSTM 嵌入(在公共空間中)然后通過元素的乘法進行融合。
2.2.6 動態參數預測 Dynamic Parameter Prediction(DPPnet)
CNN(VGG-16 -> 3 fully-connect + DPN)
RNN(GRU)
Image Question Answering using Convolutional Neural Networ with Dynamic Parameter Prediction
https://readpaper.com/paper/2964138017
https://arxiv.org/abs/1511.05756
項目主頁:
http://cvlab.postech.ac.kr/research/dppnet/
Github:
https://github.com/HyeonwooNoh/DPPnet
(Noh,2016)論文中的主要貢獻:
采用 CNNc+DPN 處理 ImageQA 任務,DPN 的參數根據給定問題動態生成
采用一個 Hash trick 對參數降維
通過在一個大的文本集上 fine-tune GRU,提升網路的泛化性能
首次同時在 DAQUAR, COCO-QA, VQA 上進行實驗
作者認為,設定一組固定參數并不足以滿足 VQA 任務。他們采用 VGG-16 網絡架構,刪除最終softmax 層,并添加三個全連接層,并最后使用覆蓋所有可能答案的 softmax 函數。這些完全連接層的第 2 層沒有固定的一組參數。
相反,參數來自 GRU 網絡。該 GRU 網絡用于對問題進行編碼,并且 GRU 網絡的輸出通過完全連接層給出候選參數的權重小向量。然后使用逆哈希函數(inverse hashing function)將該向量映射到第 2 個全連接層所需的參數權重大向量中。這種哈希(hashing)技術被用于避免預測全部的參數權重而帶來的計算成本高昂,并避免由此導致的過擬合。或者可以將動態參數層視為將圖像表征和問題表征相乘得到的聯合表征,而不是傳統的以線性方式組合。
2.3 基于Attention的模型Attention Based Models
對于 VQA 任務,注意機制模型聚焦在圖像、問題或兩者的重要部分,從而有效地給出答案。
例如,如果問題是“球是什么顏色的?”那么需要更加集中球所包含的圖像區域。同樣,在問題中,需要集中“顏色”和“球”這兩個詞,因為它們比其他的詞更具信息性。
VQA 中,使用基于空間的 Attention 機制來創建特定區域的 CNN 特征,而不像基線模型中那樣直接使用全局特征。
Attention 背后的基本思想是,圖像中的某些視覺區域和問題中的某些單詞對于回答給定的問題比其他區域或單詞更能提供更多的信息。
2.3.1 Where To Look(WTL)
基于 Edge Boxes 的方法(木匾檢測)
相關論文:Edge Boxes: Locating Object Proposals from Edges
https://pdollar.github.io/files/papers/ZitnickDollarECCV14edgeBoxes.pdf
word2vec
主要的想法:學習語言和視覺區域的非線性映射將特征納入 共同的潛在空間以確定相關性。
Where to look: Focus regions for visual question answering
https://readpaper.com/paper/2179022885
https://arxiv.org/abs/1511.07394
概括:where to look(Shih, 2016)的地位有點相當于 VQA 方向 attention 的始祖 第一次提出了基于 QA 的圖像 region attention 因為文章為 2015 的比較早 因此使用方法還存在不少瑕疵:具體做法為該網絡只適用于 mc 類型的 VQA 輸入 QA 對,并置提取特征。圖像過邊緣檢測得 100 分區,過 cnn 得特征、將每個 region 的向量與 QA 特征向量作內積得 attention 系數權值。最后與文本特征并置加權求和得 weighted average features。然后過兩個層得 score,訓練時的 loss (hinge loss)。
整體模型:
圖像先經過區域選擇,對問題進行 embedding 操作;
用問題 embedding 對圖像區域計算注意力權重;
融合問題特征和圖像特征;
預測輸出。
Step1: Image features:
通過 edge boxes(邊緣檢測)預訓練網絡得到 top99 region,然后全圖算第 100 個 region(注意:其中聯合重疊閾值設定決定了區域的大小) 本 task region 稍微小點好。作者猜測增加 region number 可能能夠提升性能。用的 VGG,取的最后一個隱藏層 4096d 和前一個 softmax 層 1000d 并置共 5096d 因為 1000 那個包含物體類別信息。
Step2: Language representation:
首先將每個 word 通過 Google News dataset 進行預訓練的 w2v 得到單詞 representation(相同詞有相近的向量特征是 open-ended 前提)之后通過 4 個 Bin 得到四種 question sentence representation(而不是 LSTM)。
Bin1:問題前兩個詞特征的平均
Bin2:主語名詞特征
Bin3:其他所有名詞特征的平均
Bin4:去掉限定詞和冠詞之后的剩余詞特征的平均
Bin1+Bin2+Bin3+Bin4+answer representation=1500維 這就是整個的representation
Step3:Image 特征和 QA 特征都 FC 降維到 900 然后點積后 softmax 成 region probability
Step4:最后的向量 z 過一個兩層的 fc 后輸出一個 score 然后利用 Hingeloss 返回梯度
思考:
1. 為什么這里 bow 比 lstm 好?
2. bin 的方式為什么是前兩個詞?
2.3.2 循環空間注意 Recurrent Spatial Attention(R-SA)
CNN
RNN(LSTM)
Spatial Attention
Visual7W: Grounded Question Answering in Images
https://readpaper.com/paper/2962749469
https://arxiv.org/abs/1511.03416
在文中,(Zhu, 2016)對這個模型的命名為 Recurrent QA Models with Spatial Attention。
(Zhu, 2016)在兩個方面比上一個模型(WTL)超前一步。首先,它使用 LSTM 對問題進行編碼,其次,在掃描問題的每個詞之后,它重復地計算圖像的注意值。
2.3.3 堆疊注意網絡 Stacked Attention Networks(SAN)
CNN(VGG 19)
RNN/CNN(LSTM/TextCNN)
Attention(2 layers)
Stacked Attention Networks for Image Question Answering
https://readpaper.com/paper/2963954913
https://arxiv.org/abs/1511.02274
主要想法:在 VQA 任務中,按照人為的思路,先定位到自行車,再定位到自行車的籃子,最后看籃子上是什么。這是個推理的過程。所以用分層注意力機制來模擬這個過程。
概括:(Yang, 2016)采用 attention 機制來實現這種分層關注的推理過程。在問題特征提取和圖像特征提取的思路并沒有很特殊,采用 LSTM,CNN 網絡來提取特征。然后用問題特征去 attention 圖像,用 attention 的結果結合問題向量再次去 attention 圖像,最后產生預測。
圖像特征提取:
模型提取 VGG19 最后一個 Pooling 層的 feature map 作為區域特征,其大小為14*14*512。相當于把原始 4448*448 的圖像均勻劃分為 14*14 個網格(grid),每個網格使用一個 512 維的向量表示其特征。(14*14 是區域的數量,512 是每個區域向量的維度,每個 feature map 對應圖像中 32*32 大小的區域。)
問題特征:采用 LSTM 或者 TextCNN。
Stacked Attention:
對于復雜的問題,單一的 Attention 層并不足以定位正確的答案預測區域。本文使用多個 Attention 層迭代下列過程。
本文取 K=2
2.3.4 層次協同注意 Hierarchical Co-Attention model
CNN(VGG/ResNet)
RNN(LSTM)
Co-Attention
Hierarchical Question-Image Co-Attention for Visual Question Answering
https://readpaper.com/paper/2463565445
https://arxiv.org/abs/1606.00061
(Lu, 2016)進一步細化了問題,基于詞、短語、句子三個層級分別構建 Attention 權重。
Quesiotn Hierarchy:
word-level feature:問題映射到一個向量空間,換成詞向量
phrase-level feature:利用 1-D CNN 作用于 Qw,在每個單詞位置計算單詞向量和卷積核的內積,卷積核有三個 size,unigram,bigram and trigram。
question-level feature:將得到的 max-pooling 結果送入到 LSTM 中提取特征。全部過程如下圖。
兩種 Attenion 機制:parallel co-attention 和 alternative co-attention:
parallel co-attention 同時關注問題和圖像
alternative co-attention 同時在關注問題或圖像間交替進行
最終的答案通過由低到高依次融合三個層級的特征來預測
2.3.5?雙重注意網絡 DAN
CNN(VGGNet / ResNet)
RNN(LSTM)
Dual Attention
Dual Attention Networks for Multimodal Reasoning and Matching
https://readpaper.com/paper/2546696630
https://arxiv.org/abs/1611.00471
主要思想:(Hyeonseob Nam, 2017)引入兩種類型的 DANs(r-DAN用于多模式推理,m-DAN 用于多模式匹配)進行多模態推理,匹配以及分類。推理模型允許可視化并在協作推理期間用文本注意機制互相關聯。
Input:
Image representation 圖像特征:
從 19 層 VGGNet 或 152 層 ResNet 中提取的。我們首先將圖像重新縮放到 448×448 并將它們輸入到 CNN 中。為了獲得不同區域的特征向量,我們采用 VGGNet(pool5)的最后一個池化層或 ResNet 最后一個池化層(res5c)的下面一層。
Text representation 文本特征:
使用雙向 LSTM 來生成文本特征:提取出 T 個文本特征
Attention Mechanisms:
Visual Attention:分別將初始化的圖像特征向量(在 r-DAN 中為前一層的 memory vector 即前一層圖像特征與文本特征的點乘)和圖像的特征用兩層前饋神經網絡(FNN)相連,然后再用 tanh 激活并做點乘,然后用 softmax 做歸一化得到權重向量(N 維向量),利用權重向量將 N 個 2048 維的向量做加權平均,然后再乘以一個權重矩陣,最后再用 tanh 進行激活,得到圖像 attention 向量。
Textual Attention:將初始化的文本特征向量 query(在 r-DAN 中為前一層的 memory vector 即前一層圖像特征與文本特征的點乘)和文本的特征 key 用兩層前饋神經網絡(FNN)相連,然后再用 tanh 激活并做點乘,然后用 softmax 做歸一化得到權重向量(N 維向量),利用權重向量將 N 個 512 維的向量做加權平均,得到文本 attention 向量。
DAN:
解決了兩種不同的問題,都用到了前面的 Attention 機制,但是不同的問題,提出了 r-DAN(用于 VQA)和 m-DAN(用于 Image-Text Matching)兩種模型。
●?r-DAN for Visual Question Answering
VQA 本質上為分類問題,將圖像 attention 特征和文本 attention 特征融合得到 memory vector,做分類任務。
● m-DAN for Image-Text Matching
圖文匹配問題與 VQA 最大的不同就是,他要解決的是一個 Rank 問題,所以需要比對兩種特征之間的距離,因此就不能共享一個相同的 Memory Vector。
Loss Function: Triplet Loss(文章中沒有提到 hard 的思想,負樣本應該是在 minibatch 里面隨機選的)
2.3.6 Tips and Tricks for Visual Question Answering
Faster-RCNN
Glove Vectors
Tips and Tricks for Visual Question Answering: Learnings from the 2017 Challenge
https://readpaper.com/paper/2745132836
https://arxiv.org/abs/1708.02711
Github:
https://github.com/markdtw/vqa-winner-cvprw-2017
這是一篇很工程實踐性質的論文。
本文章作者(D Teney, 2017)獲得了 2017 VQA Challenge 的第一名,花費了 3000 小時的 GPU 運算。為了獲得第一名,文中使用了很多技巧來提升性能,但核心出發點都要依賴 joint embedding 和 multi-label classifier 方法來解決 VQA 問題的建模,換句話說就是利用視覺特征和語義特征進行有效融合,然后依賴特征在候選答案上做 multi-label 預測(區別于 softmax 多類預測,形象比喻就是 softmax 最后得到的是 N 類的預測向量,而 multi-label 可以認為是得到預測矩陣,每一行表示對應問題答案的預測向量,當然這只是比喻,并不嚴謹)。簡單說,multi-label 的通常實現方式有兩種,一種是 SigmoidCrossEntropyLoss,另一種是使用多個 SoftmaxWithLoss。
所用到的關鍵技巧主要有:
使用 sigmoid outputs 來從每個問題中的允許多個答案,替代 single-label softmax;
使用 soft scores as ground truth targets 用回歸代替分類;
使用 image features from bottom-up attention 來針對感興趣區域提特征,替代之前 grid-like 的方法;
使用 gated tanh activations 作為激活函數;
使用 pretrained representations of candidate answers 初始化輸出 layer 的權重;
使用 large mini-batches and smart shffling of training data 來訓練。
Question embedding:采用 GRU 進行編碼問題
詞向量采用 GloVe 詞向量(300 維);詞向量中沒有的初始化為 0;文本長度用 14 截斷;GRU 內部狀態為 512。
Image features:圖像特征,有兩種方式
直接用 cnn:使用預訓練的 ImageNet,比如說,200-layer ResNet,得到 772048
bottom-up attention:使用 Faster R-CNN framework 提取圖像中的 topk 目標。k 可以調節,最大取 100。
Image attention:圖像的 attention,當然了還可以考慮多次 attention、stack 等
Multimodal fusion:多模態特征融合 joint embedding,采用對應位置相乘的方式,即 Hadamard product。
Output classifier:把候選答案結合作為輸出詞典,通過正確答案在訓練集上出現 8 次的,放入輸出詞典中(N=3129)。由于標注的模糊性,訓練集有 7% 的問題沒有正確答案。實驗也發現,對于這是模糊的問題,multi-label 幾乎沒有預測輸出。
Petraining the classifier:預訓練分類器(分類網絡初始化)
由于分類網絡最后一層是個全連接層,所以最后每個答案的分數就是圖片特征和問題特征與網絡權重的點積。
作者使用了來自兩個來源的候選答案的先驗信息來訓練:
一種是語言信息,使用答案文本的 GloVe 詞嵌入形式的語言信息,當一個答案不能與問題完全匹配時,在拼寫檢查后則選擇關系程度最接近的匹配,刪除連字符號,或者保留多詞表達式中的單個詞,矩陣 W0(text)(語言信息)的每一行通過答案的 glove feature 進行初始化;
一種是視覺信息,是從代表候選答案的圖像中收集的視覺信息。利用 Google Images 來自動檢索挑選 10 張與每個候選答案最接近的圖像。這些圖片經過一個在 ImageNet 上預訓練過的 ResNet-101 CNN,最終的平均特征被提取并在這 10 張圖片上取平均值,用它作為 W0(img)(視覺信息)每一行的初始化(2048維);
兩種先驗信息 W0(text)與 W0(img)互補結合,它們可以用于任何候選答案,包括多義詞和生僻詞
相關論文2:Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering
https://readpaper.com/paper/2951590222
https://arxiv.org/abs/1707.07998
2.3.7 Pythia v0.1
極致的工程
Pythia v0.1: the Winning Entry to the VQA Challenge 2018
https://readpaper.com/paper/2884093133
https://arxiv.org/abs/1807.09956
Github 1:
https://github.com/gabegrand/pythia-1
Github 2:
https://github.com/meetshah1995/pythia-1
Pythia 以 VQA 2017 Challenge 的冠軍模型 Up-Down 為基本方法,輔助以了諸多工程細節上的調整,這使得 Pythia 較往年增加了約 2% 的性能提升(70.34% → 72.25%)。
模型結構:65.32% → 66.91%
還記得 Up-Down 里面那個長相奇怪的門控激活函數嗎?Pythia 使用了 RELU + Weight Normalization 來取代它,這樣可以降低計算量,但是效果上有無提升文中沒有給出實驗。
在進行 top-down 的 attention 權重計算時,將特征整合的方式由原本 concat 轉換為 element-wise multiplication,這也是可以降低計算量的表現。
在第二個 LSTM 做文本和圖像的聯合預測時,hidden size 為 5000 最佳。
超參數:66.91% → 68.05%
這里主要是學習率的調整。作者發現在 Up-Down 模型中適當減小 batch 可以帶來一些提升,這意味著在同樣的 batch 下提升學習率可能帶來性能的提升。為了防止學習率過大不收斂,他們采用了廣泛使用的 warm-up 策略,并使用了適當的 lr step。
Faster R-CNN 增強:68.05% → 68.49%
將 Faster R-CNN 的 backbone 由 ResNet-101 換為 ResNext-101-FPN,并且不再使用 ROI Pooling 后的 7×7×2048 + mean pooling 表征 object-level 特征,而采用 fc7 出來的 2048 維向量以減少計算量。
數據增強:68.49% → 69.24%
采用了圖像水平翻轉的增強方法,這樣的方式在純視覺任務中廣泛出現。在這里還需要做變換的是,將問題和答案中的“左”和“右”對調。
Bottom-up 增強:69.24% → 70.01%
光是使用 Faster R-CNN 在 head network 上的 fc7 特征不足以表示圖像整體的特征。于是作者們融合了 ResNet-152 提取的整圖特征,并且增加了在每一張圖提取 object-level feature 的個數。它們分別帶來了可見的提升。
模型集成:70.96% → 72.18%
2.3.8 Focal Visual-Text Attention(FVTA)
這項工作(J Liang, 2018)在兩個方面不同于現有的基于視頻的問答:
(1)基于視頻的問答是基于單個視頻回答問題,而這個工作可以處理一般的可視文本序列,其中一個用戶可能有多個視頻或相冊。
(2)大多數現有的基于視頻的質量保證方法將一個帶有文本的視頻序列映射到一個上下文特征向量中,而這篇文章通過在每個時間步建模查詢和序列數據之間的相關性來探索一個更細粒度的模型。
這項工作可以被視為一個新的關注模型,為多個可變長度的順序輸入,不僅考慮到視覺文本信息,還考慮到時間的依賴性。
Focal Visual-Text Attention for Visual Question Answering
https://readpaper.com/paper/2798786641
https://arxiv.org/abs/1806.01873
Github:
https://github.com/JunweiLiang/FVTA_MemexQA
Visual-Text Embedding?每個圖像或視頻幀都用預先訓練的卷積神經網絡編碼。單詞級和字符級嵌入都被用來表示文本和問題中的單詞。
Sequence Encoder?使用獨立的 LSTM 網絡分別對視覺和文本序列進行編碼,以捕獲每個序列中的時間相關性。LSTM 單元的輸入是由前一層產生的圖像/文本嵌入。
Focal Visual-Text Attention FVTA?是實現所提出的注意機制的一個新層。它表示一個網絡層,該層對問題和多維上下文之間的相關性進行建模,并將匯總后的輸入輸出到最終的輸出層。
Output Layer?在使用 FVTA 注意力總結輸入之后,使用前饋層來獲得候選答案。
2.4 其它有趣的模型
不同于前面的模型,下面的模型使用了更多的思想,而不僅僅是在計算圖像或問題的注意值方面作改變。
2.4.1 MCBP for VQA
Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding
https://readpaper.com/paper/2412400526
https://arxiv.org/abs/1606.01847
Github 1:
https://github.com/gdlg/pytorch_compact_bilinear_pooling
Github 2:
https://github.com/akirafukui/vqa-mcb
Github 3:
https://github.com/jnhwkim/cbp
Bilinear pooling 在 2015 年于 "Bilinear CNN Models for Fine-grained Visual Recognition"被提出來用于 fine-grained 分類后,又引發了一波關注。bilinear pooling 主要用于特征融合,對于從同一個樣本提取出來的特征 x 和特征 y,通過 bilinear pooling 得到兩個特征融合后的向量,進而用來分類。
(A Fukui, 2016)在 CBP 的基礎上提出了 MCBP。
注意到 CBP 是針對 HBP 進行改進的,對 CBP 的 TS 算法稍加改動,使其適用于融合不同模態的特征,即可得到 MCBP,如下圖所示。
文本計算 Attention 的做法類似,區別在于使用 MCB 操作代替雙線性 Attention。在得到 MCBP 模塊后,作者提出用于 VQA 的網絡結構如下:
這里用到了兩次 MCB 模塊,第一個 MCB 融合圖像特征和文本特征計算圖像每個空間位置的 attention weight。第二個 MCB 融合圖像特征和文本特征得到答案。
本文模型是 2016 VQA 比賽的獲勝模型。
2.4.2 神經模塊網絡 Neural Module Network(NMN)
Neural Module Networks
https://readpaper.com/paper/2964118342
https://arxiv.org/abs/1511.02799
(J Andreas, 2015)提出的 NMN 的一大特點就是其結構是它并不是像傳統的神經網絡模型一樣是一個整體,它是由多個模塊化網絡組合而成。根據 VQA 數據集中每個 questions 定制一個網絡模型。也就是說 NMN 模型的網絡是根據 question 的語言結構動態生成的。
有五種模塊:Attention, Re-attention, Combination, Classification 和 Measurement。
Attention
attend 模塊將輸入圖像的每一個位置與與權重(根據 C 的不同而不同)提供一個熱力圖或一個非標準的注意力圖。比如,attend[dog] 模塊輸出的矩陣,包含狗的區域值較大,而其他區域值較小。
Re-attention
Re-attention 模塊本質上由多元感知器及 Relu 實現,執行一個全連接使得將注意力映射到其他地方。re-attend [above] 就是講 attention 和最佳的軟激活區域向上移。
Combination
combine 模塊將兩個 attention 結合成一個 attention。比如,combine 只激活兩個輸入中都激活的區域,而 except 則是激活第一個輸入,將第二個輸入失活。
Classification
Classification 模塊 classify 將 attention 和 image 映射到 labels 的概率分布。它首先計算由注意力加權的平均圖像特征,然后通過一個完全連通層傳遞這個平均特征向量。
Measurement
Measure 模塊 Measure[c] 以一個 attention 作為輸入,映射到 label 的概率分布。由于傳遞的 attention 是非標準的,所以 measure 模塊適合用于評價檢測目標是否存在。
網絡結構的生成:
已經建立了模塊集合,就需要將它們根據不同問題組裝成不同的網絡布局。從自然語言問題到神經網絡實例化有兩個步驟。
將自然語言問題映射成布局(layouts)
使用布局(layouts)組建最終的預測網絡
2.4.3 AMA based on KB
Ask Me Anything: Free-form Visual Question Answering Based on Knowledge from External Sources
https://readpaper.com/paper/2963398599
https://arxiv.org/abs/1511.06973
(Wu, 2016)提出了 Ask Me Anything(AMA)模型,該模型試圖借助外部知識庫中的信息來幫助指導視覺問答。將自動生成的圖像描述與一個外部的 Knowledge bases 相融合,對問題進行預測。圖像描述生成主要來自于 image captions 集,并且從 Knowledge bases 提取基于文本的外部知識。
總體上看大致分為這樣 4 個步驟:
先從圖像中提取前五的屬性。
提取的屬性分為三部分:一方面用來直接生成關于圖像的描述,另一方面用來從知識庫中提取相關外部知識,當然,自身也會被重新用到。
將第二步中的圖像的三個結果作為一個視覺信息的整體輸入到 LSTM 的編碼結構中,問題的每個單詞也作為輸入輸入到 LSTM 的編碼結構中。然后在 LSTM 的解碼結構中,生成每個答案單詞的分布概率。
最終得到一個多個單詞標簽的答案。
缺點在于僅僅從數據集中提取離散的文本描述,忽略了結構化的表達,也就是說,沒有辦法進行關系推理,沒有說明為什么是這個外部知識,從數據庫中找到僅僅是相關的描述。
2.4.4 NS-VQA
所有 module 都基于 Attention
Neural-Symbolic VQA: Disentangling Reasoning from Vision and Language Understanding
https://readpaper.com/paper/2963738360
https://arxiv.org/abs/1810.02338
Github:
https://github.com/kexinyi/ns-vqa
主要思想:(K Yi, 2018)提出的神經符號視覺問答(NS-VQA)系統首先會根據圖像恢復一個結構化的場景表征,并會根據問題恢復一個程序軌跡。然后它會在這個場景表征上執行該程序以得到答案。
NS-VQA 模型有三個組件:場景解析器(去渲染器/de-renderer)、問題解析器(程序生成器)和程序執行器。給定一個圖像-問題對,場景解析器會去除圖像的渲染效果,得到結構化的場景表征(I),問題解析器會基于問題生成層次化的程序(II),程序執行器會在結構化的表征上運行程序從而得到答案(III)。
優點:
符號表征的使用能提供對長的復雜程序軌跡的穩健性。它還能減少對訓練數據的需求。
推理模塊和視覺場景表征都是輕量級的,僅需要最少量的計算和內存成本。
符號場景表征和程序軌跡的使用能迫使模型準確地基于問題恢復底層的程序。結合完全透明且可解讀的符號表征的本質,可以對推理過程進行一步步地分析和診斷。
2.4.5 差分網絡 Differential Networks
(B Patro, 2018)提出通過一或多個支持和反對范例來取得一個微分注意力區域(differential attention region),與基于圖像的注意力方法比起來,本文計算出的微分注意力更接近人類注意力,因此可以提高回答問題的準確率。
Differential Attention for Visual Question Answering
https://readpaper.com/paper/2963466731
https://arxiv.org/abs/1804.00298
原理流程:
?根據輸入圖像和問題取得引用注意力嵌入(reference attention embedding);
?根據該引用注意力嵌入,在數據庫中找出樣本,取近樣本作為支持范例、遠樣本作為反對范例;
?支持范例和反對范例用于計算微分注意力向量;
?通過微分注意力網絡(differential attention network, DAN)或微分上下文網絡(differential context network)分別可以改進注意力或取得微分上下文特征,這兩種方法可以提升注意力與人工注意力的相關性;
首先為微分注意力網絡(differential attention network, DAN),重點為通過正反例注意力更新目標注意力,使之與人類的注意力更相似。
然后就是微分上下文注意力(DCN),其主要應用映射的概念,縮小正例與目標注意力之間的距離,刪除反例上下文與目標注意力之間的特征,從而達到更新注意力的目的。
創新點是引入了支持示例和相對示例進而找到與答案相關的區域,進行回答問題。
2.5 暫時的小結
下面兩張圖是上述部分模型在部分數據集上的表現。
有趣的是,我們看到 ATP 模型的表現優于非注意模型,這證明簡單地引入卷積和/或循環神經網絡是不夠的:原則上識別相關的圖像部分是重要的。ATP 甚至可以與一些注意模型(如 WTL 和 SAN)相媲美甚至表現更好。
CoAtt 的表現有顯著的提升,該模型首先注意問題然后注意圖像。這對于長問題可能是有幫助的,由于這些問題更難用 LSTM/GRU 編碼表示為單個向量,因此首先對每個詞進行編碼,然后使用圖像來注意重要的詞,這樣有助于提高模型的準確率。NMN 模型使用了為每個(圖像/問題)對自動組合子模型的新穎想法,它的表現效果類似于在 VQA 數據集上的 CoAtt 模型,但是在需要更高級推理的合成數據集上優于所有模型,表明該模型在實際中可能是一種有價值的方法。然而,需要更多的測試來判斷該模型的性能。
在 COCO-QA 數據集上表現最好的模型是 AMA 模型,它包含外部知識庫(DBpedia)的信息。這樣做的一個可能的原因是知識庫幫助解決涉及常識的問題,而這些知識可能不在數據集中。
該模型在 VQA 數據集上的表現不是很好,這可能是因為這個數據集沒有太多的問題需要常識。自然地這種模型會為未來的工作帶來兩大方向。第一個方向是認識到外部知識的必要性:某種 CoAtt 和 AMA 的混合模型加上是否訪問知識庫的決策器可能會兼有兩種模型的優點。該決策器可能是面向應用的,以實現端到端的訓練。第二個方向是探索使用其它知識庫,如 Freebase、NELL 或 OpenIE 的信息提取。
送福利啦!
PaperWeekly獨家周邊盲盒
限量 200 份,免費包郵送
周邊盲盒將隨機掉落
眾多讀者要求返場的爆款貼紙
煉丹師必備超大鼠標墊
讓你錦鯉護體的卡套組合
掃碼回復「盲盒」?
立即免費參與領取?
👇👇👇
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
📝?稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
📬?投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
🔍
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的超50篇论文串联起从VQA到多模态预训练大模型的前世今生—Part 1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 情人节选什么礼物?盘点最火爆几款礼物
- 下一篇: 爱彼迎中国“大撤退”半年后,途家、木鸟、