目录
Self-adversarial-training(SAT)
贡献
- 亲民政策 , 单GPU就能训练的非常好 , 接下来很多小模块都是这个出发点
- 两大核心方法 ,从数据层面和网络设计层面来进行改善
- 消融实验 , 感觉能做的都让他给做了 ,这工作量不轻
- 全部实验都是单GPU完成 ,不用太担心设备了
Bag of freebies(BOF)
- 只增加训练成本 , 但是能显著提高精度 , 并不影响推理速度
- 数据增强: 调整亮度、 对比度、 色调、 随机缩放、 剪切、 翻转、 旋转
- 网络正则化的方法: Dropout、 Dropblock等
- 类别不平衡 , 损失函数设计
YOLOv4
Mosaic data augmentation
方法很简单 ,参考CutMix然后四张图像拼接成一张进行训练
数据增强
- Random Erase: 用随机值或训练集的平均像素值替换图像的区域
- Hide and Seek: 根据概率设置随机隐藏一些补丁
Self-adversarial-training(SAT)
通过引入噪音点来增加游戏难度
DropBlock
之前的dropout是随机选择点(b) , 现在吃掉一个区域
Label Smoothing
- 神经网络最大的缺点: 自觉不错(过拟合) , 让它别太自信
- 例如原来标签为(0,1):
使用之后效果分析(右图) :簇内更紧密 , 簇间更分离
- IOU损失
- IOU损失: (也经常1-IOU)
- 有哪些问题呢?
- M 没有相交则IOU =0无法梯度计算 , 相同的IOU却反映不出实际情况到底咋样
- GIOU损失
- 公式:
- 引入了最小封闭形状C( C可以把A , B包含在内)
- 在不重叠情况下能让预测框尽可能朝着真实框前进
- 但是这种情况下又完了。 。 。
- GIOU损失
- 公式:
- 引入了最小封闭形状C( C可以把A , B包含在内)
- 在不重叠情况下能让预测框尽可能朝着真实框前进
- 但是这种情况下又完了。 。 。
- DIOU损失
- 公式:
- 其中分子计算预测框与真实框的中心点欧式距离d
- 分母是能覆盖预测框与真实框的最小BOX的对角线长度c
- 直接优化距离 ,速度更快 , 并解决GIOU问题
- CIOU损失
- 公式:
- 损失函数必须考虑三个几何因素: 重叠面积 , 中心点距离 , 长宽比
- M 其中α可以当做权重参数
- DIOU-NMS
- 之前使用NMS来决定是否删除一个框 , 现在改用DIOU-NMS
- 公式:
![]()
- M 不仅考虑了IoU的值,还考虑了两个Box中心点之间的距离
- 其中M表示高置信度候选框 , Bi就是遍历各个框跟置信度高的重合情况
- SOFT-NMS
- M 做人留一面日好相见 ,柔和一点的NMS , 更改分数而且直接剔除
- Bag of specials(BOS)
- M 增加稍许推断代价 , 但可以提高模型精度的方法
- M 网络细节部分加入了很多改进 , 引入了各种能让特征提取更好的方法
- M 注意力机制 , 网络细节设计 ,特征金字塔等 , 你能想到的全有
- M 读折一篇相当于把今年来部分优秀的论文又过了一遍
- SPPNet(Spatial Pyramid Pooling)
- M V3中为了更好满足不同输入大小 , 训练的时候要改变输入数据的大小
- M SPP其实就是用最大池化来满足最终输入特征一致即可
- CSPNet( Cross Stage Partial Network)
- 每一个block按照特征图的channel维度拆分成两部分
- 一份正常走网络 , 另一份直接concat到这个block的输出
- CBAM
- 就是这个家伙:
- M 其实就是加入了注意力机制 , 已经很常见了在各种论文中
- V4中用的是SAM , 也就是空间的注意力机制
- 不光NLP,语音识别领域在搞attention , CV中也一样
- YOLOV4中的Spatial attention module
- 一句话概述就是更简单了 ,速度相对能更快一
- PAN(Path Aggregation Network)
- 故事得先从FPN说起
- 自顶向下的模式 ,将高层特征传下来
- 好像只有一条路子 , 能不能来个双向的呢?
- 这就得轮到PAN登场了 , 思想也很简单
PAN(Path Aggregation Network)
M 引入了自底向上的路径 , 使得底层信息更容易传到顶部
并且还是一个捷径 , 红色的没准走个100层(Resnet) , 绿色的几层就到了
- PAN(Path Aggregation Network)
- M YOLOV4中并不是加法 , 而是拼接
- M ish:(也许就是明日之星)
- 别一棒子全给打死 , 给个改过自新的机会
- Relu有点太绝对了 , M ish更符合实际
- 公式:f(α)=·tanh(ln(1+ew))
- 但是计算量确实增加了 ,效果会提升一点
网络结构
总结
YOLOV4是一种目标检测算法,它使用深度学习技术来实现实时目标检测。它是YOLO(You Only Look Once)系列算法的第四个版本,具有更高的准确性和更快的速度。YOLOV4在计算机视觉领域具有广泛的应用,可以用于车辆识别、行人检测、物体追踪等任务。