https://blog.csdn.net/qq_21949357/article/details/102699367

目标检测论文阅读:GHM(anchor based)

论文链接:https://arxiv.org/abs/1811.05181
代码链接:https://github.com/libuyu/GHM_Detection
今天介绍一篇AAAI 2019的文章,Gradient Harmonized Single-stage Detector。文章的motivation和focal loss有一点相似,都是致力于不平衡问题。

1. Background

首先,关于目标检测的类别不平衡问题就不再赘述了。有疑问可以去看focal loss了解。这里有一个问题,为什么focal loss调整权重就可以改善不平衡?作者认为这一问题本质上是各个样本产生的梯度不平衡问题,而改变了权重不同样本对总共梯度的贡献也就不同了。
作者这里萌生了一个想法,我们都知道传统图像处理中有直方图均衡化的概念,可以把图像各个高度不一的亮度分布拉成一条直线,那如果我统计一下梯度的分布,然后也拉成一条直线,是不是能更好地解决类别不平衡问题呢?而且这样有一个好处,那就是不用像focal loss一样设置两个超参数,对各个数据集自适应能力也比较强。

2. Method

GHM-C

直方图均衡化统计的是图像灰度,那如果梯度也要做一个分布图统计的是什么?作者这里根据求导公式给出了定义:

通过将梯度量化到0~1,可以得到类似这样的梯度分布图:

可以看到,0点附近的g非常小的easy样本其实是占大多数的。而在1附近的样本很多都属于outliers。我们这里直接说下作者最终简化的均衡化方法:

  1. 将0~1划分成M个区间
  2. 统计落在各个区间的g的数量
  3. 最后,计算分类损失的权重

    其中,Rind(g)是指落g落在的区间内,一共有多少样本落在这个区间;如果只有一个区间,那么GD(g)等于样本数,GHM-C损失函数等同于交叉熵损失函数。
    这里的样本指的是每个min-batch里面的样本数量,也就是说,每进来一个Min-batch,都会算一下所有样本落在各个区间的数量,计算权重,为了减少极端min-batch影响,作者这里用了滑动系数方法更新落在各个区间的样本数量:

GHM-R

首先,为了方便表示和统计回归问题的梯度,作者重新定义了回归问题的损失函数:


显然,ASL1和SL1都是类似的(outliers点梯度约为1,接近零点附近梯度比较小),而且ASL1导数连续,并且在0~1范围内,很容易定义g并得到分布:


注意到由于回归损失只统计正样本,和分类损失分布差异还是挺大的。统计g的分布,得到新的GHM函数,剩下的就和GHM-C一样了:

最后可以看一下拉伸后的梯度分布:

3. 实验结果

作为单阶段检测算法,这篇文章在COCO上取得的结果也还是不错的,有兴趣的可以看看。

                                </div><div data-report-view="{&quot;mod&quot;:&quot;1585297308_001&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/qq_21949357/article/details/102699367&quot;,&quot;extend1&quot;:&quot;pc&quot;,&quot;ab&quot;:&quot;new&quot;}"><div></div></div><link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-60ecaf1f42.css" rel="stylesheet"></div>

GHM(anchor based)相关推荐

  1. 目标检测论文阅读:GHM(anchor based)

    目标检测论文阅读:GHM(anchor based) 论文链接:https://arxiv.org/abs/1811.05181 代码链接:https://github.com/libuyu/GHM_ ...

  2. Anchor Based和Anchor Free的相爱相杀与ATSS的诞生

    前言 我们都知道按照是否出现RPN可将目标检测算法分为two-stage和one-stage,其中one-stage的一个主要代表便是YOLO系列,而根据是否存在先验锚框的定义我们也可以将其分为Anc ...

  3. 论文阅读 [TPAMI-2022] Grid Anchor Based Image Cropping: A New Benchmark and An Efficient Model

    论文阅读 [TPAMI-2022] Grid Anchor Based Image Cropping: A New Benchmark and An Efficient Model 论文搜索(stud ...

  4. Anchor Based和Anchor Free

    Anchor Based和Anchor Free之间区别主要有以下两点:1.分类差异(关键正负样本定义)2.回归差异 1.分类差异: 现阶段的算法多尺度预测,即GT是由哪一个特征层和位置Anchor预 ...

  5. 【AI面试】Anchor based 、 Anchor free 和 no anchor 的辨析

    深度学习的目标检测算法,通常会在输入图像中采样大量的区域,然后判断这些区域中是否包含我们感兴趣的目标,并调整(回归)区域边界,从而更准确地预测目标的真实边界框(ground-truth boundin ...

  6. FoveaBox 超越anchor based检测框架

    目标检测系列文章 yolo v1原理:https://blog.csdn.net/cjnewstar111/article/details/94035842 yolo v2原理:https://blo ...

  7. anchor free和anchor based的区别

    链接:https://www.zhihu.com/question/356551927/answer/926659692 1.目标检测算法一般可分为anchor-based.anchor-free.两 ...

  8. 【算法】anchor free 和 anchor based 目标检测模型

    参考资料:https://www.zhihu.com/question/356551927 猜你喜欢:

  9. FCOS:全卷积一阶段Anchor Free物体检测器,多种视觉任务的统一框架

    作者 | ronghuaiyang 来源 | AI公园 导读:这是众多Anchor Free中比较有影响力的一篇文章,不光是效果好,而且思路清楚,简单,不需要任何trick,并将众多的视觉任务统一到了 ...

最新文章

  1. json和jsonp(json是目的,jsonp是手段)
  2. webscoket绑定php uid,Think-Swoole之WebSocket客户端消息解析与使用SocketIO处理用户UID与fd关联...
  3. 11.Java面向对象(二)
  4. 关于asp.net利用mono部署到Linux上的一些说明
  5. android获得textview数值,android-如何获取textview中的文本语言?
  6. session登录状态保持html,Flask使用Session和上下文处理器保持登录状态
  7. DocumentFragment文档片段示例
  8. 分析及解决SQLServer死锁问题
  9. 编程工作枯燥、代码质量不高?华为云 MVP 来支招!
  10. jQuery(3)——如何绑定事件
  11. 笔记本计算机的连接无线网络,笔记本电脑连接无线网络受限解决方法
  12. java计算机毕业设计springboot+vue健康体检信息管理系统
  13. 2021年创业项目:知识付费副业做网课赚钱
  14. stl文件 python_用Python从STL文件绘制2D图像
  15. js实现螺旋纹理特效
  16. 二维vector的输入
  17. 57BYG250B步进电机+SR4驱动器
  18. 许奔创新社-第25问:创新者的刻意练习怎么做?
  19. Anders Hejlsberg 谈 c# 3.0
  20. 科学家称五年内将3D打印人类心脏

热门文章

  1. 是时候复习一下响应式设计了
  2. 基于simulink的chaios混沌电路仿真
  3. Linux常用命令——mysqladmin命令
  4. Busybox实践2:分析busybox文件链接原理并编程模拟实现自己的busybox文件
  5. Yoshua Bengio, Yann LeCun, Geoffrey Hinton 获 2018 年图灵奖...
  6. ACM之Java输入输出
  7. 零知识证明学习(三)—— 非交互式零知识证明(zkSNARKs)
  8. 加入先进制造的追光者-探索现代机械设计团队的高效协作方式
  9. IC数字芯片学习各类公众号汇总
  10. 《牧羊少年奇幻之旅》的优秀读后感分享3300字