論文名稱:Libra R-CNN: Towards Balanced Learning for Object Detection
論文作者:Jiangmiao Pang, Kai Chen, Jianping Shi, Huajun Feng, Wanli Ouyang, Dahua Lin
發行時間:Submitted on 4 Apr 2019
論文地址:https://arxiv.org/abs/1904.02701v1#
代碼開源:https://github.com/open-mmlab/mmdetection
一. 前言
在檢測過程中,作者對在CNN中連續卷積不同尺寸的feature map劃分成三個層次:sample level, feature level, objective level. 並提出 Libra R-CNN 來對object detection也就是上面三個level進行平衡。其中, Libra R-CNN 集稱了三個部件:
- IoU-balanced sampling
- 用於減少樣本數(sample)
- balanced feature pyramid
- 用於減少特徵數(feature)
- balanced L1 loss
- 用於減少目標水平的不平衡(objective level)
Libra R-CNN在沒有bells和whistles的情況下,在MSCOCO上分別比FPN和RetinaNet在AP(平均精度)上提高了2.5和2.0 points
二. Libra R-CNN Model
作者將本文的檢測模型分爲了三個階段:
- sample level
- 用於得到image中描繪出object的候選框框
- feature level
- 將不同尺寸的特徵金字塔進行特徵融合
- objective level
- 用於將image中的對象分類和定位
圖例:
對於Libra R-CNN,作者一共構建了三個組件:
1. Balanced IoU sampling
對於一般的random sampling(從M個候選框中選出N個Negative樣本),對每個樣本的選擇概率是
而通過實驗發現hard和sample的分佈不均衡,而作者提出 IoU-balanced sampling 的方法來提高hard negatives的選擇概率,即通過將採樣間隔均分成K個批次,然後每次從這些批次中均勻的選擇樣本(從M個候選框中選出N個Negative樣本,並分成K個批次)
其中,
- 是在對應的分成的K個批次的一次中的抽取的候選框的數量
- 是均分成的批次,本實驗默認爲
2. Balanced feature pyramid
作者提出,首先由FPN對image提取處4種不同尺度的feature , 然後對這四種size的feature進行rescale操作到同一尺度的feature:上採樣和下采樣(線性插值和池化操作),最後再對之進行一個Refine操作,得到不同尺度的feature ,過程如下圖所示:
a. 詳細過程
- 輸入image,由FPN得到不同尺度的feature
- 執行Integrate操作得到平均了的一個feature
- 執行Refine操作得到和之前各層的相同尺寸4個的feature用於後面的對象檢測
b. Integrate過程解釋
- 通過上採樣(插值)和下采樣(Pool)將上述四個不同size的feature轉換到同一尺度
- 對這四個同一size的feature執行取平均的操作得到平均的feature
c. Refine過程解釋
將AVG的feature經過 non-local network 或者 conv 再次得到和之前各層的相同尺寸4個的feature
Non-local network 與 Conv操作相比,差別不大,但是 Non-local network 要更加穩定
3. Balanced L1 loss
首先定義兩名詞:
- outliers:sample(採樣)到的gradient(梯度)大於等於1的樣本,可視爲 hard sample,不易於訓練
- inliers:sample(採樣)到的gradient(梯度)小於1的樣本,可視爲 easy sample,對訓練較友好
作者通過實驗發現,在train過程中,較少的outliers卻貢獻了的梯度,而較多的inliers卻只貢獻了的梯度,需要採取某種措施來讓loss的計算更加均衡:
重新定義L1 loss梯度,記爲:
即對 的梯度進行了替換,通過
- 來使得 inliers 獲得更多的梯度,本實驗設置爲0.5
- 通過整體放大來來調整迴歸誤差的上界,使得目標函數更好地平衡參與的任務, 本實驗設置爲1.5
- 則用於平衡 和 ,它們需要滿足該式子:
對上述梯度進行積分,得到 L1 loss function:
三. 實驗結果
可見提升效果還是挺大的
四. 總結
作者提出 balanced 概念,並將這個概念分別應用到IoU檢測候選框、特徵融合、損失計算這三個方面上,效果顯著提升,值得一讀