Java教程

YOLOX阅读笔记

本文主要是介绍YOLOX阅读笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

YOLOX论文阅读

文章目录

  • Baseline
  • Decoupled head
  • 数据增强策略
  • Anchor-free
  • Multi-positive
  • SimOTA
  • end-to-end YOLO

Baseline

Baseline:DarkNet53 + SPP Layer 同时加入了一些训练策略,EMA权重更新,cosine学习率机制, IoU loss和IOU-aware分支,在训练cls和obj分支时使用BCE Loss,在reg分支使用IoU Loss

Decoupled head

Decoupled Head

数据增强策略

强大的数据增强策略:Mosaic 和 Mixup

Anchor-free

Anchor-free : YOLOv4和YOLOv5都遵循YOLO3的Anchor-base策略。下面指出anchor机制的几个问题:
1.为了实现最佳的检测性能,需在训练前进行选择最佳的anchors,但其实这样选择的anchor具有领域的特殊性和更少的普遍性。
2.anchor机制大大增加了detection head和图片预测数量的复杂度。
Anchor-free可以减少参数量,能够加快模型的速度。将YOLO转成anchor-free也很简单。将每个位置的预测从3个减到1个。

Multi-positive

Multi positives:使用anchor机制后,对每个目标仅仅选择一个positive样本。然而,优化那些高质量的预测,能够带来有用的元素,能够减轻在训练时positives和negatives样本之间的不平衡性。所以,YOLOX简单地将中心3x3的区域分为positive样本,这也叫做FCOS中的中心采样。

SimOTA


SimOTA:什么是OTA?

OTA是什么?

OTA来自论文《Optimal transport assignment for object detection》,OTA遵循4个rule:
(1)loss/quality aware
(2)center prior
(3)对每个真实框都有动态数目的positive anchor(简单地像top-k)
(4)global view

SimOTA是简化后的OTA——动态top-k策略。SimOTA首先计算成对的匹配度,由每个预测与真实对之间的cost或者quality,在SimOTA的cost等于分类的loss综合回归的loss。

end-to-end YOLO


end-to-end YOLO:增加额外两个卷积层。一对一的label分配策略和随机梯度。这些能够使检测器表现为一个端到端的行为,但是会轻微降低性能和推理速度。因此将其作为优化模块,没有放进最后的模型之中。

这篇关于YOLOX阅读笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!