FreeAnchor:抛弃单一的IoU匹配,更自由的anchor匹配方法 | NIPS 2019
2020/5/12 6:26:26
本文主要是介绍FreeAnchor:抛弃单一的IoU匹配,更自由的anchor匹配方法 | NIPS 2019,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
论文抛弃以往根据IoU硬性指定anchor和GT匹配关系的方法,提出FreeAnchor方法来进行更自由的匹配,该方法将目标检测的训练定义为最大似然估计(MLE)过程,端到端地同时学习目标分类、目标检测以及匹配关系,从实验来看,效果十分显著
来源:晓飞的算法工程笔记 公众号
论文: FreeAnchor: Learning to Match Anchors for Visual Object Detection
- 论文地址:arxiv.org/abs/1909.02…
- 论文代码:github.com/zhangxiaoso…
Introduction
常规的目标检测网络基于IoU来进行anchor与GT间的匹配,但会面临以下问题:
- 对于非中心特征的物体,比如细长的物体,空间上的对齐并不能保证anchor覆盖足够多的物体特征,从而造成分类和检测性能的下降。
- 当检测目标密集时,以IoU作为匹配的准则是不可行的。
以上的问题都来源于预先设定的anchor与GT的匹配,没有考虑到网络的输出情况。为此,论文提出基于学习的匹配方法,将匹配过程定义为最大化似然估计的过程,端到端地同时学习目标分类、目标检测以及匹配关系,取得了很不错的效果,论文的主要贡献如下:
- 将检测算法的训练过程定义为最大似然估计的过程,并将手工设定anchor与GT匹配改为自由的anchor匹配,打破IoU的约束,允许GT根据最大似然的准则选择anchors。
- 定义检测定制似然,并且实现端到端的检测和分类训练机制,最大化似然能够促进网络学习如何匹配最优的anchor,并保证与NMS算法的兼容。
The Proposed Approach
为了学习anchor和GT的匹配关系,先将目标检测算法的训练转换为最大似然估计过程,从最大似然地角度优化分类和检测,然后定义检测定制似然,通过保证召回率和准确率进行匹配关系的优化,在训练阶段,将检测定制似然转换为检测定制损失,有效地端到端同时学习目标分类、目标检测以及匹配关系。
Detector Training as Maximum Likelihood Estimation
常规one-stage检测算法的损失函数如公式1,,,,为网络学习到的参数,是指代anchor 是否匹配GT ,只有两者的IoU大于阈值才为1,当anchor符合多个GT时,选择IoU最大的Gt,,。
从最大似然估计(MLE)的角度来看,将损失函数转换为公式2的似然概率,和为分类置信度,为定位置信度,最小化即最大化似然概率。
虽然公式2严格从最大似然估计的角度来优化anchor的分类和定位,但是忽略了如何学习匹配矩阵,目前的检测算法通过IoU指标进行匹配来解决这一问题,没有考虑优化GT和anchor的匹配关系。
Detection Customized Likelihood
为了优化GT和anchor间的匹配规则,论文在CNN目标检测框架上加入检测定制似然(detection customized likelihood),揉合准确率和召回率,并保持对NMS的适配。
首先构造每个GT 的IoU较高的anchor作为候选集,然后学习如何达到最好的匹配的同时最大化检测定制似然。
为了优化召回率,先保证每个GT都有至少一个对应的anchor,如公式3,选择每个GT的候选集中分类和检测表现最好的anchor。
为了优化准确率,检测器需要将定位较差的anchor归为背景类,目标函数如公式4,这里意味着top anchor尽可能不为背景。为与所有GT不匹配的概率,为anchor 正确预测GT 的概率。为了兼容NMS,需满足以下属性:
- 为IoU相关的单调递增函数
- 当anchor与GT小于阈值时,接近0
- 对于每个GT,仅存在一个anchor满足
的属性可以归纳为Saturated linear函数,即。
根据上面的定义,检测定制似然定义如公式5,揉合了召回率和准确率,并且与NMS兼容。通过优化似然,可以同时最大化召回率和准确率,达到自由地匹配GT和anchor。
Anchor Matching Mechanism
为了有效地学习匹配关系,将公式5的检测定制似然转换成检测定制损失函数,如公式5,函数用来选择每个GT最适合的anchor。在训练期间,从候选集中选择一个anchor进行网络参数的更新。
在训练初期,由于随机初始化,每个anchor的置信度都很小,不能代表anchor的好坏,为此使用Mean-max函数进行anchor的选择。
在训练不充分时,Mean-max函数能够接近均值函数,即几乎所有的anchor都能用于训练,随着训练越充分后,Mean-max函数则接近max函数,最终等同于max函数,即选择最好的anchor用于训练。
将公式6的max函数替换为Mean-max函数,对第二项加入focal loss,同时,两项分别进行和加权,最终的检测定制损失函数如公式7,为候选集的似然集,,,。
结合检测定制损失函数,检测器的训练过程如算法1。
Experiments
实验的FreeAnchor实现基于RetinaNet,简单地将损失函数修改为论文提出的检测定制损失函数。
Learning-to-match
Compatibility with NMS
Parameter Setting
超参数的实验如下:
- Anchor bag size ,对比,其中,50的效果最好。
- Background IoU threshold ,的置信度,对比,0.6效果最好。
- Focal loss parameter,对比和,和组合的效果最好。
- Loss regularization factor ,公式1的用于平衡分类和定位损失的权重,0.75效果最好。
Detection Performance
CONCLUSION
论文抛弃以往根据IoU硬性指定anchor和GT匹配关系的方法,提出FreeAnchor方法来进行更自由的匹配,该方法将目标检测的训练定义为最大似然估计(MLE)过程,端到端地同时学习目标分类、目标检测以及匹配关系,从实验来看,效果十分显著。
如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】
这篇关于FreeAnchor:抛弃单一的IoU匹配,更自由的anchor匹配方法 | NIPS 2019的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-27Nacos多环境配置学习入门
- 2024-12-27Nacos快速入门学习入门
- 2024-12-27Nacos快速入门学习入门
- 2024-12-27Nacos配置中心学习入门指南
- 2024-12-27Nacos配置中心学习入门
- 2024-12-27Nacos做项目隔离学习入门
- 2024-12-27Nacos做项目隔离学习入门
- 2024-12-27Nacos初识学习入门:轻松掌握服务发现与配置管理
- 2024-12-27Nacos初识学习入门:轻松掌握Nacos基础操作
- 2024-12-27Nacos多环境配置学习入门