『目标检测』YOLO V4

一、数据增强

对于单一图片,除了经典的 几何畸变 和 光照畸变 外,还创新地使用了图像遮挡(Random Erase, Cutout, Hide and Seek, Grid Mask, MixUp)技术;
对于多图组合,作者混合使用了 CutMixMosaic 技术。
除此之外,还使用了 Self-Adversarial Training(SAT) 来进行数据增强。

1. 图像遮挡

  • Random Erase
    用随机值或训练集的平均像素值替换图像的区域。
  • Cutout
    仅对 CNN 第一层的输入进行剪切方块 Mask。
  • Hide and Seek
    将图像分割成一个由 S*S 图像补丁组成的网络,根据概率设置随机隐藏一些补丁,从而让模型学习整个对象的特征,而不是单独一块,比如不单独依赖动物的脸做识别。
  • Grid Mask
    将图像的区域隐藏在网格中,作用也是为了让模型学习对象的整个组成部分。
  • MixUp
    图像对及其标签的凸面叠加。

2. 多图组合

  • CutMix
    将另一个图像中的剪切部分粘贴到增强图像。图像的剪切迫使模型学会根据大量的特征进行预测。
  • Mosaic
    在 Cutmix 中组合了两张图像,而在 Mosaic 中使用四张训练图像按一定比例组合成一张图像,使模型学会在更小的范围内识别对象。其次,还有助于显著减少对 batch_size 的需求,毕竟大多数人的 GPU 显存有限。

二、自对抗训练(SAT)

Self-Adversarial Training 是在一定程度上抵抗对抗攻击的数据增强技术。CNN 计算出 Loss, 然后通过反向传播改变图片信息,形成图片上没有目标的假象,然后对修改后的图像进行正常的目标检测。需要注意的是,SAT 在反向传播的过程中,是不需要网络权值的。

三、基本知识点积累

1. 激活函数

在 yolov4 中使用 Mish 激活函数。

2. 优化器

在 yolov4 中使用 SGD 优化器。

3. 损失函数

在 yolov4 中使用 CIOU Loss 作为 bounding box 的损失。

四、YOLO V4的改进

1. 主干特征提取网络:DarkNet53 => CSPDarkNet53

2. 特征金字塔:SPP,PAN

3. 分类回归层:YOLOv3(未改变)

4. 训练用到的小技巧:

1. Mosaic数据增强
2. Label Smoothing平滑
new_onehot_labels = onehot_labels * (1 - label_smoothing) + label_smoothing / num_classes
3. CIOU
4. 学习率余弦退火衰减
余弦退火衰减法,学习率会先上升再下降,这是退火优化法的思想。
上升的时候使用线性上升,下降的时候模拟cos函数下降。执行多次。

在这里插入图片描述

5. 激活函数:使用Mish激活函数
Mish函数的公式与图像如下:

在这里插入图片描述

五、YOLO V4 网络结构

当输入是 416x416 时,特征结构如下:
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

libo-coder

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值