摘 要: 文本閱讀能力差和視覺推理能力不足是現有視覺問答(visual question answering,VQA)模型效果不好的主要原因,針對以上問題,設計了一個基于圖神經網絡的多模態推理(multi-modal reasoning graph neural network,MRGNN)模型。利用圖像中多種形式的信息幫助理解場景文本內容,將場景文本圖片分別預處理成視覺對象圖和文本圖的形式,并且在問題自注意力模塊下過濾多余的信息;使用加入注意力的聚合器完善子圖之間相互的節點特征,從而融合不同模態之間的信息,更新后的節點利用不同模態的上下文信息為答疑模塊提供了更好的功能。在ST-VQA和TextVQA數據集上驗證了有效性,實驗結果表明,相比較此任務的一些其他模型,MRGNN模型在此任務上有明顯的提升。
關鍵詞: 視覺問答; 圖神經網絡; 多模態推理; 問題自注意力
中圖分類號: TP391"" 文獻標志碼: A
文章編號: 1001-3695(2022)01-050-0280-05
doi:10.19734/j.issn.1001-3695.2021.06.0197
Visual question answering model of vision and scene text based on
multi-modal reasoning graph neural network
Zhang Haitao, Guo Xinyu
(School of Software, Liaoning Technical University, Huludao Liaoning 125105, China)
Abstract: Poor text reading ability and inadequate visual reasoning were the main reasons for the insufficient effect of existing visual question answering models.To solve the above problems,this paper designed a MRGNN model.It used various forms of information in images to help understanding the scene text content,preprocessed the scene text image into the visual object graph and text graph respectively,and filtered the redundant information in the question self-attention module.It used an aggregator with attention to perfect the node features between subgraphs and fuse different modality information.The updated nodes used the context information of different modules to provide a better function for answering module.This paper verified the validity of MRGNN model on ST-VQA and TextVQA datasets.The experimental results show that MRGNN model achieves good results compared with some classical models for this task.
Key words: visual question answering; graph neural network; multi-modal reasoning; question self-attention
深度學習使計算機視覺(CV)和自然語言處理(NLP)獲得巨大的進展,視覺和自然語言之間的跨領域學科,如圖像字幕[1]、視覺問答(VQA)[2,3]和視覺對話[4],已經吸引了視覺和自然語言領域強烈的關注。與圖像字幕和視覺對話相比,VQA任務是將圖像中的視覺特征與問題中的語義特征相關聯從而推斷出問題的答案。
VQA是一個很有挑戰性的研究方向,但大多數開創性VQA模型集中在數據集任務的視覺處理上,針對最近提出的數據集TextVQA[5]和ST-VQA[6],即一些帶有圖像文本的場案圖片,現有的VQA模型在這些數據集上普遍表現得并不好。數據集中每張圖像都帶有真實存在的文字語義,并且需要理解圖像場景文本來回答問題,解決這個問題的關鍵是需要閱讀、推理和回答的能力。文獻[6]提出的LoRRA模型可以有效地對圖像中出現的文本信息進行明確的推理回答,它使用一個簡單的Updn[1]注意力模型對視覺對象和OCR文本進行推理,其中OCR模型可以從圖像中讀取并返回單詞標記。文獻[7]提出將OCR分組成塊并融合到VQA模型的輸入特征和輸出答案中。ST-VQA采用堆疊注意網絡(SAN)[10]作為基線,將文本特征與圖像特征簡單連接起來進行答案分類。然而,現有的這些方法都受限于圖像文本的簡單特征表示。M4C[8]模型通過使用多模態transformer架構[9],對問題、圖像和文本進行聯合編碼,從OCR token或一些固定的詞匯迭代得出答案。雖然這種同構處理的方法易實現、訓練快,但同構后并沒有對文本和視覺對象加以區分。此外,MM-GNN [11]提出了更復雜的結構來編碼和融合該任務的多模態特征,MM-GNN使用圖神經網絡將圖像表示為三個圖,并引入三個聚合器來引導消息從一個圖傳遞到另一個圖。與MM-GNN相比,本文模型首先通過問題自注意力和特征過濾模塊過濾掉不相關或冗余的特征;在此基礎上進一步研究了如何更加合理地從視覺和文本角度來描述圖像、利用視覺和文本特征從而收集不同的模式細粒度的信息;如何使用圖神經網絡獲得更好的場景文本和對象表征以及如何有效地融合特征,最終得出答案。
1 相關工作
1.1 注意力機制
通常注意力機制使用編碼器—解碼器的結構,在早期視覺問答中,文獻[10]使用注意力機制來通過問題尋找圖中和問題有關的區域;文獻[12]將圖片經過區域選擇和問題進行embedding后進行點乘然后通過softmax得到一個注意力權重向量,通過權重給模型賦予了區分辨別的能力,從而抽取出更加關鍵及重要的信息,使模型作出更加準確的判斷;文獻[13]將注意力機制與LSTM相結合,將注意力放在問題上的LSTM,每輸入一個詞就產生一個注意力。而最近興起的Transformer也常常使用在視覺問答模型之中,如圖1所示,Transformer整個網絡結構是由注意力機制組成,更準確地講,Transformer僅由self-attenion和前饋神經網絡(feed forward neural network,FNN)組成。
針對場景文本的視覺問答,目前比較新穎的是采用雙向Transformer結構的BERT[14]來對問題進行預訓練,基于Transformer的可訓練神經網絡可以通過堆疊Transformer的方式進行構建,BERT 只使用了Transformer的encoder模塊,現有12層和24層Transformer encoder兩套BERT模型,在視覺問答中,使用12層的BERTBASE足夠應對。
BERTBASE:L=12,H=768,A=12,TotalParameters=110 M
其中:層的數量為L,隱藏層的維度為H,自注意頭的個數為A,Transformer encoder端的前饋層的維度設置為3 072。
使用訓練模型來訓練的好處是可以用龐大的數據來訓練一個泛化能力很強的模型,當需要在特定場景使用時,只需要簡單地修改一些輸出層,再用自己的數據進行一個增量訓練,對權重進行一個輕微的調整就可以獲得一個非常好的效果。BERT就是這樣一個泛化能力較強的預訓練模型。
4 實驗結果與分析
4.1 數據集
1)TextVQA 對于TextVQA數據集,它包含28 408張來自Open Images v3 [21]數據集圖片,45 336個關于圖像的問題,涉及查詢時間、姓名、品牌等的各種問題以及可能部分被遮擋的圖片文字信息,使其成為一項具有挑戰性的任務。每個問答都有一個由Rosetta OCR[22]提取圖像文本的標記列表,Rosetta OCR有多語言(Rosetta-ml)和僅英語(Rosetta-en)兩個版本,用VQA準確度標準[23]來評估效果好壞。
2) ST-VQA ST-VQA數據集是由23 038張圖片,帶有31 791個問題組成,包含多個來源的自然圖像,包括ICDAR 2013[24]、ICDAR 2015[25]、ImageNet[26]、VizWiz[27]、IIIT STR[28]、Visual Genome[29]和COCO-Text[30]。該數據集涉及三個任務,分別是強上下文(strongly contextualised)、弱上下文(weakly contextualised)和開放詞匯(open vocabulary)。這三種不同的任務使用不同的字典,對于強上下文,每張圖片具有自己的字典,字典中包括100個單詞;對于弱上下文,所有圖片共用一個大的字典,字典中包括30 000個單詞,其中22 000個是正確的,其他的是干擾項;對于開放詞匯,字典是空的。
圖4提供了ST-VQA和TextVQA數據集對比圖[6],從中可以看出兩個數據集的問題和答案的長度分布十分相似,雖然TextVQA和ST-VQA需要閱讀場景文本的圖片遠遠大于一般VQA數據集,但ST-VQA主觀答案和標準答案之間的一致性有84.1%,而TextVQA只有80.3%,說明ST-VQA的問題歧義性更低。另外ST-VQA全部都是對圖像中文本信息進行的提問,而TextVQA中有39%的問題沒有用到任何場景文本,說明ST-VQA比TextVQA更具有代表性。
4.2 實驗參數
參考M4C[8],在處理問題特征、視覺特征、文本特征使用類似的方法。
a)問題特征。將問題最大長度設為20,使用經過維基百科數據集預先訓練的三層BERT模型,利用前三層768維的BERT提取問題詞特征,并在訓練過程中進行微調。
b)視覺特征。對象區域的最大數為36,使用Faster R-CNN模型檢測對象,通過fc6提取特征并使用Faster R-CNN的池化層,微調fc7輸出2 048維的特征向量并且使用邊框坐標,兩者通過線性變換映射到768維。
c)文本特征。在圖中最多識別50個OCR token,使用Rosetta OCR系統在每個圖像上提取文本標記,使用與視覺特征相同的提取器(Faster R-CNN是為一般目標檢測而訓練的),并加入FastText和PHOC(是從識別的OCR字符序列中提取的)以及坐標嵌入。
本文使用PyTorch實現,Adam優化[31],在NVIDIA GeForce 1080Ti GPU上進行實驗,批處理大小為128個,768作為所有特征的輸出維度。問題編碼的三層BERT和用于區域特征編碼的fc7層學習速率設置為0.000 01,其余所有層的學習速率都設置為0.000 1,在14 000和19 000次迭代時將學習率乘以0.1,訓練最大迭代次數為24 000次。解碼的最大步數設置為12。表1總結了MRGNN模型需要使用的超參數值。
4.3 在TextVQA數據集上的對比實驗
從訓練集中的答案中收集最常用的5 000個單詞作為答案詞匯,將45 336個問題分成了大小為34 602、5 000和5 734個問題分別進行訓練、驗證和測試,每個問題圖像對有人為標注提供的ground-truth OCR集,避免了OCR精度較差的問題。通過本文模型與LoRRA[1]、DCD_ZJU[32]、MM-GNN[11]的綜合結果進行對比,與表2中的LoRRA相比,LoRRA僅使用GloVe處理問題編碼、FastText來表示OCR token,本文模型不僅有豐富的OCR表示,而且使用預先訓練的BERT進行問題編碼,該模型的準確率在TextVQA驗證集上已經超過LoRRA約10%左右。通過特征過濾去掉了多余的信息而且相比較MMGNN僅使用了一個聚合器,使用Rosetta-en進行OCR提取,MMGNN的測試集準確率為32.41%,而本文模型的準確率比MMGNN高出約3%。
4.4 在ST-VQA數據集上的對比實驗
由于ST-VQA數據集沒有一個訓練和驗證的正式分割,按照M4C的標準,隨機選擇17 028張圖像作為訓練集,并使用剩下的1 893張圖像作為實驗的驗證集,ST-VQA數據集采用平均歸一化(Levenshtein similarity,ANLS)作為官方評價指標,定義為 1-dL(apred,agt)/max(|aperd|,|agt|),其中apred和agt為預測和ground-truth答案,dL為編輯距離,所有低于0.5的分數在取平均值之前都被截斷為0。如表3所示,在ST-VQA數據集的弱上下文和開放詞匯任務下比較了本文和其他現有的先進方法,其中SAAA+STR[33]采用ResNet-152提取圖像特征,同時用LSTM對單詞進行嵌入,然后再用注意力對兩個特征進行映射送入全連接層進行分類。SAN+STR[6]用預訓練的VGG模型獲取圖像特征,提取問題特征用的是LSTM。VTA[34]是ICDAR 2019 STVQA競賽的獲勝者模型,它擴展了VQA模型[1]和BERT來編碼問題和文本,使用Rosetta-en提取圖像文本標記,使用FastText+bbox+ FRCN+PHOC OCR表示,并預訓練BERT初始化問題編碼參數。從結果可以看出,MRGNN相對于SAAA、SAN、VTA等基線方法有了明顯的改善。圖5為TextVQA和ST-VQA驗證集上不同解碼步長時對應的準確率,在實驗中默認使用12個步驟。
4.5 在TextVQA數據集上的消融實驗分析
如表4所示,關于問題預處理和OCR系統的消融,逐步用BERT替換GloVe進行問題編碼、使用本文的OCR token表示替換FastText。首先從Rosetta-en中提取OCR標記,僅用FastText向量表示OCR標記,使用GloVe詞嵌入并初始化其余參數結果,如表4的第2行所示,相比較Rosetta-en的LoRRA,準確率提升了5.14%;第3行切換到一個預先訓練的BERT進行問題編碼,使用BERT比使用GloVe的MRGNN的準確率提高了0.72%,說明由Transformer組成的BERT來對問題進行預訓練要好于經典詞向量訓練模型GloVe;第4行使用本文的OCR token表示,與LoRRA相比,模型在TextVQA驗證集上已經超過LoRRA約6.3%。說明對于三種輸入模式的改變和聯合建模具有更高的效率。
如圖6所示,圖片提出的問題為“What is written on the blur jersey?”,可視化后可以看出經過特征過濾模塊過濾后去掉了冗余和不相關的特征,留下與問題相關的特征,如“FOWLER”“24”等,從而能夠減少計算時間。
4.6 實驗結果展示
圖7(a)~(d)展示了MRGNN模型在ST-VQA數據集上的一些成功案例,結果表明,該模型對圖像能夠產生很強的推理關注。可以看出對于場景文本圖片進行多模塊推理時,模型可以識別、復制和標記圖像中文本信息并且結合其固定詞匯來預測答案,無論是特征識別還是空間推理效果,在大多數情況下都是優秀的。在圖7(b)中,通過球員的問題查詢,注意力模塊引導OCR系統關注更多與球員名字相關的信息和球員所在的區域,因為模型知道“Casilla”下面的單詞很可能是數字;在圖7(c)中,OCR token“RX405”結合了問題中“boat”的位置和語義信息,可以在回答模塊中進行選擇。
圖7(e)~(h)展示了一些失敗的案例,可以發現OCR表現不好是MRGNN模型預測失敗的主要原因,將面臨的問題分為幾個方面:a)如圖7(e)(f)所示,OCR系統未能理解文本圖片的內容和準確定位圖像中對應的文本標記,導致重要信息被過濾掉從而預測錯誤;b)從圖7(g)可以發現,針對文字區域較多、空間位置復雜、干擾信息過多的圖片,效果并不是很好;c)如圖7(h)所示,針對小部分在圖中找不到答案的圖片需要額外的外界知識引導,超出了模型的推理能力范圍。對于以上問題,如果能使用更好的OCR系統和加入外部知識圖譜,可以提高準確率并幫助模型更好地理解圖片內容。
5 結束語
本文提出了一種基于對圖像文本的理解和推理的多模態圖神經網絡視覺問答系統,從視覺、文本和問題的不同角度來描述圖像,利用圖神經網絡構建視覺和文本模態連通圖使得內容有更豐富的表達形式,通過多模態聚合器讓模態之間的特征相融合進一步得到更細粒度的表達。模型MRGNN在兩個具有挑戰性的數據集上的準確度超過了之前的模型。結果表明,本文在信息表達傳遞和特征融合上的改進能夠提高模型在場景文本VQA上的性能和準確率。
參考文獻:
[1]Anderson P,He Xiaodong,Buehler C,et al.Bottom-up and top-down attention for image captioning and VQA[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2018:6077-6086.
[2]吝博強,田文洪.基于層次注意力機制的高效視覺問答模型[J].計算機應用研究,2021,38(2):636-640. (Lin Boqiang,Tian Wenhong.Efficient image question answering model based on layered attention mechanism[J].Application Research of Computers,2021,38(2):636-640.)
[3]王永琦,吳飛,王春媛,等.新的動態記憶網絡的視覺問答[J].計算機應用研究,2020,37(10):3030-3033. (Wang Yongqi,Wu Fei,Wang Chunyuan,et al.New dynamic memory network for visual question answering[J].Application Research of Computers,2020,37(10):3030-3033.)
[4]Das A,Kottur S,Gupta K,et al.Visual dialog[J].IEEE Trans on Pattern Analysis and Machine Intelligence,2019,41(5):1242-1256.
[5]Singh A,Natarajan V,Shah M,et al.Towards VQA models that can read[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2019:8317-8326.
[6]Biten A F,Tito R,Mafla A,et al.Scene text visual question answering[C]//Proc of IEEE/CVF International Conference on Computer Vision.Piscataway,NJ:IEEE Press,2019:4291-4301.
[7]Mishra A,Shekhar S,Singh A K,et al.OCR-VQA:visual question answering by reading text in images[C]//Proc of International Confe-rence on Document Analysis and Recognition.Piscataway,NJ:IEEE Press,2019:947-952.
[8]Hu Ronghang,Singh A,Darrell T,et al.Iterative answer prediction with pointer-augmented multimodal transformers for TextVQA[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Re-cognition.Piscataway,NJ:IEEE Press,2020:9989-9999.
[9]Vaswani A,Shazeer N,Parmar N,et al.Attention is all you need[C]//Proc of the 31st International Conference on Neural Information Processing Systems.Red Hook,NY:Curran Associates Inc.,2017:6000-6010.
[10]Yang Zichao,He Xiaodong,Gao Jianfeng, et al.Stacked attention networks for image question answering[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2016:21-29.
[11]Gao Difei,Li Ke,Wang Ruiping,et al.Multi-modal graph neural network for joint reasoning on vision and scene text[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Pisca-taway,NJ:IEEE Press,2020:12746-12756.
[12]Shih K J,Singh S,Hoiem D.Where to look:focus regions for visual question answering[C]//Proc of IEEE International Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2016:4613-4621.
[13]Zhu Yuke,Groth O,Bernstein M,et al.Visual7W:grounded question answering in images[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2016:4995-5004.
[14]Devlin J,Chang Mingwei,Lee K,et al.BERT:pretraining of deep bidirectional transformers for language understanding[C]//Proc of Conference of the North American Chapter of the Association for Computational Linguistics:Human Language Technologies.Stroudsburg,PA:Association for Computational Linguistics,2019:4171-4186.
[15]Scarselli F,Gori M,Tsoi A C,et al.The graph neural network model[J].IEEE Trans on Neural Networks,2009,20(1):61-80.
[16]Hu Ronghang,Rohrbach A,Darrel T, et al.Language-conditioned graph networks for relational reasoning[C]//Proc of IEEE/CVF International Conference on Computer Vision.Piscataway,NJ:IEEE Press,2019:10294-10303.
[17]Wang Peng,Wu Qi,Cao Jiewei,et al.Neighbourhood watch:referring expression comprehension via language-guided graph attention networks[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2019:1960-1968.
[18]Li Linjie,Gan Zhe,Cheng Yu,et al.Relation aware graph attention network for visual question answering[C]//Proc of IEEE/CVF International Conference on Computer Vision.Piscataway,NJ:IEEE Press,2019:10313-10322.
[19]Ren Shaoqing,He Kaiming,Girshick R, et al.Faster R-CNN:towards real-time object detection with region proposal networks[J].IEEE Trans on Pattern Analysis amp; Machine Intelligence,2015,39(6):1137-1149.
[20]Ba J L,Kiros J R,Hinton G E.Layer normalization[EB/OL].(2016-07-21).https://arxiv.org/pdf/1607.06450v1.pdf.
[21]Krasin I,Duerig T,Alldrin N, et al.OpenImages:a public dataset for large-scale multilabel and multi-class image classification[DB/OL].(2017).https://storage.googleapis.com/openimages/web/index.html.
[22]Borisyuk F,Gordo A,Sivakumar V.Rosetta:large scale system for text detection and recognition in images[C]//Proc of the 24th ACM SIGKDD International Conference on Knowledge Discovery amp; Data Mining.New York:ACM Press,2018:71-79.
[23]Goyal Y,Khot T,Summers-Stay D,et al.Making the V in VQA matter:elevating the role of image understanding in visual question answering[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2017:6904-6913.
[24]Karatzas D,Shafait F,Uchida S,et al.ICDAR 2013 robust reading competition[C]//Proc of the 12th International Conference on Document Analysis and Recognition.Washington DC:IEEE Computer Society,2013:1484-1493.
[25]Karatzas D,Gomez-Bigorda L,Nicolaou A,et al.ICDAR 2015 competition on robust reading[C]//Proc of the 13th International Confe-rence on Document Analysis and Recognition.Piscataway,NJ:IEEE Press,2015:1156-1160.
[26]Deng Jia,Dong Wei,Socher R,et al.ImageNet:a large-scale hierarchical image database[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Socie-ty,2009:248-255.
[27]Gurari D,Li Qing,Stangl A J,et al.VizWiz grand challenge:answering visual questions from blind people[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Piscataway,NJ:IEEE Press,2018:3608-3617.
[28]Mishra A,Alahari K,Jawahar C V.Image retrieval using textual cues[C]//Proc of IEEE International Conference on Computer Vision.Washington DC:IEEE Computer Society,2013:3040-3047.
[29]Krishna R,Zhu Yuke,Groth O,et al.Visual genome:connecting language and vision using crowd sourced dense image annotations[J].International Journal of Computer Vision,2017,123(1):32-73.
[30]Veit A,Matera T,Neumann Ls, et al.COCO-Text:dataset and benchmark for text detection and recognition in natural images[EB/OL].(2016-06-19).https://arxiv.org/pdf/1601.07140.pdf.
[31]Kingma D P,Ba J.Adam:a method for stochastic optimization[C]//Proc of the 3rd International Conference for Learning Representations.2015.
[32]Lin Yuetan,Zhao Hongrui,Li Yanan,et al.DCD_ZJU:TextVQA challenge 2019 winner[EB/OL].(2019-07).https://visualqa.org/workshop.html.
[33]Kazemi V,Elqursh A.Show,ask,attend and answer:a strong baseline for visual question answering[EB/OL].(2017-04-12).https://arxiv.org/pdf/1704.03162.pdf.
[34]Biten A F,Tito R,Mafla A,et al.ICDAR 2019 competition on scene text visual question answering[C]//Proc of International Conference on Document Analysis and Recognition.Piscataway,NJ:IEEE Press,2019.