基於注意力的多行人屬性識別模型

點擊上方  CVpython  關注公衆號
學習更多幹貨

論文題目《An Attention-Based Deep Learning Model for Multiple Pedestrian Attributes Recognition 》

鏈接:https://arxiv.org/abs/2004.01110

作者單位:清華大學

年份:2020

1. 論文主要解決什麼問題?

行人屬性預測是一個多任務學習問題。爲了共享特徵表達,傳統的多任務學習方法通常學習特徵或者特徵子空間的線性組合。但是這種組合排除了通道之間的複雜的相互依賴性。更何況,空間信息交換也很少被考慮。論文提出了協同注意力共享(CAS)模型來提取具有判斷力的通道和空間區域,以便在多任務學習中很好地共享特徵。

說人話:以前多任務的方法真弱雞,很多都只是把特徵簡單相加,不考慮特徵通道信息依賴性和空間信息的交互?

2. 論文如何解決問題?

行人屬性分類方法中,常用的網絡結構如如圖1所示:

  • Hard-Sharing 結構,但是可能容易產生負轉移問題,也就是說對一個某個行人屬性進行預測的時候可能容易被其他屬性所影響。
  • Vanilla 結構,它集成了兩個獨立的網絡結構,分別負責預測不同的屬性。聯繫緊密的屬性就分成同一個組,由同一個網絡負責。但是兩個網絡之間沒有任何的交互,一些有用的相關信息可能沒有被利用起來。
  • Soft-Sharing 結構,集成Hard-Sharing 和Vanilla 結構的優點,每一層利用一個模塊來決定哪些特徵該共享哪些不該共享。

之前的多任務學習的方法,譬如Cross Stich模塊和Sluice模塊,不同任務之間的特徵交互只是通過簡單的元素相加操作,忽略了通道信息。而且行人屬性通常跟不同的空間位置有較大的關係。因此作者提出了協同注意力共享(CAS)模型來提取具有判斷力的通道和空間位置,以便在網絡間共享特徵。

作者提出的CAS模型如圖2所示:

這一種Soft-Sharing 結構,由兩個網絡及其中間的交互模塊組成。上下兩個網絡結構是一致的,輸入特徵 經過GAP(全局平均池化)得到 ,然後把 “喂入”全連接層便可得到中間向量

  • 協同分支(Synergetic Branch):該分支的輸入爲 ,它由上面的網絡 和下面的網絡 的中間向量 經過全連接層得到的結果。 與該層的 進行 相乘操作,結果分別記爲 。然後對 進行通道接拼,得到 。然後 ,對其結果進行卷積操作,結果記爲 。其中 分別是通道上的平均值和最大值函數。 經過卷積得到 。協同分支的輸出便是 了。其中 將會被送入到注意力分支。
  • 注意力分支(Attentive Branch):該分支的輸入爲 ,它由 經過全連接層所得到。然後 與協同分支的輸出 進行 相乘,其結果記爲
  • 任務分支(Task-specific Branch):該分支的輸入爲 ,它也是由 經過全連接層所得到。然後 與該層的 進行 相乘,其結果記爲
  • 分支聚合: 進行 的相加,其結果與 進行 相乘。得到的結果將"喂入"下一層網絡。

3. 實驗結果如何?

  • 結果超過了傳統共享單元的方法,與SOTA的相比,也達到了更好的結果。

4.對我們有什麼指導意義?

  • 多任務學習中,Soft-Sharing 結構優於Hard-Sharing 結構和Vanilla 結構。

  • 空間信息對於行人屬性識別還是很重要的,對特徵 相加操作可能不太有利用提取空間區域信息,但是concat操作應該還是有用的。

往期精彩


作者 | Gavin

一隻菜鳥程序猿



本文分享自微信公衆號 - CVpython(CVpython)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章