關於focal loss和分類任務中的hard negative(positive)mining

深度學習,數據是關鍵。

在訓練一個分類器的時候,對數據的要求是class balance,即不同標籤的樣本量都要充足且相仿。然而,這個要求在現實應用中往往很難得到保證。

下面我以基於檢測的單目標跟蹤舉例分析這個問題。

visual object tracking是在一段視頻中跟蹤一個特定目標。常見的方法有one-stage regression(比如correlation filter tracking)和two-stage classifcation tracking。這裏我們只關注後者。two stages分別是首先在上一幀視頻中目標的跟蹤位置周圍採樣得到一堆target candidates(這與two-stageRCNN系列檢測器的proposal生成是一樣的意思);在第二個stage,就要使用訓練所得的一個classfier來進行前景or背景的而分類

訓練這個第二stage中的classfier就面臨這class imbalance的問題(在two-stage檢測器中同理。這就可以推廣爲,凡是在一個estimated bounding box周圍隨機採集正負樣本bounding box時,都會有imbalance的問題。),即嚴格意義上的正樣本只有一個,即the estimated bounding box,而負樣本則可以是這一幀圖像上除了正樣本bbox之外的所有bbox。爲了放寬這一要求,採用bbox IoU thresholding的方法來使得那些與正樣本bbox overlap足夠大的bbox也被認定爲是正樣本呢,多麼無奈的妥協。但即便是這樣,依舊存在嚴重的imbalance。

爲了解決這種imbalance,在訓練一個分類器(用cross-entropy loss)的時候,就需要設計一些hard (postive/negative)samples mining [1-5] 的策略。focal loss [1-4] 就是一種hard samples mining的手段。所謂mining(挖掘),就是去讓那些掩埋很深的(weight share很小的:因爲在使用cross-entropy loss做mini-batch SGD時,是大量的樣本產生的loss average之後計算gradient以及實施參數update。這個average的操作是傷的,因爲一個batch裏面easy sample佔絕大多數,hard sample只佔很少部分,如果沒有re-weighting或者importance balancing,那麼在average之後,hard sample的contribution完全就被easy samples侵蝕平均抹掉了。更嚴重的是,往往這些hard samples,纔是分類器性能進一步提升的bottleneck)寶藏(hard sample:很少出現但是現實存在的那些極端樣本,比如車輛跟蹤中出過事故的車輛。這裏符合一個樣本呢的long-tail效應[6])被重視被獲得。具體是postive or negative mining,體現在是給postive還是negative sample更大的re-weighting權重

我理解的focal loss 是,利用一個re-weighting factor來modulating(re-weighting)每一個樣本的importance,得到一個cost sensitve的classifier

focal loss的具體實現在此以而分類cross entropy loss舉例:

無focal:

                                       

有focal(hard negative mining,加大難的負樣本權重):

                                  

上式中p是classifer輸出的[0,1]實數值,y是非0即1的label。將一個一維實數p進行二分類化的操作是令p指示label = 1爲正樣本的概率,另1-p指示label = 0爲負樣本的概率。focal loss的核心就是直接用p作爲modulating(re-weighting factor),當一個負樣本很難時,p略小於0.5;easy negative則是p遠小於0.5。所以hard negative mining就體現在給1-p越小的negative(hard negative)乘以一個越大的factor(p)

 

 

 

 

本blog提供的citation主要面向跟蹤(檢測)領域:

[1] T.-Y. Lin, P. Goyal, R. Girshick, K. He, and P. Doll´ar. Focal loss for dense object detection. In IEEE International Conference on Computer Vision, 2017. 

[2] Song, Y., Ma, C., Wu, X., Gong, L., Bao, L., Zuo, W., ... & Yang, M. H. (2018). VITAL: VIsual Tracking via Adversarial Learning. arXiv preprint arXiv:1804.04273.

[3] Dong X, Shen J. Triplet Loss in Siamese Network for Object Tracking[C]//Proceedings of the European Conference on Computer Vision (ECCV). 2018: 459-474.

[4] A. Shrivastava, A. Gupta, and R. Girshick. Training regionbased object detectors with online hard example mining. In IEEE Conference on Computer Vision and Pattern Recognition, 2016.

[5] P. F. Felzenszwalb, R. B. Girshick, and D. McAllester. Cascade object detection with deformable part models. In IEEE Conference on Computer Vision and Pattern Recognition, 2010

[6] Ouyang W, Wang X, Zhang C, et al. Factors in finetuning deep model for object detection with long-tail distribution[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 864-873.

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