程換新,張志浩,劉文翰,郭占廣
(青島科技大學(xué) 自動化學(xué)院,山東 青島 265200)
隨著自然語言處理[1]和圖像理解的進步,更復(fù)雜和更苛刻的任務(wù)已經(jīng)觸手可及。該文的目標(biāo)是利用最新的發(fā)展來改變現(xiàn)實世界中回答自然語言問題的現(xiàn)狀。這個任務(wù)結(jié)合了對問題意圖的推斷和視覺場景理解與單詞序列預(yù)測任務(wù)相結(jié)合。最近,基于分層的、端到端可訓(xùn)練的人工神經(jīng)網(wǎng)絡(luò)架構(gòu),已經(jīng)在不同任務(wù)中改善了技術(shù)水平。最顯著的是生成對抗網(wǎng)絡(luò)提高了圖像識別的準(zhǔn)確率,而長短期記憶網(wǎng)絡(luò)在一系列序列預(yù)測任務(wù)(如機器翻譯)中占主導(dǎo)地位。近年來,這兩種神經(jīng)結(jié)構(gòu)已卓有成效地與方法相結(jié)合以生成圖像和視頻描述。兩者都是針對源自深度學(xué)習(xí)架構(gòu)的視覺特征,并使用遞歸神經(jīng)網(wǎng)絡(luò)方法來產(chǎn)生描述。
為了進一步拓展深度學(xué)習(xí)架構(gòu)的邊界并探索其局限性,該文提出了一種解決圖像問題的架構(gòu)。與之前的工作相比,這項任務(wù)需要語言和視覺輸入的訓(xùn)練。這兩種模式都必須被解釋,并共同表示為一個答案,這取決于問題的推斷意義和圖像內(nèi)容。
生成對抗網(wǎng)絡(luò)如圖1所示,是由Ian Goodfellow等人于2014年首次提出的神經(jīng)網(wǎng)絡(luò)模型,是一種深度學(xué)習(xí)模型,也是近年來復(fù)雜分布上無監(jiān)督學(xué)習(xí)最具前景的方法之一。模型通過框架中(至少)兩個模塊—生成模型(generative model)和判別模型(discriminative model)的互相博弈學(xué)習(xí)產(chǎn)生相當(dāng)好的輸出。原始GAN理論中,并不要求G和D都是神經(jīng)網(wǎng)絡(luò),只需要能擬合相應(yīng)生成和判別的函數(shù)即可。但實用中一般均使用深度神經(jīng)網(wǎng)絡(luò)作為G和D。一個優(yōu)秀的GAN應(yīng)用需要有良好的訓(xùn)練方法,否則可能由于神經(jīng)網(wǎng)絡(luò)模型的自由性而導(dǎo)致輸出不理想。
圖1 生成對抗網(wǎng)絡(luò)模型
GAN的核心思想源于博弈論的納什均衡。設(shè)定參與游戲的雙方分別為一個生成器(generator)和一個判別器(discriminator),生成器捕捉真實數(shù)據(jù)樣本的潛在分布,并生成新的數(shù)據(jù)樣本;判別器是一個二分類器,判別輸入是真實數(shù)據(jù)還是生成的樣本。為了取得游戲勝利,這兩個游戲參與者需要不斷優(yōu)化,各自提高自己的生成能力和判別能力,這個學(xué)習(xí)優(yōu)化過程就是尋找二者之間的一個納什均衡。
同時需要注意的是生成模型與對抗模型是完全獨立的兩個模型,它們之間沒有什么聯(lián)系。那么訓(xùn)練采用的大原則是單獨交替迭代訓(xùn)練。因為是兩個網(wǎng)絡(luò),不方便一起訓(xùn)練,所以才交替迭代訓(xùn)練。
GAN的強大之處在于能自動學(xué)習(xí)原始真實樣本集的數(shù)據(jù)分布,不管這個分布多么復(fù)雜,只要訓(xùn)練得足夠好就可以學(xué)出來。
傳統(tǒng)的機器學(xué)習(xí)方法,一般會先定義一個模型,再讓數(shù)據(jù)去學(xué)習(xí)。比如知道原始數(shù)據(jù)屬于高斯分布,但不知道高斯分布的參數(shù),這時定義高斯分布,然后利用數(shù)據(jù)去學(xué)習(xí)高斯分布的參數(shù),得到最終的模型。再比如定義一個分類器(如SVM),然后強行讓數(shù)據(jù)進行各種高維映射,最后變成一個簡單的分布,SVM可以很輕易地進行二分類(雖然SVM放松了這種映射關(guān)系,但也給了一個模型,即核映射),其實也是事先知道讓數(shù)據(jù)該如何映射,只是映射的參數(shù)可以學(xué)習(xí)[2]。
以上這些方法都在直接或間接地告訴數(shù)據(jù)該如何映射,只是不同的映射方法能力不一樣。而GAN的生成模型最后可以通過噪聲生成一個完整的真實數(shù)據(jù)(比如人臉)[3],說明生成模型掌握了從隨機噪聲到人臉數(shù)據(jù)的分布規(guī)律。GAN一開始并不知道這個規(guī)律是什么樣,也就是說GAN是通過一次次訓(xùn)練后學(xué)習(xí)到的真實樣本集的數(shù)據(jù)分布[4]。因此生成對抗網(wǎng)絡(luò)在計算機視覺的圖像生成和NLP的生成式對話內(nèi)容等方面表現(xiàn)得非常好。簡單說:就是機器可以根據(jù)需要生成新的圖像和對話內(nèi)容[5],生成對抗網(wǎng)絡(luò)(GAN)通過生成器和判別器的機制可以更好地通過圖像內(nèi)容和問題來推斷含義[6]。有大量關(guān)于自然語言理解的工作已經(jīng)解決了基于語義解析、符號表示和演繹系統(tǒng)的文本問答,使得將自然語言理解用在圖像問答上成為了可能[7],因為需要通過工作來尋求端到端的架構(gòu),這些架構(gòu)學(xué)習(xí)在一個單一的整體和單一的模型中回答問題。
該文提出了“生成對抗-圖像問答”(generative adversarial-image-QA),一種解決圖像問答問題的神經(jīng)網(wǎng)絡(luò)模型,網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。圖像通過生成對抗網(wǎng)絡(luò)(GAN)進行分析,問題和圖像表示一起輸入到長短時記憶(LSTM)網(wǎng)絡(luò)中。該系統(tǒng)經(jīng)過訓(xùn)練,能夠?qū)D像上的問題給出正確的答案。GAN和LSTM是從單詞和像素開始的端到端的聯(lián)合訓(xùn)練。
圖2 生成對抗-圖像問答模型網(wǎng)絡(luò)結(jié)構(gòu)
由于該方法涉及機器學(xué)習(xí)、計算機視覺和自然語言處理的不同領(lǐng)域,所以通過以下方式組織了相關(guān)工作:生成對抗神經(jīng)網(wǎng)絡(luò)用于視覺識別。最近,生成對抗神經(jīng)網(wǎng)絡(luò)(GAN)在視覺識別方面取得了成功,故而在此基礎(chǔ)上進行了研究。生成對抗網(wǎng)絡(luò)通過不斷生成和原始數(shù)據(jù)相似的圖像,通過不斷訓(xùn)練、不斷逼近真實圖像,從而提高了圖像的識別準(zhǔn)確度。生成對抗網(wǎng)絡(luò)在過去兩年中取得了迅速進展,因此圖像識別方面可以使用一組準(zhǔn)確的模型[8]。
遞歸神經(jīng)網(wǎng)絡(luò)(RNN)用于序列建模。遞歸神經(jīng)網(wǎng)絡(luò)允許神經(jīng)網(wǎng)絡(luò)處理靈活長度的序列。一種稱為長短期記憶(LSTM)的特殊變體在自然語言任務(wù)(例如機器翻譯)上顯示出近期的成功。
結(jié)合GAN和LSTM來描述視覺內(nèi)容。描述先前的兩個想法的任務(wù)已成功解決了描述靜態(tài)內(nèi)容以及視頻之類的視覺內(nèi)容的任務(wù)[9]。這是通過使用RNN類型的模型來實現(xiàn)的。該模型首先可以觀察視覺內(nèi)容,并經(jīng)過訓(xùn)練可以事后預(yù)測代表視覺內(nèi)容的單詞順序。文中的工作是將這一思想擴展到問題回答,在那里制定了一個經(jīng)過訓(xùn)練的模型來生成一個基于視覺和自然語言輸入的答案[10]。
在處理自然語言輸入時,確實涉及到單詞與意義的聯(lián)系[11]。這通常被稱為接地問題—特別是如果“意義”與感官輸入相關(guān)。遵循這樣的思想,即不強制或評估任何特定的“意義”在語言或圖像形態(tài)上的表現(xiàn),從而將其視為潛在的,并將其留給聯(lián)合訓(xùn)練方法來為問題回答任務(wù)建立適當(dāng)?shù)膬?nèi)部表示。
文本問題回答。對純文本問題的回答已經(jīng)在NLP社區(qū)中進行了研究[12],并且最先進的技術(shù)通常使用語義解析來獲得捕獲預(yù)期含義并推斷相關(guān)答案的邏輯形式[13]。直到最近,前面提到的神經(jīng)序列模型才延續(xù)到這項任務(wù)中。更具體地說,使用依賴樹遞歸神經(jīng)網(wǎng)絡(luò)代替LSTM,將問答問題簡化為分類任務(wù)。
視覺圖靈測試。最近有幾個方法被提出來接近視覺圖靈測試,即回答關(guān)于視覺內(nèi)容的問題。例如,D. Geman、S. Geman在計算機視覺系統(tǒng)的視覺圖靈測試中提出了一個二進制(是/否)版本的可視化圖靈測試合成數(shù)據(jù)。在M. Malinowski and M. Fritz的一種基于不確定輸入的關(guān)于真實世界場景的多世界問題回答方法中[14],提出了一個基于語義解析器的問題回答系統(tǒng)。該語義解析器基于一組更多樣化的人類問題-答案對。
相比之下,在這項工作中,文中方法是基于神經(jīng)結(jié)構(gòu)的,是端到端的訓(xùn)練,直接通過圖像來進行問題回答,因此該方法將問答系統(tǒng)從語義解析器中解放出來。
在圖像上回答問題是根據(jù)參數(shù)概率測度預(yù)測給定圖像x和問題q的問題:
所有參數(shù)θ表示一個向量的學(xué)習(xí),是一組所有的答案。后面描述如何代表x,a,q和p(·|x,q;θ)更多的細(xì)節(jié)。語言問答模型如圖3所示。
圖3 語言問答模型
在文中場景,問題可以有多個單詞答案,因此將問題分解為預(yù)測一組答案單詞aq,x={a1,a2,…,aN(Q,X)},其中at是有限詞匯表中的單詞,V和N(Q,X)是給定問題和圖像的答案詞數(shù)。要預(yù)測多個單詞,需要根據(jù)詞匯表v:=v'∪{$}來預(yù)測單詞的順序,其中額外的標(biāo)記$表示答案序列的結(jié)束,并指出問題已經(jīng)完全回答完畢。因此,遞歸地建立了預(yù)測過程:
如圖1和圖2所示,通過向生成對抗-圖像問答模型輸入一個由單詞組成的問題,即i.e.q=[q1,…,qn-1,?],每個q是第t個單詞問題,?:=qn是問題的結(jié)尾。由于該問題是一個變量輸入/輸出序列,可以用遞歸神經(jīng)網(wǎng)絡(luò)和softmax預(yù)測層對生成對抗—圖像問答的參數(shù)分布p(·|x,q;θ)進行建模。更準(zhǔn)確地說,生成對抗—圖像問答模型是由GAN和LSTM構(gòu)建的深度網(wǎng)絡(luò)。最近,LSTM在學(xué)習(xí)可變長度序列到序列映射方面被證明是有效的。
如圖4所示,LSTM單元在每個時間步長t中取一個輸入向量vt,并預(yù)測一個輸出詞zt等于其潛在隱藏狀態(tài)ht。如上所述,zt是一個相應(yīng)的線性嵌入答案詞。與一個簡單的RNN單元相比,LSTM單元額外維護了一個內(nèi)存單元c。這允許更容易地學(xué)習(xí)長期動態(tài),并顯著減少消失和爆炸梯度問題。如圖2和圖3所示,所有出現(xiàn)在問號之前的輸出預(yù)測都被排除在損失計算之外,因此模型僅根據(jù)預(yù)測的答案詞進行懲罰。
圖4 LSTM網(wǎng)絡(luò)單元
通過設(shè)定LSTM和GAN的默認(rèn)超參數(shù),所有GAN模型首先在ImageNet數(shù)據(jù)集上進行預(yù)訓(xùn)練,然后在任務(wù)上隨機初始化和訓(xùn)練最后一層和LSTM網(wǎng)絡(luò)。結(jié)果發(fā)現(xiàn)這一步對獲得良好的成績至關(guān)重要。盡管已經(jīng)探索了使用2層LSTM模型,但始終性能較差。
在本次實驗中,將以回答關(guān)于圖像的問題為任務(wù)對文中的模型方法進行基準(zhǔn)測試。通過將該模型的不同變體與之前的工作進行比較,從而觀測該模型的圖像問答的準(zhǔn)確率。此外,作為對比分析了在不使用圖像的情況下如何很好地回答問題,以先驗知識和常識的形式來理解偏差。為這項任務(wù)提供了一個新的人類基線。同時將討論問題回答任務(wù)中的歧義,并通過引入對這些現(xiàn)象敏感的度量來進一步分析它們。特別是,WUPS評分被廣泛擴展為考慮多種人類答案的共識度量。
文中實驗和共識度量都基于WUPS得分。該度量是解釋答案單詞中單詞級歧義的準(zhǔn)確性度量的一般化。例如,“紙箱”和“盒子”可以和一個類似的概念聯(lián)系起來,因此,模型不應(yīng)該因為這種類型的錯誤而受到嚴(yán)厲的懲罰。正式:
為了包含上述的歧義,建議對μ使用基于閾值分類的Wu-Palmer相似度。門檻越小,衡量標(biāo)準(zhǔn)就越寬容。在本實驗中,采用的WUPS處于兩個極端,0.0和0.9。
該文采用了DAQUQR數(shù)據(jù)集,它是VQA第一個重要的數(shù)據(jù)集。在DAQUAR數(shù)據(jù)集上進行了實驗。該數(shù)據(jù)集在室內(nèi)場景圖像上提供了12 468個人類問題答案對,并通過提供準(zhǔn)確性和WUPS得分為{0.9,0.0}的結(jié)果,遵循相同的評估協(xié)議。通過對整個數(shù)據(jù)集及其縮減集進行實驗,該縮減集將輸出空間限制為僅35個對象類別和使用30個測試圖像。此外,還評估了僅存在1、2、3或4個單詞答案的DAQUAR的不同子集的方法。
表1顯示了整套(“多個單詞”)上的Generative adversarial-Image-QA方法的結(jié)果,其中包含645張圖像和5 200個問答對。另外,評估一種經(jīng)過訓(xùn)練只能預(yù)測單個單詞(“單個單詞”)的變體以及不使用視覺功能的變體(“僅語言”)。與先前的工作(在表1中顯示)相比,發(fā)現(xiàn)該模型準(zhǔn)確性提高了9%以上,WUPS分?jǐn)?shù)提高了11%以上(表1中的第二行對應(yīng)“多個單詞”)。請注意,盡管事實是唯一可用于整套比較的已發(fā)布數(shù)字使用了真實對象注釋,但仍實現(xiàn)了這一改進-使文中方法處于不利地位。當(dāng)僅對單個單詞的答案進行訓(xùn)練時,就會觀察到進一步的改進,這會使先前工作中獲得的準(zhǔn)確性提高一倍。將此歸因于語言和視覺表示以及數(shù)據(jù)集偏差的聯(lián)合訓(xùn)練,其中約90%的答案僅包含一個單詞。
表1 生成對抗-圖像問答模型不同的CMC比較
續(xù)表1
根據(jù)答案中的單詞數(shù)(由于性能下降而被截斷為4個單詞),顯示了該模型方法的性能(“多個單詞”)。單字子集上“單個字”變體的性能顯示為水平線。盡管對于較長的答案,準(zhǔn)確性會迅速下降,但是文中模型能夠產(chǎn)生大量正確的兩個單詞的答案。“單個單詞”變體在單個答案上有優(yōu)勢,并受益于數(shù)據(jù)集對此類答案的偏見。
表2顯示了對DAQUAR的單詞答案子集的“單詞”模型的定量結(jié)果。盡管文中與先前的工作相比有了實質(zhì)性的進步,但仍然可以提高30%的人類準(zhǔn)確度和25%的WUPS評分(表1中的“回答”)。
表2 單詞對生成對抗-圖像問答模型的影響
同時為了與M. Malinowski中所提出的多世界方法相比較,還在縮減集上進行了模型的測試,在測試時,該縮減集包含35個對象類和僅包含298個問題-答案對的30幅圖像。如表3所示,生成對抗圖像問答模型在縮減的DAQUAR集上也有改進,準(zhǔn)確率達(dá)到了45.12%,在0.9的WUPS也達(dá)到了51.67%,大大優(yōu)于M. Malinowski的12.73%和18.10%。與之前的實驗相似,使用“單字”變體獲得了最佳性能。
表3 生成對抗-圖像問答模型在縮減數(shù)據(jù)集的表現(xiàn)
為了研究問題中已經(jīng)包含了多少信息,訓(xùn)練了一個忽略視覺輸入的模型版本。結(jié)果顯示在表1和表3下的“僅語言輸入”。單個單詞的“僅語言輸入”的模型(27.24%和41.56%)在準(zhǔn)確性方面與包括視覺的最佳模型相比表現(xiàn)還是不錯的。后者在完整數(shù)據(jù)集和縮減數(shù)據(jù)集上分別達(dá)到29.46%和45.12%。
該文提出了一種神經(jīng)結(jié)構(gòu),用于回答關(guān)于圖像的自然語言問題,與之前基于語義分析的工作形成對比,并通過在這個具有挑戰(zhàn)性的任務(wù)中加倍的表現(xiàn),使之前的工作表現(xiàn)更好。在同樣的條件下,一個不使用圖像來回答問題的模型只比文中提出的模型表現(xiàn)略差。從而得出的結(jié)論是,該模型已經(jīng)學(xué)會了偏見和模式,這些可以被看作是人類用來完成這項任務(wù)的常識和先驗知識的形式。同時這個模型還有許多不足之處,可觀察到,室內(nèi)場景統(tǒng)計、空間推理和小物體并沒有被GAN的全局表示很好地捕捉到,這種表示的真正局限性只能在更大的數(shù)據(jù)集上探索。