當前位置:
首頁 > 科技 > 如何看圖說話?Facebook提出全新的基於圖像實體的圖像字幕框架

如何看圖說話?Facebook提出全新的基於圖像實體的圖像字幕框架

原文來源:arXiv

作者:Jiasen Lu、Jianwei Yang、Dhruv Batra、Devi Parikh、Georgia Institute of Technology、Facebook AI Research

「雷克世界」編譯:嗯~是阿童木呀、KABUDA、EVA

導語:一直以來,圖像字幕都是計算機視覺和自然語言處理中一個非常具有挑戰性的問題,而在本文中,針對這一問題,Facebook提出了一種全新的稱之為Neural Baby Talk的圖像字幕框架。它能夠生成基於目標檢測器所發現的實體的自然語言。

在本文中,我們介紹了一種新型圖像字幕(image captioning)框架,它可以為圖像中目標檢測器所發現的實體明確地建立自然語言。我們的方法將傳統的槽形填充式字幕方法(通常在基於圖像的情況下更好)與有現代的神經字幕方法(通常更自然純正和精確)相協調。我們的方法首先生成一個句子「模板」,其中的槽位明確地與特定的圖像區域綁定。然後這些插槽被目標探測器在該區域中識別的視覺概念所填充。整個架構(句子模板生成和目標檢測器槽形填充)是端到端可微的。我們驗證了所提出的模型自不同圖像字幕任務上的有效性。在標準圖像字幕和新型目標字幕上,我們的模型在COCO和Flickr30k數據集上達到了最先進的水平。我們還證明了,當場景組成的訓練和測試分布與相關字幕的語言先驗不同時,我們的模型具有獨特優勢的。代碼可以從https://github.com/jiasenlu/NeuralBabyTalk中獲得。

可以這樣說,圖像字幕是一個非常具有挑戰性的問題,它存在於計算機視覺和自然語言處理的交叉點上。它涉及這樣一個問題:生成一個能夠準確地對圖像內容進行總結的自然語言句子。圖像字幕也是邁向真實世界應用的重要的第一步,具有重要的實際影響,範圍涉及幫助視力受損用戶,到個人助理,再到人機交互。

使用(a)Baby Talk、(c)神經圖像字幕和(b)我們的Neural Baby Talk方法生成的樣本標題。我們的方法生成帶有插槽位置的句子「模板」,並與圖像區域進行明確綁定(在圖像中以相應的顏色進行繪製)。隨後,這些插槽然後由目標檢測器在區域中檢測到的概念進行填充。

目前,最先進的圖像字幕模型往往是單片神經模型(monolithic neural models),本質上是「編碼器-解碼器」範式。圖像被編碼成一個帶有卷積神經網路(CNN)的向量,並且使用循環神經網路(RNN)對該向量進行解碼為字幕,而整個系統以端到端的方式進行訓練。雖然最近有很多的關於這個基本思想的拓展將注意力包含在內了,但人們很清楚,模型仍然缺乏視覺基礎,即,不要將已命名的概念與圖像中的像素相關聯。他們往往傾向於「看」不同的區域,而人類的往往更傾向於從訓練數據中複製字幕。

例如,在圖1中,一個神經圖像字幕方法將圖像描述為「一隻狗坐在一個帶有玩具的沙發上」。這不太準確。但是,如果有人真的眯著眼睛觀察這幅圖,它可能(看起來)看起來就像這樣一個場景,其中,狗可能坐在一個帶有玩具的沙發上。在有玩具的沙發上發現狗是很平常的事情。先驗的描述是合理的。而這正是現如今的神經字幕模型傾向於實現的——根據能夠與場景的第一印象要點相匹配的語言模型,生成通用合理的字幕。雖然這可能對於普通場景來說足夠好了,但鑒於我們的視覺世界的多樣性,有很多這樣的圖像,它們不同於普通場景中的圖像,而對於這樣的圖像來說僅使用這些模型是遠遠不夠的。

如果我們退一步進行思考,我們是否真的需要語言模型來完成圖像字幕的繁重工作?鑒於我們在目標識別中所取得的前所未有的進展(例如,目標檢測、語義分割、實例分割、姿態估計),這似乎看起來,視覺管線肯定可以做得比僅僅依賴於場景的首要要點好得多。事實上,當今最先進的目標探測器可以成功檢測圖1(c)中所展示的圖像中的桌子和蛋糕!標題應該談論的是實際檢測到的桌子和蛋糕,而不是語言模型所幻想的沙發和玩具,因為這樣聽起來似乎是合理的。

從左至右是使用相同模型,不同檢測器生成的字幕:(1)無檢測器(2)弱檢測器,只檢測到「人」和「三明治」(3)經COCO訓練過的檢測器(檢測結果中顯示了「泰迪熊」)(4)能夠檢測到新概念的檢測器(字幕中首次出現了「Ted先生」和「派」),使用不同顏色表示視覺辭彙與基礎區域之間的對應關係。

有趣的是,在深度學習「革命」爆發之前,在圖像字幕方面所做的某些初次嘗試,主要依賴目標檢測器和屬性分類器的輸出來對圖像進行描述。例如,圖1中Baby Talk的輸出,它使用槽形填充方法,通過模板字幕來表示場景中所發現的所有目標和屬性。雖然語言不夠自然,但標題是完全建立在模型所觀察到的圖像的基礎之上的。如今的方法落腳在另一個極端——雖然現代神經圖像字幕方法生成的語言更加自然,但它卻傾向於以更少的圖像為基礎。

在本文中,我們介紹了調和這些方法的Neural Baby Talk。它產生了基於目標檢測器所發現的實體的自然語言。這是一種神經方法,它可以生成句子「模板」,其中槽的位置明確與圖像區域相關聯。然後,目標檢測器利用在該區域中所找到的概念填充這些槽。而這一方法是以端到端的方式進行訓練的,從而會產生自然的聲音和基礎字幕。

所提出方法的一個塊,給定一幅圖像,來自任何目標探測器和當前單詞「A」的提議,該圖顯示了預測下一個視覺單詞「cat」的過程。

我們的主要技術貢獻是一種全新的用於基礎圖像字幕的新型神經解碼器。具體而言,在每個時間步中,模型會決定是從文本辭彙中生成一個單詞還是生成一個「視覺」單詞。視覺單詞本質上是一個標記,它將為描述圖像中特定區域的單詞保留槽位。例如,對於圖1中的圖像而言,生成的序列可以是「A坐在一個帶有的上。」然後在第二階段(例如,小狗桌子)對每個指示區域進行分類,並填入視覺單詞(』s),從而最終描述「小狗正坐在一張桌子上,身旁擺放著一個蛋糕」——基於圖像的自由形式的自然語言描述。我們的模型具有一個很好的特徵,那就是它可以輕鬆地插入不同的目標檢測器。因此,我們可以使用不同的檢測器後端為同一圖像生成多種標題,就像圖2所展示的那樣。

在標準圖像字幕任務上生成的字幕和相應的視覺基礎區域

我們的貢獻

?我們介紹了Neural Baby Talk——一種全新的以視覺為基礎的圖像字幕框架,它在生成自由形式的自然語言描述的同時,對圖像中的目標進行了明確定位。

?我們的方法分為兩個階段,首先生成混合模板,該混合模板包含(文本)單詞和與圖像區域明確關聯的槽位,然後通過識別相應圖像區域中的內容,來填充帶有(文本)單詞的槽位。

?我們提出了一個具有魯棒性的圖像字幕任務,用於測試圖像字幕演算法的組合性,其中,模型在測試時,會以全新的組合方式遇到包含已知目標的圖像(例如:模型在訓練時看到了在沙發上的狗和桌子旁的人,但在測試時遇見了在桌子上的狗)。泛化到這種全新的組合中是展示圖像基礎的一種方式,而不是簡單地利用來自訓練數據的相關性。

?在標準圖像字幕任務上,我們提出的方法在COCO和Flickr30k數據集上實現了最先進的性能表現,並且在具有魯棒性圖像字幕和新的目標字幕任務上的表現要明顯優於現有方法。

在本文中,我們介紹了Neural Baby Talk,這是一種全新的圖像字幕框架,它基於目標檢測器在圖像中發現的實體,從而產生明確的自然語言。我們採用一種兩階段方法,首先生成一個混合模板,其中包含來自文本辭彙表的單片語合以及與圖像區域相對應的槽位。然後,根據目標檢測器在圖像區域中識別的類別來填充槽位。通過對COCO數據集的序列和值分割進行重組,我們引入了一種具有魯棒性的圖像字幕分割方法。經過在一系列標準、具有魯棒和全新的目標圖像字幕任務上的實驗結果,充分證實了我們所提出的方法的有效性。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷克世界 的精彩文章:

谷歌大腦提出對智能體進行正向-反向強化學習訓練,加速訓練過程

TAG:雷克世界 |