| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> Sparse R-CNN -> 正文阅读 |
|
[人工智能]Sparse R-CNN |
今天又发现了这个 搬运一下 勿怪 勿怪只是学习用, 还未实验 Sparse R-CNN抛弃了anchor boxes或者reference point等dense概念,直接从a sparse set of learnable proposals出发,没有NMS后处理,整个网络异常干净和简洁,可以看做是一个全新的检测范式。稀疏框架,端到端的目标检 目前目标检测成熟的算法都是基于Dense prior(密集的先验,比如anchors、reference points),但密集的先验存在很多问题:1)会检测出很多相似的结果,需要后处理(比如NMS)来过滤;2)many-to-one label assignment 问题(作者描述为 many-to-one 正负样本分配),猜测意思是我们在设置pred和gt时,一般不是一对一的关系,可能是有多个preds,看看哪个与gt更符合;3)检测结果与先验的关系非常密切(anchors的数量、大小,reference points的密级程度、proposal生成的数量)。 ?所以,有研究者提出了稀疏RCNN(Sparse R-CNN),一种图像中目标检测的纯稀疏方法。现有的目标检测工作很大程度上依赖于密集的候选目标,如所有H×W的图像特征图网格上预定义的k个anchor boxes。 然而,在新提出的方法中,提供了一套固定的稀疏的学习候选目标,总长度N,给目标检测头进行分类和定位。通过消除H*W*k(多达数十万)手工设计的候选目标到N(例如100)可学习的建议,Sparse R-CNN完全避免了所有与候选目标的设计和多对一的标签分配相关的工作。更重要的是,最终的预测是直接输出的,而没有非极大抑制的后处理。SparseR-CNN证明了准确性、运行时和训练收敛性能,与具有挑战性的COCO数据集上建立的检测器基线相当,例如,在标准3×训练计划中实现45.0AP,并使用ResNet-50FPN模型以22fps的速度运行。 作者是希望新的框架能够激发人们重新思考目标检测器中密集先验的惯例。 whaosoft aiot?http://143ai.com 2 ?背景 不同目标检测pipelines的比较。(a)Dense,HWk候选目标枚举在所有的图像网格上,例如。RetinaNet;(b)Dense-to-Sparse,它们从密集的HWk候选目标中选择一小组N个候选目标,然后通过池化操作提取相应区域内的图像特征,如Faster R-CNN;(c)研究者提出的Sparse R-CNN,直接提供了一小组N个学习的候选目标,这里N远小于HWk。 DenseNet是CVPR2017的oral,非常厉害。文章提出的DenseNet(Dense Convolutional Network)主要还是和ResNet及Inception网络做对比,思想上有借鉴,但却是全新的结构,网络结构并不复杂,却非常有效!众所周知,最近一两年卷积神经网络提高效果的方向,要么深(比如ResNet,解决了网络深时候的梯度消失问题)要么宽(比如GoogleNet的Inception),而作者则是从feature入手,通过对feature的极致利用达到更好的效果和更少的参数。主要优化:
在深度学习网络中,随着网络深度的加深,梯度消失问题会愈加明显,目前很多论文都针对这个问题提出了解决方案,比如ResNet,Highway Networks,Stochastic depth,FractalNets等,尽管这些算法的网络结构有差别,但是核心都在于:create short paths from early layers to later layers。那么作者是怎么做呢?延续这个思路,那就是在保证网络中层与层之间最大程度的信息传输的前提下,直接将所有层连接起来! RetinaNet 提出一个新的损失函数,在解决类别不均衡问题上比之前的方法更有效。损失函数是动态缩放的交叉熵损失,其中缩放因子随着对正确类别的置信度增加而衰减到零(如下图)。直观地说,这个缩放因子可以自动降低训练过程中简单样本的贡献,并快速将模型集中在困难样本上。实验发现,Focal Loss在one-stage检测器上的精确度胜过之前的state-of-art的启发式采样和困难样本挖掘。最后,focal loss的具体公式形式不是关键的,其它的示例可以达到类似的结果。 设计了一个名叫RetinaNet的one-stage对象检测器来说明focalloss的有效性,RetinaNet命名来源于在输入图像上的密集采样。它基于ResNet-101- FPN主干网,以5fps的运行速度下,在COCO test-dev上取得了39.1 AP的成绩,超过目前公开的单一模型在one-stage和two-stage检测器上取得的最好成绩。 3 ?新框架
Learnable porposal box
Learnable proposal feature
Dynamic instance interactive head
Sparse R-CNN的两个显著特点就是sparse object candidates和sparse feature interaction,既没有dense的成千上万的candidates,也没有dense的global feature interaction。Sparse R-CNN可以看作是目标检测框架从dense到dense-to-sparse到sparse的一个方向拓展。 4 ?实验&可视化 COCO 2017 val set测试结果 COCO 2017 test-dev set ?可视化迭代架构中每个阶段的预测框,包括学习到的候选框。学习到的候选框以白色绘制。显示了分类分数超过0.3的预测框。同一候选类的框以相同颜色绘制,学习到的候选框被随机分布在图像上,并一起覆盖整个图像。迭代头逐渐细化边界框位置,删除重复的。 上图显示了converged model的学习到的候选框。这些方框被随机分布在图像上,以覆盖整个图像区域。这保证了在稀疏候选条件下的召回性能。此外,每个阶段的级联头逐渐细化边界框的位置,并删除重复的位置。这就导致了高精度的性能。上图还显示了Sparse R-CNN在罕见场景和人群场景中都表现出稳健的性能。对于罕见场景中的目标,其重复的方框将在几个阶段内被删除。拥挤的场景需要更多的阶段来细化,但最终每个目标都被精确而唯一地检测到。 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:56:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |