OHEM算法论文理解

OHEM算法论文理解OHEM层

大家好,又见面了,我是你们的朋友全栈君。

CVPR2016的文章,CMU与rbg大神的合作。原谅我一直没有对这篇文章做一个笔记~~

文章提出了一种通过online hard example mining(OHEM)算法训练基于区域的卷积检测算子的高效目标检测算法,能够对简单样本和一些小数量样本进行抑制,使得训练过程更加高效。该方法利用显著的bootstrapping技术(SVM中被普遍利用),对SGD算法进行一定的修改,使得原有的region-based ConvNets的启发式学习和多参数可以被移除,并得到较准确稳定的检测结果。在PASCAL VOC2007和2012中的mAP分别为:78.9%,76.3%。https://github.com/abhi2610/ohem


Hard example mining:

主要有2种参见Hard example mining算法,优化SVM时候的算法和非SVM时的利用。

在优化SVM中使用Hard example mining时,训练算法主要维持训练SVM和在工作集上收敛的平衡迭代过程,同时在更新过程中去除一些工作集中样本并添加其他特殊的标准。这里的标准即去掉一些很容易区分的样本类,并添加一些用现有的模型不能判断的样本类,进行新的训练。工作集为整个训练集中的一小部分数据。

非SVM中使用时,该Hard example mining算法开始于正样本数据集和随机的负样本数据集,机器学习模型在这些数据集中进行训练使其达到该数据集上收敛,并将其应用到其他未训练的负样本集中,将判断错误的负样本数据(false positives)加入训练集,重新对模型进行训练。这种过程通常只迭代一次,并不获得大量的再训练收敛过程。

注意点:bg_lo = 0.1, 这里已经近似的使用难例挖掘;

要使用OHEM时,建议采用正负比例设置为1:3,并且bg_lo =0;这样效果较好


网络结构框架:

OHEM算法基于Fast R-CNN算法进行改进,作者认为Fast R-CNN算法中创造mini-batch用来进行SGD算法,并不具有高效和最优的状态,而OHEM可以取得lower training loss,和higher mAP。对比下图两种算法Fast R-CNN和OHEM结构:

OHEM算法论文理解


OHEM算法论文理解

对比可以发现,文章提出的OHEM算法里,对于给定图像,经过selective search RoIs,同样计算出卷积特征图。但是在绿色部分的(a)中,一个只读的RoI网络对特征图和所有RoI进行前向传播,然后Hard RoI module利用这些RoI的loss选择B个样本。在红色部分(b)中,这些选择出的样本(hard examples)进入RoI网络,进一步进行前向和后向传播。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139272.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Django(31)模板中常用的过滤器[通俗易懂]

    Django(31)模板中常用的过滤器[通俗易懂]模版常用过滤器在模版中,有时候需要对一些数据进行处理以后才能使用。一般在Python中我们是通过函数的形式来完成的。而在模版中,则是通过过滤器来实现的。过滤器使用的是|来使用。add将传进来的参

    2022年7月30日
    6
  • IoU计算

    输入:vector<float>p1;//y1min,x1min,y1max,x1max;vector<float>p2;//y2min,x2min,y2max,x2max;输出:floatIoU代码:floatcomputeIoU(vector<float>p1,vector<float>p2){…

    2022年4月12日
    48
  • Java 异常错误 (Ljava/lang/String;)L java/lang/String;「建议收藏」

    Java 异常错误 (Ljava/lang/String;)L java/lang/String;「建议收藏」异常问题如下:起初xml中返回值类型是这样子,一直在找返回值类型的问题,怎么看都是没有问题的又改为如下,结果还是不对,查询资料反反复复还是出现这个异常突然一下想到会不会是有重复id名字的sql 我用的是idea,直接全局查询,确实查到了一模一样在别的包下的sql,因为我项目是maven的子工程,就给冲突了;最后还是冒着尝试想法去试了一下,把名字一个,哦吼!美滋滋 问题解决 不在报错以后开发还是需要多注意名字重复的问题的!…

    2022年8月19日
    6
  • 1分钟搞定 OneNote自己账号扩容到15G永久免费空间「建议收藏」

    1分钟搞定 OneNote自己账号扩容到15G永久免费空间「建议收藏」本文是众多使用技巧中其中的一篇,全部使用技巧点击链接查看,或直接查看本专栏其他文章,保证你收获满满我主页中的思维导图中内容大多从我的笔记中整理而来,相应技巧可在笔记中查找原题,有兴趣的可以去我的主页了解更多计算机学科的精品思维导图整理本文可以转载,但请注明来处,觉得整理的不错的小伙伴可以点赞关注支持一下哦!本文提到的所有软件和工具,可关注公众号一起学计算机点击资源获取获得感觉作者写的不错的,别忘了点赞关注加收藏哦(一键三连)!你的支持会带给我…

    2022年9月9日
    4
  • 有序map和无序map_map怎么实现有序

    有序map和无序map_map怎么实现有序【业务】JS中的有序Map与无序Object

    2022年9月15日
    2
  • linux phpstorm2021.3.24 激活码破解方法

    linux phpstorm2021.3.24 激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    124

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号