P. Felzenszwalb, R. Girshick, D. McAllester, D. Ramanan
Object Detection with Discriminatively Trained Part Based Models
IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 32, No. 9, Sep. 2010
读本文,不是因为DPM,而是因为训练SVM的hard negative mining。本文分别介绍了,针对SVM的hard negative mining和针对latent svm的hard negative mining,在训练SVM分类器时,如何选择负样本呢?作者提出负样本的选择应该选择那些分错的负样本,也就是在SVM的margin边上的样本不要,很容易就分对的负样本也不要,要的是那些具有区分能力,但是又分错的。在SVM训练过程中,每次训练时,均对样本进行划分,easy容易分的负样本E,hard难分的负样本H,每个训练过程开始前,先对训练样本做一些清洗,将E样本从负样本中移除,如果有必要,将H样本添加进来。而那些就在margin上的样本,而在margin上的样本,不算E也不算H,整体就是通过选择难区分的样本,不断优化SVM,对普通SVM和LSVM的区别是,损失函数不同,样本选择思路是一样的。样本选择过程如下,
Let C1 D be an initial cache of examples. The
algorithm repeatedly trains a model and updates the
cache as follows:
1) Let t := (Ct) (train a model using Ct).
2) If H(t;D) Ct stop and return t.
3) Let C0t := CtnX for any X such that X E(t;Ct)
(shrink the cache).
4) Let Ct+1 := C0t [X for any X such that X D and X \ H(t;D)nCt 6= ; (grow the cache).
SVM的负样本选择,在R-CNN里也是同样的思路。PS.听shuicheng yan的报告,他们也是用同样的方式进行SVM训练的。
未完待续……