小樣本域適應的目標檢測

引言

最近筆者也在尋找目標檢測的其他方向,一般可以繼續挖掘的方向是從目標檢測的數據入手,困難樣本的目標檢測,如檢測物體被遮擋,極小人臉檢測,亦或者 數據樣本不足 的算法。

這裡筆者介紹一篇 小樣本(few-shot) 數據方向下的 域適應(Domain Adaptation) 的目標檢測算法,這篇新加坡國立大學 & 華為諾亞方舟實驗室的論文 Few-shot Adaptive Faster R-CNN 被收錄於 CVPR 2019 ,解決的具體問題場景是在普通常見場景下的汽車目標檢測。

小樣本域適應的目標檢測


我們只有少量霧天暴雨極劣天氣環境下的汽車樣本,那麼我們可以使用成對採樣(pairing-sampling)的方法,源域(source domain)即普通場景下的汽車樣本 Cars 和目標域(target domain)即 惡劣天氣下的汽車樣本 成對( , )組成負樣本 ,另一方面 源域下成對組成正樣本,使用 GAN 的結構,判別器(discriminator)儘可能去分辨正負樣本的不同,也就是 分辨出源域和目標域的樣本 ,生成器(generator)是嘗試去迷惑判別器。 這就是這個算法的主要思想,主要是把域適應的思想應用到了目標檢 測上。

論文源碼還沒完全開源,只找到了個官方的 repo:

https://github.com/twangnh/FAFRCNN

思考

在介紹文章具體網絡設計和損失函數的設計之前,我們可以帶著一個問題去思考。

用 GAN 的結構,數據樣本使用 作為正樣本、 作為負樣本也可以使判別器(discriminator)分辨出源域和目標域的樣本,為什麼這裡要組成對的去訓練?

算法設計

小樣本域適應的目標檢測

▲ Fig 1. Few-shot Adaptive Faster R-CNN (FAFRCNN) 的整體網絡結構(其中的SMFR模塊後面會介紹到)

在目標檢測的任務中,論文作者把域適應問題分成 兩個層次

  • 圖像級別的域適應
  • 實例級別的域適應

具體可以看下面 Fig2 的第一行和第三行,圖像級別下的域遷移是整體圖像各個像素組成的域遷移,實例級別的域遷移是汽車樣本下的域遷移。

小樣本域適應的目標檢測

▲ Fig 2. 中間為兩張來自Cityspaces和Foggy Cityspaces的圖片。 第一行為圖像級別的域遷移,第三行為實例級別的域遷移。

圖像級別的域適應

圖像級別的域適應(Image-level Adaptation) 是為了完成 image-to-image 的轉換,論文提出了 split pooling(SP) 的方法,作用是為了隨機放置 grid,做法也是十分簡單,grid cell 的寬為 w,高為 h,然後隨機生成 sx 和 xy,grid 根據 sx 和 sy 調整位置。

小樣本域適應的目標檢測

▲ Fig 3. grid的選擇

得到 grid 之後,論文把 grid 與 Faster R-CNN中選取 anchor boxes 一樣,採取了三種 scale 和三種 ratio,split pooling 對應在提取的特徵 f(x) 中也是有大(l)、中(m)、小(s)三種 scale:。

後面就可以用對抗訓練的方式訓練生成器和判別器了,但是因為目標域的樣本是小樣本數據,所以這裡提出了成對訓練的方式,即 源域對

小樣本域適應的目標檢測

和源域-目標域對

小樣本域適應的目標檢測

判別器判斷樣本來源,生成器是特徵提取器器目標是混淆判別器。

小樣本域適應的目標檢測

另外論文在圖像級別的域適應用了三個 GAN,實用性不知道如何。

實例級別的域適應

跟 Faster R-CNN 中不同的是:foreground ROIs 要求更高的 IOU 閾值(比如原本 IOU 要求是 0.5 的,現在可能要 0.7)。獲得了 ROI 特徵之後會根據 ROI 的 label 分組,源域目標特徵是 ,目標域目標特徵為 ,如果一共有 C 類,i∈[0,C],第 0 類為背景,其實跟圖像級別的成對方式一樣, 源域對

小樣本域適應的目標檢測

和源域目標域對

小樣本域適應的目標檢測

,其中

小樣本域適應的目標檢測

,以下為域判別器的損失函數:

小樣本域適應的目標檢測

以下為 feature generator 的損失函數:

小樣本域適應的目標檢測

源域模型特徵正則化

這個部分就是 Fig 1 中的 SMFR 模塊,全稱為 Source Model Feature Regularization,他的作用是正則化源域模型,具體來說,就是源域樣本經過論文的域適應 adaptation 之後的特徵提取器和初始時擁有的僅有源域樣本訓練的特徵提取器要儘可能的一致,這樣才能使模型更加魯棒,文章用了 L2 正則。

小樣本域適應的目標檢測

但是因為是目標檢測模型,我們更關注的是圖片的前景目標本身,所以我們要求的是源域樣本經過特徵提取器之後的前景部分變化不大。

小樣本域適應的目標檢測

其中 M 為前景的 mask,k 為正例掩碼位置的個數。

實驗結果

實驗中數據集採用以下 5 種:

  • Scenario-1: SIM10K to Udacity (S→U);
  • Scenario-2: SIM10K to Cityscapes (S→C);
  • Scenario-3: Cityscapes to Udacity (C→U);
  • Scenario-4: Udacity to Cityscapes (U→C);
  • Scenario-5: Cityscapes to Foggy Cityscapes (C→F).

以下都是採用 AP 作為對比評價指標。

小樣本域適應的目標檢測

▲ Fig 4. 左邊是SP技術在Scenario-1和Scenario-2的效果。右邊是SP技術在Scenario-3和Scenario-4的效果。sp表示的是split pooling,ins表示加入實例級別的域適應,ft表示加入fine-tunning loss。

可以看出,在加入 SP 技術之後 AP 得到明顯的提高,比 ADDA [1] 高了 5 個點。

小樣本域適應的目標檢測

▲ Fig 5. 論文提出的方法在Scenario-5中的各個實例的AP指標對比從UDA_setting中看到其實並不是全部都能取到最優成績。

小樣本域適應的目標檢測

▲ Fig 6. 引入pairing理論的效果

小樣本域適應的目標檢測

▲ Fig 7. SMFR的效果

總結思考

回答文首的問題,相信很多讀者讀完全文之後肯定也知道答案了,paper 題目就是基於小樣本學習方向的,其實需要成對訓練的目的就是增加訓練樣本,如果源域樣本 有 n 個,目標域樣本 有 m 個(n>m),那麼最後負樣本的個數僅僅只有 m 個,因為是小樣本,訓練出來的效果也會十分的差。 但是如果成對訓練(pairing-sampling),正樣本為( , ),理論上樣本數量為,為 s 負樣本為,理論上樣本數量為( , ),雖然經過這樣笛卡爾積之後的正負樣本比沒有變,但是負樣本數量卻是增多了。 這也是整篇文章的主要思想,pairing-sampling 的去訓練。

參考文獻

[1]. Eric Tzeng, Judy Hoffman, Kate Saenko, and Trevor Darrell. Adversarial discriminative domain adaptation. In Computer Vision and Pattern Recognition (CVPR), volume 1, page 4, 2017.

[2]. https://github.com/twangnh/FAFRCNN


分享到:


相關文章: