論文閱讀筆記《Few-shot Object Detection via Feature Reweighting》

核心思想

  本文提出一種小樣本目標檢測算法。整體網絡結構採用單階段目標檢測的形式,利用一個預測網絡同時輸出目標框的位置及類別結果。網絡結構如下圖所示
在這裏插入圖片描述
  首先,查詢集圖片II經過特徵提取網絡D\mathcal{D}得到對應的特徵圖F=D(I)F=\mathcal{D}(I),支持集圖片IiI_i和利用真實邊界框製作的掩碼圖MiM_i一起輸入到重加權模塊(Reweighting Module)M\mathcal{M}中,得到每個類別對應重加權向量wi=M(Ii,Mi)w_i=\mathcal{M}(I_i,M_i)。然後將重加權向量wiw_i作爲卷積核,分別對查詢集圖片對應的特徵圖FF做1 * 1的卷積操作,得到重加權後的特徵圖FiF_i,計算過程如下
在這裏插入圖片描述
最後將重加權後的特徵圖FiF_i輸入到預測網絡P\mathcal{P}中,輸出每個預定義的錨點(anchor)對應的預測結果
在這裏插入圖片描述
式中oo表示存在物體的概率,(x,y,h,w)(x,y,h,w)表示編輯框的位置和尺寸,cic_i表示物體屬於類別ii的概率。

實現過程

網絡結構

  特徵提取網絡和預測網絡採用YOLOv2的結構(DarkNet-19),重加權模塊採用一種輕權重的CNN結構,即參數量較小的CNN,文中說細節結構見支持材料,但我並沒有找到。

損失函數

  整個網絡的訓練目標函數如下
在這裏插入圖片描述
式中θD,θM,θP\theta_{D},\theta_{M},\theta_{P}分別表示特徵提取網絡,重加權模塊和預測網絡的參數。目標檢測損失函數包含一下三個部分
在這裏插入圖片描述
式中LcL_c表示分類損失,作者利用softmax函數將各個類別的預測結果歸一化到[0,1]的範圍內,得到每個類別的概率值c^i\hat{c}_i,然後利用下式計算分類損失LcL_c
在這裏插入圖片描述
式中1(,i)\mathbb{1}(\cdot,i)是一個指示函數,表示當前的錨點框是否屬於類別ii。編輯框迴歸損失LbbxL_{bbx}和置信度損失LobjL_{obj}均與YOLOv2中計算方法相同。

訓練策略

  訓練過程分爲兩個階段:第一階段在基礎數據集上進行訓練;第二階段在基礎數據集和新數據集上做微調訓練,爲了保證類別間的平衡性,基礎數據集中每個類別的樣本數量與新數據集每個類別的樣本數量保持一致。

創新點

  • 在YOLOv2的基礎上增加了重加權模塊,利用支持集圖像信息幫助網絡提高目標檢測的能力

算法評價

  本文可能是最早採用單階段形式實現小樣本目標檢測的文章,相對於兩階段形式,單階段方法將定位與分類任務融於一體,同時完成,這對於小樣本任務來講更加困難。作者利用重加權模塊將支持集圖像的信息很好的融合到查詢集圖像對應的特徵信息中,幫助網絡實現了單階段小樣本學習任務。但該方法同樣需要在預測時同時輸入查詢集圖片和多種類別的支持集圖片,在實際應用中並不方便。

如果大家對於深度學習與計算機視覺領域感興趣,希望獲得更多的知識分享與最新的論文解讀,歡迎關注我的個人公衆號“深視”。在這裏插入圖片描述

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