Skip to main content
  1. Posts/

Focal Loss for Dense Object Detection(RetinaNet) 学习笔记

·446 words·1 min
Table of Contents
Note: This article is available in Chinese only. 本文暂无英文版本。 View original

先写个简略版的笔记..看之后的情况要不要读得更精细一点..

背景
#

two stage的检测比one stage的检测效果好,原因是啥?

作者认为是正负样本不平衡导致的. two stage的方法在proposal 的时候干掉了大部分负样本,所以效果好.

因为作者提出了一种新的loss,称为Focal Loss 是对交叉熵loss的改进,作用是提高没有正确分类的样本的权重,降低正确分类的样本的权重.

然后设计了个retinaNet 来验证效果. 主要是用了Focal Loss 作为损失函数,以及backbone比起之前的one stage的检测用上了FPN.

Focal Loss
#

一图胜千言

Focal Loss

Focal loss是在交叉熵loss的基础上增加了一个指数衰减. 对正确分类的样本影响很小,对错误分类的样本影响很大.

从图上我们可以看出,CE对正确分类的样本仍然有不小的loss,这样的样本数很多的话,就会被训练的时候模型被带歪… 因此需要减少这些正确分类的样本对loss的影响.

RetinaNet
#

单阶段检测,主要在于使用Focal Loss训练,以及backbone用上了FPN

RetinaNet

Related

Faster Rcnn 目标检测算法

·5480 words·11 mins
背景 # 2019年对了好几次faster rcnn,第一次是赛事之窗项目和北京的同事,对齐sdk和训练的实现。 第二次是被tensorRT4和tensorRT5之间默认参数不一致的问题坑了一下。 第三次是被caffe proto中roi align 的默认参数坑了。