IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> YOLOv3 -> YOLOv4 -> YOLOv5的改进(tricks) -> 正文阅读

[人工智能]YOLOv3 -> YOLOv4 -> YOLOv5的改进(tricks)

简介

  • YOLOv3 -> YOLOv4 有原创的部分,也有应用其他论文里的优秀tricks,到了YOLOv5主要事应用其他论文中的优秀tricks,但效果也很显著。

YOLOv4的原创部分

CSPDarknet-53

  • backbone 方面,YOLOv3使用的是Darknet-53,而YOLOv4则采用CSPDarknet-53 (CSP主要就是下图的过程)将基础层的特征映射划分为两部分,然后通过跨阶段层次结构将它们合并,在减少了计算量的同时可以保证准确率。

在这里插入图片描述

Mosaic数据增强

  • 输入端主要是 Mosaic数据增强SAT自对抗训练
    • Mosaic数据增强主要是将4张图片,随机缩放、随机裁剪、随机排布后进行拼接,这个操作相当于变相的 增加 batchsize。因此增加了网络的 泛化性

SAT自对抗训练

  • SAT自对抗训练增加 了网络的 鲁棒性。以 y=wx+b为例, 在第一次反向传播时,正常是固定x,对w求偏导;而这里是固定w,对x求偏导,直接更新原图(对原图增加了噪声)。第二次再恢复正常,对w求偏导,更新参数。

PAN结构

  • YOLOv4Neck部分 是采用了 FPN+PAN结构 。为了让各个不同大小的特征图都参与到最后的分类任务中,采用了FPN的操作;PAN是在FPN的基础上增加了一个自底向上的过程。如下图所示:
  • 这样结合操作,FPN层自顶向下传达强语义特征,而特征金字塔则自底向上传达强定位特征,这样就从不同的主干层对不同的检测层进行特征聚合。
    在这里插入图片描述
  • 而YOLOv4中采用的PAN区别在于最后的加和方式不同,原本的PANet网络的PAN结构中,两个特征图结合是采用add操作,而Yolov4中则采用concat操作,如下图所示:
    在这里插入图片描述

★★★个人理解(add和concat)

  • add是按行列相加,add前后通道数不发生改变;而concat则是对维度的加和,w,h不变,concat之后的通道数为concat之前通道数之和

YOLOv4一些tricks的应用

遗传算法

  • 使用遗传算法优化超参数

SPP模块

  • SPP模块,采用下图所示的方式进行这里最大池化采用padding操作,移动的步长为1,比如13×13的输入特征图,使用5×5大小的池化核池化,padding=2,因此池化后的特征图仍然是13×13大小。
    在这里插入图片描述

Mish激活函数

  • 部分激活函数采用Mish激活函数

Dropblock

  • 采用Dropblock代替 Dropout

补充trick

SE module

  • 特征重标定 SE module ,对每个特征通道设置权重激励,抑制对当前任务无用的特征。
  • 首先是(squeeze)将空间维度进行特征压缩,将CxHxW压缩为Cx1x1,获取1x1全局的感受野;
  • 随后(excitation),生成每个特征通道的权重;
  • 最后使用Scale做权重与原先的每个特征加权(通道权重相乘–>各通道权重值分别和原特征图对应通道的二维矩阵相乘),具体过程如下图:
    在这里插入图片描述

YOLOv5主要应用的tricks

自适应图片缩放

  • 个人认为这个trick对于计算量的减少还是非常实用的。
  • 常见的检测算法都是将图片缩放到一个统一的标准。而YOLOv5的自适应锚框是通过计算目标缩放尺寸416×416和当前图片尺寸w,h的比值得到缩放系数,使用小的缩放系数,获取最小填充的缩放后尺寸。(这里大白老师讲的比较详细,可以参考:传送门

CSP

  • YOLOv4只是backbone使用了CSP的思想,而YOLOv5的作者在backbone阶段使用了加残差模块的CSP结构;在Neck阶段使用了不加残差模块的CSP结构。加强了网络特征融合的能力
  • 这里借用大白老师的图
    在这里插入图片描述

★★★个人理解(残差模块和CSP的区别)

  • 实际上两者的核心思想都是shortcut(短接)残差模块一般用于backbone网络可以做深而不容易出现梯度消失或爆炸的情况,另外通过跨阶段层次结构将不同层特征合并减少了计算量的同时(共享),又保证了准确率
  • CSP相较于残差模块是一个更大的block,一般用在Neck
  • 两者还有一个最主要的区别在于:残差模块最后是add操作;而CSP最后是concat操作

CIOU

  • 最后是预测阶段用CIOU替代了传统的IOU(YOLOv4也是这样的)

参考资料

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-16 11:19:45  更:2022-05-16 11:20:00 
 
开发: 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 6:02:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码