| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> (五)比赛中的CV算法(下5)检测网络调优(1)多尺度特征融合 -> 正文阅读 |
|
[人工智能](五)比赛中的CV算法(下5)检测网络调优(1)多尺度特征融合 |
--NeoZng[neozng1@hnu.edu.cn] 如果觉得笔者写得还不错,关注一下点个赞吧! 稍作总结后,笔者在这里再介绍一些目标检测领域的trick和改进方法(其实现在已经不新了),前一部分主要是关于LF的设计,而这一部分主要是关于关于模型的改进的经典方法与训练技巧,还有一些有启发性的机制。
? ? 几种检测的方法 (a).传统差分图像金字塔,抽值实现降采样 (b).深度学习经典做法,使用顶层feature map检测 (c).SSD的做法,利用深度网络提取feature并在每一层map上检测 (d).FPN做法,top-down融合并在不同的map上检测 ? 那么很自然的我们就会想到,有没有什么方法可以综合底层的细节和高层语义信息,随后利用融合后的信息进行检测,将各种尺度的目标一网打尽?于是便有人提出了特征金字塔网络Feature Pyramid Netwok。和以往的图像金子塔不同,FPN的金字塔由深度网络提取的不同层级特征堆叠而成,并在堆叠的基础上通过top-down的element-wise add实现特征的融合,从而实现对不同尺度物体的检测。 ? FPN金字塔中的下采样方式,最顶层的特征会经过x2的上采样插值后和底层feature map相加 ? 注意到FPN只有top-down的融合路径,金字塔顶层无法享受到底层的更多细节,那直接添加down-top的融合不就完事了?PANet的作者直呼有手就行,提出了这个路径聚合网络用于更充分的特征融合(PANet首先被用在语义分割上,分割其实相当于像素级的分类,因此对于细节的要求更加严苛和敏感,特别是边缘和纹理)。 PANet的整体结构如下,红色虚线表示原始图像经过数十甚至近百层的卷积(即原图经过backbone到最后顶部的feature map)得到的P5已经没有什么细节信息了。那么它相比FPN的不同就是(b)部分的down-top连接将底层细节通过较短的路径融合到上层,即绿色虚线所示的路径(P2->N2->N3->N4->N5)。而这里的Top-down连接通过3x3,stride=1的卷积后再相加来实现而不是简单的element-wise add,让网络自己去学习如何进行特征融合(当然如果为了追求速度将卷积换成和FPN中一样的element-wise add也是可以的,或多轻量化网络都是这么做的)。通过绿色虚线路径的特征大概只需要十层不到的conv就能达到N5处,这样的两个部分(top-down和down-top)就很好地解决了利用顶层feature map检测时缺少细节和纹理的问题。 ? PANet的结构 ? ? ?PANet中down-top连接的结构 ? 不过人们对于极致的追求是永不止步的,在进行了大量实验后,EfficientNet将Neck(一般把检测框架中的特征融合/选择部分称作neck)进行了进一步优化,提出了Bi-FPN(双向特征金字塔)。 ? ?左侧白色单元backbone中不同层次的feature map输出,虚线框内是BiFPN的结构;右侧是PAN的结构 ? Bi-FPN的总体结构和PAN相同,都是top-down和down-top的排列,我们主要关注他们的不同之处。首先是feature map跨过top-down下采样融合部分直接到bottom-up部分的远跳连接,这和ResNet中的结构几乎是一致的, 作用也是相同的,可以分散梯度并防止退化。另一个改变是删除了PANet中红色框的单元直接连接到下一层,作者认为这种单边的连接没有必要添加额外的卷积,因为没有融合的对象,如果进行卷积反而会引入不同层次的特征并增加梯度回传的难度。若有必要,可以通过堆叠Bi-FPN的block实现更多的融合并方便地控制网络规模和深度(g家惯用套路了,比如inception)。
若觉得笔者写得还不错,给个关注点个赞吧!下一期将会更新CV中的注意力机制!关注HNU跃鹿战队第一时间获取更新! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/26 21:26:31- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |