當前位置:
首頁 > 最新 > UNC&Adobe提出模塊化注意力模型MAttNet,解決指示表達的理解問題

UNC&Adobe提出模塊化注意力模型MAttNet,解決指示表達的理解問題

選自arXiv

作者:虞立成 等

機器之心編譯

參與:程耀彤、路雪

北卡教堂山分校 (UNC) 虞立成等人近日發表的 CVPR 2018 論文提出了模塊化注意力模型 MAttNet,將 Referring Expression(指示表達)分解為三個模塊:主語、位置和關係,並基於句子和圖片的聯合注意力解析,解決基於指示表達的目標定位問題。實驗表明 MAttNet 在基於自然語句的目標檢測和分割兩種任務上都大幅優於前文的方法。該論文已被 CVPR 2018 錄取,並提供了代碼以及 demo。

代碼鏈接:https://github.com/lichengunc/MAttNet

Demo 鏈接:http://vision2.cs.unc.edu/refer/comprehension

任務

Referring Expression(指示表達)指描述圖片中某一特定物體的一句自然語句。與 Image Captioning 任務不同的是 Referring Expression 具有唯一性和區域性,比如「穿紅色毛衣的女人」或「右邊的男孩」。在日常生活中,無論人與人之間的交流或是人機交互,都會涉及這種指示性的短語表達。所以理解它們並準確定位所描述的物體成為自然交互的必要條件。

指示表達理解的問題可以被定義成:從圖片 I 里的各個物體〖O=〗_(i=1)^N 中選出那個「最」能被指示表達 r 貼切描述的物體 o^*。過往在此問題上的研究可以分為兩類:基於 CNN-LSTM 的框架建模的 P(r|o),以及基於聯合概率框架建模的 P(r, o)。本文使用後者。

模型與方法

文章對數據集進行統計後發現根據目標物體和其他物體的差異性,對它的指示表達可以涉及不同類型的信息。例如,如果目標物體為十個黑球中的一個紅球,那麼對它的指示表達可以很簡單得說「紅球」。如果相同的紅球被放在其他三個紅球中,那麼基於位置的信息可能變得更加重要,例如「右邊的紅球」。或者,如果在場景中有 100 個紅球,那麼球與其他物體之間的關係可能是最明顯的信息,例如「貓旁邊的紅球」。因此,將指示語句的理解模型進行模塊化分析便顯得非常自然直觀。本文利用主語,位置和關係模塊來解析輸入的指示語句,然後觸發不同的視覺模塊進行處理。

本文提出的模塊化注意力模型 (MAttNet) 如圖 1 所示。模型首先將輸入的指示表達分解成三個短語表徵,作為三個視覺模塊的輸入,這些視覺模塊用不同的注意力模型分別計算與其對應的短語的匹配分數。最後,三個模塊的匹配分數的加權總和成為整體匹配得分。整個模型可以無縫鏈接 Mask R-CNN 框架,因而可以做目標定位和目標分割兩個任務。

具體來分析模型的細節。首先是自然語言的分解模塊,作者提出的 Language Attention Network(語言注意力模型)對輸入的指示表達進行主語,位置和關係的三個模塊的拆解。每個拆解後的成分會有兩個輸出,其一是該模塊的詞向量表徵,其二是該模塊占整句句子的權重。然後是三個視覺模塊,給定某個備選物體 (candidate object),我們計算它與三個詞向量表徵的匹配分數。其中,主語的視覺模塊抽取物體的 R-CNN 特徵,並使用該模塊內部的軟注意力模型抽取與詞向量相關的區域,計算匹配分數;位置的視覺模塊抽取物體的位置特徵,將其映射到高維空間後與位置詞向量進行匹配;關係的視覺模塊抽取其周邊其他物體的特徵,使用多示例學習 (Multiple Instance Learning) 選取與關係詞向量最相關的周邊物體,計算得分。最後,三個匹配得分會和上述的三個權重進行內積,得到最終匹配得分。

圖 1:模塊化注意網路 (MAttNet)

實驗結果

實驗中,首先為了和前文進行公平比較,使用了 VGG16 特徵,在目標定位上超過前文~2%。配合上 Mask R-CNN 的特徵後,優勢擴展為~7%。在目標分割上,基本達到前文最佳精度的兩倍。此外,模型具有很好的解釋性,作者展示了三個模塊各自注意到的相關單詞和視覺區域。如圖 2 所示。

結束語

指示表達的應用很廣,人與人的對話系統和人機交互系統都經常會涉及對圖片或場景里的某個目標物體進行自然語言的描述。從作者提供的 demo 來看,方向性的指示表達和對「人」這一類的指示表達,理解得都還比較準確;但對其他物體的指示理解還有進一步的提升空間。作者在提供的代碼的最後寫了一些 Notes,可以作為後續工作的思考方向。

圖 2:MAttNet 在 RefCOCOg 上的結果:第一列為原圖,第二列為輸入的指示表達與其分解結果,第三列為主語模塊的注意區域;第四列為主語模塊的 attribute 輸出;第五列為目標定位(藍筐);第六列為目標分割。

本文為機器之心編譯,轉載請聯繫本公眾號獲得授權。

?------------------------------------------------


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

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


請您繼續閱讀更多來自 機器之心 的精彩文章:

奇異值分解簡介:從原理到基礎機器學習應用
專欄 | 如何做好文本關鍵詞提取?從三種演算法說起

TAG:機器之心 |