参考:https://blog.csdn.net/app_12062011/article/details/77945600
参考:http://www.cnblogs.com/sddai/p/10277383.html
参考:https://blog.csdn.net/u012426298/article/details/81773319
Object Hard example mining:
这里分2种Hard example mining方法,分别对应于优化SVM的算法和非SVM的算法:
1、优化SVM时使用Hard example mining,用于维持训练SVM和在工作集上收敛的平衡迭代过程,且在更新过程中去除工作集中的样本并添加其他特殊的标准;如去掉容易区分的样本类,添加现有模型不能判断的样本类,进行新的训练;工作集为训练集中的一小部分数据;
2、非SVM时使用,该Hard example mining算法开始于正样本数据集和随机的负样本数据集,模型在这些数据集中训练使其达到该数据集上收敛,并应用到未训练的负样本集中,将判断错误的负样本加入训练集,重新进行训练;这种过程只迭代一次,不获得大量的再训练收敛过程;
OHEM算法基于Fast R-CNN算法改进,将Fast R-CNN算法中通过mini-batch来进行SGD算法,认为其不具备高效和最优状态,反之OHEM可以获得lower training loss和higher mAP;如下就是比较Fast R-CNN和OHEM结构:
在如上的第二个网络结构中,在给定的图像经过selective search RoIs后,以及计算出卷积特征图;在绿色的(a)中,只读的RoI网络对特征图和所有RoI进行前向传播,然后Hard RoI module 利用RoI的loss选择B个样本;在红色部分(b)中,这些选择出的难训练样本(hard example)重新进入RoI网络,再一次进行前向和反向传播;