- 🍨 本文为🔗365天深度学习训练营 中的学习记录博客
- 🍖 原作者:K同学啊
博主简介:努力学习的22级本科生一枚 🌟
博客主页:羊小猪~~-CSDN博客
内容简介:探索AI算法,C++,go语言的世界;在迷茫中寻找光芒🌸
往期–>yolov5网络结构讲解:深度学习基础–yolov5网络结构简介,C3模块构建_yolov5的c3模块结构-CSDN博客
下一次更新:common.py详解,common.py文件讲述的是yolo网络具体实现 🙏 🙏 🙏
📚 任务
- 将yolov5s网络模型中第4层的c3*2修改为C3*1,第6层的 C3*3 修改为C3*2
本次实验比较简单,因为之前已经学过yolov5s.yaml
文件的作用了,前期网络结构讲解:深度学习基础–yolov5网络结构简介,C3模块构建_yolov5的c3模块结构-CSDN博客
📖 准备
yolo*.yaml
文件是yolo0
网络结构模型,讲解的是yolo
网络模块搭建,具体请看:深度学习基础–yolov5网络结构简介,C3模块构建_yolov5的c3模块结构-CSDN博客
👀 模型修改原理
本文任务就是修改4和6模块。
原始的yolov5s.yaml文件网络结果
from n params module arguments0 -1 1 3520 models.common.Conv [3, 32, 6, 2, 2]1 -1 1 18560 models.common.Conv [32, 64, 3, 2]2 -1 1 18816 models.common.C3 [64, 64, 1]3 -1 1 73984 models.common.Conv [64, 128, 3, 2]4 -1 2 115712 models.common.C3 [128, 128, 2]5 -1 1 295424 models.common.Conv [128, 256, 3, 2]6 -1 3 625152 models.common.C3 [256, 256, 3]7 -1 1 1180672 models.common.Conv [256, 512, 3, 2]8 -1 1 1182720 models.common.C3 [512, 512, 1]9 -1 1 656896 models.common.SPPF [512, 512, 5]10 -1 1 131584 models.common.Conv [512, 256, 1, 1]11 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']12 [-1, 6] 1 0 models.common.Concat [1]13 -1 1 361984 models.common.C3 [512, 256, 1, False]14 -1 1 33024 models.common.Conv [256, 128, 1, 1]15 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']16 [-1, 4] 1 0 models.common.Concat [1]17 -1 1 90880 models.common.C3 [256, 128, 1, False]18 -1 1 147712 models.common.Conv [128, 128, 3, 2]19 [-1, 14] 1 0 models.common.Concat [1]20 -1 1 296448 models.common.C3 [256, 256, 1, False]21 -1 1 590336 models.common.Conv [256, 256, 3, 2]22 [-1, 10] 1 0 models.common.Concat [1]23 -1 1 1182720 models.common.C3 [512, 512, 1, False]24 [17, 20, 23] 1 16182 models.yolo.Detect [1, [[10, 13, 16, 30, 33, 23], [30, 61, 62, 45, 59, 119], [116, 90, 156, 198, 373, 326]], [128, 256, 512]]
YOLOv5s_fire summary: 214 layers, 7022326 parameters, 7022326 gradients, 15.9 GFLOPs
修改
yolov5s.yaml修改
修改后
from n params module arguments0 -1 1 3520 models.common.Conv [3, 32, 6, 2, 2]1 -1 1 18560 models.common.Conv [32, 64, 3, 2]2 -1 1 18816 models.common.C3 [64, 64, 1]3 -1 1 73984 models.common.Conv [64, 128, 3, 2]4 -1 1 74496 models.common.C3 [128, 128, 1]5 -1 1 295424 models.common.Conv [128, 256, 3, 2]6 -1 2 460800 models.common.C3 [256, 256, 2]7 -1 1 1180672 models.common.Conv [256, 512, 3, 2]8 -1 1 1182720 models.common.C3 [512, 512, 1]9 -1 1 656896 models.common.SPPF [512, 512, 5]10 -1 1 131584 models.common.Conv [512, 256, 1, 1]11 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']12 [-1, 6] 1 0 models.common.Concat [1]13 -1 1 361984 models.common.C3 [512, 256, 1, False]14 -1 1 33024 models.common.Conv [256, 128, 1, 1]15 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']16 [-1, 4] 1 0 models.common.Concat [1]17 -1 1 90880 models.common.C3 [256, 128, 1, False]18 -1 1 147712 models.common.Conv [128, 128, 3, 2]19 [-1, 14] 1 0 models.common.Concat [1]20 -1 1 296448 models.common.C3 [256, 256, 1, False]24 [17, 20, 23] 1 16182 models.yolo.Detect [1, [[10, 13, 16, 30, 33, 23], [30, 61, 62, 45, 59, 119], [116, 90, 156, 198, 373, 326]], [128, 256, 512]]
YOLOv5s_fire summary: 200 layers, 6816758 parameters, 6816758 gradients, 14.9 GFLOPs
从这个可以看出修改后的网络结构4, 6层都减少了不少参数量。