如何通過引入硬注意力機制來學習視覺問答任務?
作者 | Mateusz Malinowski, Carl Doersch, Adam Santoro, and Peter Battaglia
譯者 | linstancy
編輯 | Jane
出品 | AI 科技大本營
【導讀】軟注意力機制已在計算機視覺領域取得了廣泛的應用和成功。但是我們發現硬注意力機制在計算機視覺任務中的研究還相對空白。而硬注意力機制能夠從輸入資訊中選擇重要的特徵,因此它被視為是一種比軟注意力機制更高效的方法。 本次,AI 科技大本營將為大家介紹一種通過引入硬注意力機制來引導學習視覺回答任務的研究。 此外結合 L2 正則化篩選特徵向量,可以高效地促進篩選的過程並取得更好的整體表現,而無需專門的學習過程。
摘要
生物感知中的注意機制主要是用於為複雜處理過程選擇感知資訊子集,以對所有感官輸入執行禁止操作。軟注意力機制 (soft attention mechanism) 通過選擇性地忽略部分資訊來對其餘資訊進行重加權聚合計算,已在計算機視覺領域取得了廣泛的應用和成功。然而,我們對於硬注意力機制 (hard attention mechanism) 的探索卻相對較少,在這裡,我們引入一種新的硬注意力方法,它能夠在最近釋出的一些視覺問答資料庫中取得有競爭力的表現,甚至在一些資料集中的效能超過了軟注意力機制。雖然硬注意力機制通常被認為是一種不可微分的方法,我們發現特徵量級與語義相關性是相關的,並能為我們提供有用的訊號來篩選注意力機制選擇標準。由於硬注意力機制能夠從輸入資訊中選擇重要的特徵,因此它被視為是一種比軟注意力機制更高效的方法,特別地對於最近研究中使用非區域性逐對操作 (non-local pairwise) 而言,其計算和記憶體成本的消耗是巨大的。
簡介
視覺注意力有助於促進人類在複雜視覺推理多方面的能力。 例如,對於需要在人群中識別出狗的任務,視覺系統能夠自適應地分配更多的計算處理資源,對狗及其潛在的目標或場景進行視覺資訊處理。當觀察者正觀察場景中的其他目標,而未發覺到一些引人注目的實體時,這種感知效果將變得非常顯著。儘管注意力機制並不是計算機視覺領域中的一項變革性的技術,但由於許多計算機視覺任務,如檢測,分割和分類,並沒有涉及複雜的視覺推理過程,因此這種注意力機制對計算機視覺任務而言還是有幫助的。
視覺問答任務是一項需要複雜推理過程的視覺任務 ,在近些年得到廣泛的關注並取得了長足的進步。 成功的視覺問答框架必須要能夠處理多個物件及其之間複雜的關係,同時還要能夠整合豐富的目標背景知識。 我們意識到計算機視覺中的軟注意力機制主要是通過加權聚合部分重要資訊來提高視覺處理的準確性,但對於計算機視覺中的硬注意力機制的研究相對空白。
在這裡,我們探索一種簡單的硬注意力機制,來引導卷積神經網路的特徵表徵:特徵學習通常需要為硬注意力的選擇提供一種簡單的訪問訊號。 特別地, 用 L2 正則化篩選這些特徵向量已被驗證是一種有助於硬注意力機制的方法, 它能夠高效地促進篩選的過程並取得更好的整體表現,而無需專門的學習過程。下圖1展示了這種方法的結果。注意力訊號直接源自於標準的監督任務損失函式,而無需任何明確的監督訊號來啟用正則化,也無需其他潛在的措施。
圖1 基於給定的自然影象和文字問題輸入,我們的視覺問答架構得到的輸出結果圖。這裡,我們使用了一種硬注意機制,只對那些重要的視覺特徵進行選擇並處理。基於我們模型結構,正則化後視覺特徵的相關性以及那些具有高度相關性幷包含重要語義內容的特徵向量的前提,生成我們的注意力影象。
此外,通過對特徵向量的 L2 正則化處理來選擇重要性特徵,我們的視覺問答框架進一步採用硬注意力機制進行增強。 我們將最初的版本成為硬注意力網路 HAN (Hard Attention Network),用於通過頂層正則化項來選擇固定數量的特徵向量。第二個版本我們稱之為自適應的硬注意力網路 AdaHAN (Hard Hard Attention Network),這是基於輸入來決定特徵向量的可變數量的一種網路結構。我們在大量的資料集上評估我們的方法,實驗結果表明我們的演算法能夠在多個視覺問答資料及上實現與軟注意力機制相當的效能。此外,我們的方法還能產生可解釋的硬注意力掩模,其中所選的影象特徵區域通常包含一些相應的重要語義資訊,如一些連貫的物件。相比於非區域性成對模型,我們的方法也能取得相當出色的表現。
方法
下圖2展示了我們提出的用於學習從影象和問題對映到答案的模型結構。 我們用卷積神經網路 (CNN) 對影象進行編碼 (在這裡採用的是預訓練的 ResNet-101 模型,或是從頭開始訓練小型的 CNN 模型), 並用 LSTM 將問題編碼為一個固定長度的矢量表徵。 通過將答案複製到 CNN 模型中每個空間位置並將其與視覺特徵相連線,我們計算得到組合表徵。經過幾層組合處理後,我們在空間位置上引入注意力機制,這與先前研究中引入軟注意力機制的過程是一致的。 最後,我們將特徵聚合,並使用池化和 (sum-pooling) 或關係模組 (relational modules),通過計算答案類別的標準邏輯迴歸損失來端到端地訓練整個網路。
圖2 我們在模型中引入硬注意力機制來代替軟注意力機制,並遵循標準視覺問答框架的其他結構。影象和問題都被編碼成各自的矢量表徵。隨後,空間視覺特徵的編碼被進一步表示,而問題嵌入相應地通過傳播和連線 (或新增) 以形成多模式輸入表徵。我們的注意力機制能夠有選擇性地選擇用於下一次聚合和處理多模式向量的應答模組。
▌ 1. 硬注意力機制
我們引入了一種新的硬注意力機制,它在空間位置上產生二進位制掩碼,並確定用於下一步處理的特徵選擇。我們將我們的方法稱為硬注意力網路 (HAN),其核心在於對每個空間位置使用 L2 正則化啟用以生成該位置相關性。L2 範數和相關性之間的關係是 CNN 訓練特徵的一種新屬性,這不需要額外的約束或目標。我們的結構也只是對這種現象進行引導而沒有明確地訓練該網路。
因此,與軟注意力機制相比,我們的方法不需要額外的引數學習。HAN 只需要一個額外的、可解釋的超引數:即輸入單元所使用的稀疏,也是用於權衡訓練速度和準確性的引數。
▌ 2.特徵聚合
池化和 在引入注意力機制後,減少特徵向量的一種簡單方法是將其進行池化和操作以生成長度固定的向量。在注意力權重向量為 w 的軟注意力條件下,我們很容易計算得到向量的池化和。在硬注意力條件下,基於選擇的特徵,我們也可以由此類比地計算。
非區域性逐對操作 為進一步改善池化和的效能,我們探索一種與通過非區域性成對計算來演繹推理相類似的方法。其數學描述如下:
在這裡,softmax 函式作用於所有的 i, j 位置。我們的方法能夠成對地計算非區域性嵌入之間的關係,獨立於空間或時間的近似度。硬注意力機制能夠幫助我們減少所要考慮的設定,因此我們的目標在於測試通過硬注意力選擇的特徵是否能與此操作相相容。
實驗
為了展示硬注意力機制對視覺問答任務的重要性,我們首先在 VQA-CP v2 資料集上,將 HAN 與現有的軟注意力網路 SAN 進行比較分析,並通過卷積對映直接控制空間單元出現的數量來探索不同程度的硬注意力的影響。隨後,我們評估 AdaHAN 模型並研究網路深度和預訓練策略的影響,這是一種能夠自適應地選擇單元出現數量的一種模型。最後,我們展示了定性的實驗結果,並提供了在 CLEVR 資料集上的結果,以表明我們方法的通用性。
▌ 1.實驗細節
我們的模型都使用相同的 LSTM 模型用於問題嵌入,其大小為512,並採用在 ImageNet 資料集上預訓練的 ResNet-101 模型的最後一個卷積層 (能夠產生10×10空間表徵,每個具有2048個維度),用於影象嵌入。此外,我們還使用3層大小分別為1024、2048、1000的 MLP 結構,作為一個分類模型。我們使用 ADAM 進行優化,採用分散式設定,以128每批次大小來計算梯度值,並根據經驗在Visual QA資料集上選擇預設的超引數。
▌ 2.資料集
VQA-CP v2 資料集的結果 :VQA-CP v2 資料集包含 121K (98K) 張影象資料,438K (220K) 條問題資料以及 4.4M (2.2M) 答案資料。該資料集提供了標準的訓練測試過程,並將問題分解為不同的型別:如答案為肯定/否定型別,答案是數字型別,以及其他型別等,這有助於我們用每種問題型別準確性來評估網路架構的效能。
CLEVR: CLEVR 是一個合成數據庫,由 100K 張 3D 渲染影象組成,如球體、圓柱體等。雖然視覺任務相對簡單,但解決這個資料集也需要推理目標間的複雜關係。
▌ 3.結果分析
-
硬注意力機制的影響
我們考慮最基礎的硬注意力結構:採用硬注意力機制,並對每個出現單元進行池化和操作,最後連線一個小型的 MLP 結構。下表1展示了我們的實驗結果。可以看到,引入硬注意力機制不僅不會丟失特徵的重要資訊,還能在較少出現單元的情況下,取得相當的效能結果,這表明了這種機制是影象的重要部分。此外,在表1下面我們還與軟注意力機制進行了對比,可以發現軟注意力機制的表現並不優於我們的方法。
表1 不同出現單元數量和聚合操作的效能比較。我們考慮簡單的和操作和非區域性成對計算作為特徵聚合的工具。
-
自適應硬注意力機制的結果
下表2展示了自適應硬注意力機制的實驗結果。我們可以看到,自適應機制使用非常少的單元:進行池化和計算時,只使用100個單元中的25.66個,而進行非區域性成對聚合時,則只有32.63個單元被使用。這表明即便非常簡單的自適應方法,也能給影象和問題的解決可以帶來計算和效能方面的提升,這也說明更復雜的方法將是未來工作的重要方向。
表2 不同自適應硬注意力技術、單元出現的平均數量和聚合操作的效能對比。我們考慮一種簡單的和操作和非區域性成對聚合操作。
此外,下表3展示了移除兩層結構後自適應硬注意力機制的效能表現。可以看到,移除這些層後,模型的表現下降了約1%,這表明了決定單元出現與否需要不同的資訊,這不同於 ResNet 模型的分類微調設計,同時也說明了深度對於自適應機制的影響。
表3 在 VQA-CP v2 資料集上不同單元出現數量的效能比較。其中第二列表示輸入單元出現的百分比,而第三列代表 MLP 結構的層數。
-
定性結果及 CLEVR 資料集結果
下圖3、圖4展示了我們方法的定性實驗結果。圖3展示了採用不同硬注意力機制(HAN、AdaHAN)、不同聚合操作 (和操作、逐對操作) 的實驗結果。而圖4展示了採用最佳的模型設定:自適應硬注意力機制加上非區域性逐對聚合操作 (AdaHAN+pairwise),在 VQA-CP 資料集上的實驗結果。
圖3 不同硬注意力機制和不同聚合方法變體的定性結果
圖4 AdaHAN+pairwise 的定性結果
此外,我們還進一步在 CLEVR 資料集上驗證我們方法的通用性,其他的設定與 VQA-CP 資料集上相類似。下圖5展示了兩種方法的實驗結果。
圖5 在 CLEVR 資料集上相同超引數設定,不同方法的驗證精度結果。(a) HAN+RN (0.25的輸入單元) 和 標準的 RN 結構 (全輸入單元),訓練12個小時來測量方法的有效性。(b) 我們的硬注意力方法。
結論
我們已經引入了一種新的硬注意力方法用於計算機視覺任務,它能夠選擇用於下一步處理的特徵向量子集。我們探索了兩種模型:一個選擇具有預定義向量數量的 HAN 模型,另一個自適應地選擇子集大小作為輸入的 AdaHAN。通過特徵向量數量與相關資訊的相關性,我們的注意力機制能夠解決文獻中現有方法存在的梯度問題。經過大量的實驗評估,結果表明了在具有挑戰性的 Visual QA 資料集上,我們的 HAN 和 AdaHAN 模型能夠取得有競爭力的效能表現,並在某些時候取得相當甚至超過軟注意力機制的表現,同時還能提供額外的計算效率優勢。最後,我們還提供了可解釋性表示,即對所選特徵的空間位置中相應貢獻最大、最顯著的部分進行了視覺化。
原文連結:
https://arxiv.org/abs/1808.00300
--【完】--
尋找2018最佳AI應用案例
AI科技大本營希望找到在汽車、金融、教育、醫療、安防、零售、家居、文娛、工業等 9 大行業的最佳 AI 應用案例,記錄 AI 時代影響人類發展的變革性產品/解決方案。
如果您有優秀的 AI 產品/技術解決方案,歡迎 【掃碼提交】 ,參與評選。
點選 「閱讀原文」 ,檢視案例分享者特別獎勵