引言

介绍

  • 目前精度高的检测器都是基于two-stage,proposal-driven机制,第一阶段生成稀疏的候选对象位置集,第二阶段使用CNN进一步将每个候选位置分为前景或者背景以及确定其类别;
  • 提出一个one-stage检测器可以匹配two-stage检测器在COCO上AP,例如FPN、Mask R-CNN,为了到达这一结果针对训练过程中类别不平衡这个阻碍问题,设计出一个新的loss,focal loss;
  • R-CNN类检测器可以通过two-stage级联和启发式采用来解决class imbalance问题,proposal stage包括:Selective Search、EdgeBoxes、DeepMask、RPN,可以迅速候选区域数目降低过滤大量background样本;在第二个分类stage启发式采样,可以采取的策略有:固定前景和背景的比例1:3或者采用OHEM在线困难样本挖掘,可以用来维持前景和背景样本可操作性平衡;
  • one stage检测器需要处理更大的候选位置集,虽然也应用了同样的启发式采样,但是效率低下因为在训练过程中很容易受到简单背景样本的支配;这种低效率问题是目标检测的典型问题,对此典型的解决方法是bootstrapping、HEM;
  • focal loss是一个能够动态缩放的cross entropy loss,当正确类别的置信度提高时缩放因子衰减为0,缩放因子可以自动降低easy例子在训练期间贡献loss的权重,使得模型注重hard例子;
  • 为了验证focal loss的有效性设计了一种one-stage的目标检测器RetinaNet,它的设计利用了高效的网络特征金字塔以及采用了anchor boxes,表现最好的RetinaNet结构是以ResNet-101-FPN为bakcbone,在COCO测试集能达到39.1的AP,速度为5fps;

创新点

1、Focal Loss:

2、RetinaNet:

为了评估focal loss的有效性,设计和训练出了RetinaNet,在使用focal loss对RetinaNet进行训练时可以匹配之前的one-stage的方法,同时在精度上超过了目前所有的two-stage检测器

RetinaNet论文理解的更多相关文章

  1. [论文理解]关于ResNet的进一步理解

    [论文理解]关于ResNet的理解 这两天回忆起resnet,感觉残差结构还是不怎么理解(可能当时理解了,时间长了忘了吧),重新梳理一下两点,关于resnet结构的思考. 要解决什么问题 论文的一大贡 ...

  2. [论文理解] CornerNet: Detecting Objects as Paired Keypoints

    [论文理解] CornerNet: Detecting Objects as Paired Keypoints 简介 首先这是一篇anchor free的文章,看了之后觉得方法挺好的,预测左上角和右下 ...

  3. R-FCN论文理解

    一.R-FCN初探 1. R-FCN贡献 提出Position-sensitive score maps来解决目标检测的位置敏感性问题: 区域为基础的,全卷积网络的二阶段目标检测框架: 比Faster ...

  4. YOLO V3论文理解

    YOLO3主要的改进有:调整了网络结构:利用多尺度特征进行对象检测:对象分类用Logistic取代了softmax. 1.Darknet-53 network在论文中虽然有给网络的图,但我还是简单说一 ...

  5. YOLO V2论文理解

    概述 YOLO(You Only Look Once: Unified, Real-Time Object Detection)从v1版本进化到了v2版本,作者在darknet主页先行一步放出源代码, ...

  6. ssd算法论文理解

    这篇博客主要是讲下我在阅读ssd论文时对论文的理解,并且自行使用pytorch实现了下论文的内容,并测试可以用. 开篇放下论文地址https://arxiv.org/abs/1512.02325,可以 ...

  7. [论文理解]Deep Residual Learning for Image Recognition

    Deep Residual Learning for Image Recognition 简介 这是何大佬的一篇非常经典的神经网络的论文,也就是大名鼎鼎的ResNet残差网络,论文主要通过构建了一种新 ...

  8. [论文理解] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

    Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks 简介 Faster R-CNN是很经典的t ...

  9. [论文理解]Selective Search for Object Recognition

    Selective Search for Object Recognition 简介 Selective Search是现在目标检测里面非常常用的方法,rcnn.frcnn等就是通过selective ...

随机推荐

  1. 使用 sendKeys(keysToSend) 批量上传文件

    未经允许,禁止转载!!! 在selenium里面处理文件上传的时候可以使用sendKeys(keysToSend) 上传文件 例如: element.sendKeys(“C:\\test\\uploa ...

  2. js数组之有已有数组创建新的数组

    concat()和splice()方法允许通过已经有的数组创建新的数组 concat()这个方法可以合并多个数组创建一个数组 splice()这个方法是获得截取一个数组中的子集创建一个新的数组. 理论 ...

  3. XMLHelper类 源码(XML文档帮助类,静态方法,实现对XML文档的创建,及节点和属性的增、删、改、查)

    以下是代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using Sy ...

  4. visual studio 2010 winform程序不能添加对system.web的引用

    visual studio 2010 winform程序不能添加对system.web的引用[转载] 需要引用到System.Web.发现没有“System.Web”.在通过“浏览”方式,找到该DLL ...

  5. C# 如何把dataTable以参数的形式传入 sql 存储过程

    ==================================================-- sql代码 示例:CREATE TYPE dbo.Content AS TABLE( ID i ...

  6. hdu5145 莫队算法

    这题说的是个了n个数字 然后 在L 和R 区间内的数字的排列有多少种方案, 这里我们通过 将 这n长度的字符串 分成sqrt(n) 块然后 一个属性 他们的l 属于 那个快  以这个为第一关键字 ,然 ...

  7. 主成分分析(PCA)学习笔记

    这两天学习了吴恩达老师机器学习中的主成分分析法(Principal Component Analysis, PCA),PCA是一种常用的降维方法.这里对PCA算法做一个小笔记,并利用python完成对 ...

  8. Python: 类中为什么要定义__init__()方法

    学习并转自:https://blog.csdn.net/geerniya/article/details/77487941 1. 不用init()方法定义类 定义一个矩形的类,目的是求周长和面积. c ...

  9. Google's Machine Learning Crash Course #03# Reducing Loss

    Goal of training a model is to find a set of weights and biases that have low loss, on average, acro ...

  10. 简单的HTML5 canvas游戏工作原理

    HTML5已经不是一个新名词.它看上去很cool,有很多feature,大多数人普遍看好它的发展.对于我来说,最感兴趣的是它的canvas标签,可以结合Javascript来绘制游戏画面. 我们可以在 ...