代码上如何实现Read-only Layer与R _hard-sel权限共享?
https://github.com/abhi2610/ohem/blob/master/models/pascal_voc/VGG_CNN_M_1024/fast_rcnn_ohem/train.prototxt
下面代码对应(a),前向传播过程

## Readonly RoI Network
layer {name: "roi_pool5_readonly"type: "ROIPooling"bottom: "conv5"bottom: "rois"top: "pool5_readonly"propagate_down: falsepropagate_down: falseroi_pooling_param {pooled_w: 6pooled_h: 6spatial_scale: 0.0625 # 1/16}
}

其中:propagate_down设置为false,可实现forward inference

下面代码对应(b),前向和反向传播过程

layer {name: "roi_pool5"type: "ROIPooling"bottom: "conv5"bottom: "rois_hard"top: "pool5"propagate_down: truepropagate_down: falseroi_pooling_param {pooled_w: 6pooled_h: 6spatial_scale: 0.0625 # 1/16}
}

其中:propagate_down设置为True,可实现前向和后向传播,减小难样例的损失,同时可以调整卷积层的参数

为什么要hard mining?

  • 1 减少fg和bg的ratio,而且不需要人为设计这个ratio
  • 2 加速收敛,减少显存需要这些硬件的条件依赖,原因是直接训练难样例,使损失最大的函数对应的样例经过训练后loss 直接减小
  • 3 hard-mining已经证实了是一种booststrapping的方式, 尤其当数据集较大而且较难的时候;
  • 4 eliminates several heuristics and hyperparameters in common use by automatically selecting hard examples, thus simplifying training。 放宽了定义negative example的bg_lo threshold,即从[0.1, 0.5)变化到[0, 0.5)。
    取消了正负样本在mini-batch里的ratio(原Fast-RCNN的ratio为1:3)

参考:https://blog.csdn.net/qq_36302589/article/details/84998509

OHEM在线难样例挖掘的两个细节相关推荐

  1. OHEM(Online Hard Example Mining)在线难例挖掘(在线困难样例挖掘) HNM (目标检测)

    Hard Negatie Mining与Online Hard Example Mining(OHEM)都属于难例挖掘,它是解决目标检测老大难问题的常用办法,运用于R-CNN,fast R-CNN,f ...

  2. 目标检测之六:OHEM 在线难例挖掘

    https://zhuanlan.zhihu.com/p/102817180 6.OHEM 在线难例挖掘 OHEM(Online Hard negative Example Mining,在线难例挖掘 ...

  3. 2021年大数据常用语言Scala(三十二):scala高级用法 样例类

    目录 样例类 定义样例类 样例类方法 样例对象 样例类 样例类是一种特殊类,它可以用来快速定义一个用于保存数据的类(类似于Java POJO类),而且它会自动生成apply方法,允许我们快速地创建样例 ...

  4. 在线难例挖掘(OHEM)

    OHEM(online hard example miniing) 详细解读一下OHEM的实现代码: def ohem_loss(batch_size, cls_pred, cls_target, l ...

  5. 学习了解online hard example mining在线难例挖掘

    对于每一个网络,相当于一个桶,总有样本效果比较好,有的样本比较差,多用效果差的样本进行训练,那提高了整个网络的短板,总体的效果也会有提升. 一. 难例挖掘是指,针对模型训练过程中导致损失值很大的一些样 ...

  6. (HEM/OHEM)hard negative(example)mining难例挖掘 与focal loss、GHM损失函数

    目录 分类任务中的样本不均衡及hard negative mining的必要性 hard negative example HEM(hard example/negative mining) 与 OH ...

  7. ACMNO.7 输入两个正整数m和n,求其最大公约数和最小公倍数。 输入 两个整数 输出 最大公约数,最小公倍数 样例输入 5 7 样例输出 1 35

    题目描述 输入两个正整数m和n,求其最大公约数和最小公倍数. 输入 两个整数 输出 最大公约数,最小公倍数 样例输入 5 7 样例输出 1 35 来源/分类 C语言 示例照片: 设计思路: 本题最难的 ...

  8. 信捷触摸屏与两台变频器的通讯样例支持TH.TG.TE系列,一台使用三菱E700变频器,一台使用台达vfd-M变频器

    信捷触摸屏与两台变频器的通讯样例支持TH.TG.TE系列,一台使用三菱E700变频器,一台使用台达vfd-M变频器,可实现正反转,停止控制及指示,频率设定及加减频率,加减速时间设定,以及对输出频率,电 ...

  9. ACMNO.12有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。 输入 N 输出 数列前N项和 样例输入 10

    题目描述 有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数. 输入 N 输出 数列前N项和 样例输入 10 样例输出 16.48 ...

最新文章

  1. Android 显示、隐藏状态栏和导航栏
  2. 图解在反汇编中识别VC++之if-else分支语句
  3. Firefox 有 6 成用户仍使用 Add-On 扩展
  4. 数据预处理(part2)--多个预测变量数据变换
  5. matlab磁铁模拟,用matlab-模拟环形磁铁的磁场分布
  6. centos7 yum安装maven_Linux安装tomcat、mysql 、Maven与Eclipse的整合、settings.xml
  7. 网络通信第一课 C++封装HTTP请求报文说明
  8. ensp 下一跳选址
  9. 双引号后面要加句号吗_双引号该怎么加?是加在句号或者分号后面还是前面
  10. oracle查询存储过程完整的sql,SQL命令查询Oracle存储过程信息(代码内容等)
  11. 无需序列号安装Photoshop CS6
  12. 计算机的cup颗数、核数、线程数
  13. 在Windows 7上安装KB4457144补丁出错的解决方法
  14. 程序员python表白代码
  15. MATLAB中cell(元胞)数组的基本用法
  16. 陆军常服军衔佩戴_美国陆军一名兽医如何从英语专业转到全栈开发人员(播客)...
  17. RedHat/CentOS8【OpenSSL】制作自签证书和 HTTPS 配置
  18. react -错误 Uncaught TypeError: react_dom_client__WEBPACK_IMPORTED_MODULE_1__.render is not a function
  19. 人工智能考试复习题(自己背的)
  20. catkin所依赖的package必须在package.xml中添加build_depend和run_depend

热门文章

  1. v4l2-ctl pipeline踩坑
  2. 利用Python实现“指尖陀螺”,让你释放压力
  3. VMware虚拟机三种网络模式:桥接模式,NAT模式,仅主机模式
  4. springboot项目无法访问webapp下的html页面
  5. window11安装docker小白教程
  6. 自定义View之--九宫格图形密码锁
  7. SystemError: initialization of _internal failed without raising an exception
  8. 异想维度 java_JAVA异常的最佳工程学实践探索
  9. 免费C规范、免费C++规范
  10. 借助云开发10行代码生成小程序码,可以微信扫码快速进入指定小程序页