【YOLO系列】YOLO V5模型详解

前言

以下内容仅为个人在学习人工智能中所记录的笔记,先将目标识别算法yolo系列的整理出来分享给大家,供大家学习参考。

本文未对论文逐句逐段翻译,而是阅读全文后,总结出的YOLO V5的思路与实现路径。

若文中内容有误,希望大家批评指正。


资料下载

项目地址:YOLO V5_v6

回顾:

YOLO V1:【YOLO系列】YOLO V1论文思想详解

YOLO V2:【YOLO系列】YOLO V2论文思想详解

YOLO V3:【YOLO系列】 YOLOv3论文思想详解

YOLO V4:【YOLO系列】 YOLOv4论文思想详解


YOLO V5是是Glenn Jocher等人研发,它是Ultralytics公司的开源项目,没有相关论文。


YOLOv5根据参数量分为了YOLOv5n(Nano)、YOLOv5s(Small)、YOLOv5m(Medium)、YOLOv5l(Large)和 YOLOv5x(Extra Large)五种类型,其参数量依次上升,当然了其效果也是越来越好。从2020年6月发布至2022年11月已经更新了7个大版本,在v7版本中还添加了语义分割的功能。

本文以YOLOv5_v6为媒介,对YOLOv5进行学习。

YOLO V5的5个pt文件的参数如下所示:

YOLOv5n summary: 213 layers, 1867405 parameters, 0 gradients, 4.5 GFLOPs

YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients, 16.4 GFLOPs

YOLOv5m summary: 290 layers, 21172173 parameters, 0 gradients, 48.9 GFLOPs

YOLOv5lsummary: 367 layers, 46533693 parameters, 0 gradients, 109.0 GFLOPs

YOLOv5x summary: 444 layers, 86705005 parameters, 0 gradients, 205.5 GFLOPs


一、YOLO V5_v6思想

1、在训练阶段 ,YOLO V5使用Mosaic数据增强 来提升模型的训练速度和网络精度,自适应锚框计算 (YOLO V2提出,详情可看:【YOLO系列】YOLO V2论文思想详解【YOLO系列】 速看!YOLOv3中如何使用K-Means聚类算法生成Anchor Box)。

2、在Backbone 网络中,YOLO V5改进了YOLO V4的CSPDarkNet53网络 ,使用SiLu激活函数代替了YOLO V4中的Mish激活函数。

3、在Neck 网络中,YOLO V5使用SPPF替代了YOLO V4中的SPP模块来融合不同尺度大小的特征图。同时,利用自底向上的PAN特征金字塔提升网络的特征提取能力。

4、YOLO V5的Head依然和YOLO V4一样使用了YOLO V3的head并没有做特别的改进。

5、模型在训练前,先进行了Warmup热身 ,然后在采用了CosineAnnealingLR学习率下降的策略,让学习率随epoch的变化图类似于cos变化。


二、YOLO V5_v6模型结构

YOLO V5现在已经更新到v7,但是每个版本的核心架构都是大差不差的。

在v1~v4的版本,YOLOV5的Backbone几乎没有变化 ,最多是每个卷积后激活函数变了,并且都只是用了两次upsample来输入特征图来做detect;

从v5开始,模型neck的深度变大了,也就是做了三次upsample来输出特征图做最后的预测;

到v6,模型删除foucs ,将SPP替换成了SPPF

v7版本又加上了语义分割的功能,其余的变化并不大。

接下来我把v1~v6版本的模型结构都给出来,供大家参考,每个版本均有yolov5s为基础。

1、YOLO V5粗略图

(1)v1~v4

(2)v5~v6

2、YOLO V5详细图

(1)v3

v2和v1就是把下图中CONV模块中的激活函数换成LeakyReLU即可

(2)v4

(3)v5

(4)v6


关注公众号,获取200+本Python、人工智能相关学习资料

相关推荐
Json____1 分钟前
使用python的 FastApi框架开发图书管理系统-前后端分离项目分享
开发语言·python·fastapi·图书管理系统·图书·项目练习
安思派Anspire7 分钟前
LangGraph + MCP + Ollama:构建强大代理 AI 的关键(二)
人工智能·后端·python
站大爷IP11 分钟前
Python文件与目录比较全攻略:从基础操作到性能优化
python
ahead~1 小时前
【大模型入门】访问GPT_API实战案例
人工智能·python·gpt·大语言模型llm
大模型真好玩2 小时前
准确率飙升!GraphRAG如何利用知识图谱提升RAG答案质量(额外篇)——大规模文本数据下GraphRAG实战
人工智能·python·mcp
19892 小时前
【零基础学AI】第30讲:生成对抗网络(GAN)实战 - 手写数字生成
人工智能·python·深度学习·神经网络·机器学习·生成对抗网络·近邻算法
applebomb2 小时前
没合适的组合wheel包,就自行编译flash_attn吧
python·ubuntu·attention·flash
19893 小时前
【零基础学AI】第31讲:目标检测 - YOLO算法
人工智能·rnn·yolo·目标检测·tensorflow·lstm
Chasing__Dreams3 小时前
python--杂识--18.1--pandas数据插入sqlite并进行查询
python·sqlite·pandas
cver1233 小时前
CSGO 训练数据集介绍-2,427 张图片 AI 游戏助手 游戏数据分析
人工智能·深度学习·yolo·目标检测·游戏·计算机视觉