YOLOv5白皮書-第Y6周:模型改進

📌本周任務:模型改進📌

注:對yolov5l.yaml文件中的backbone模塊和head模塊進行改進。

任務結構圖:?

?

?

?YOLOv5s網絡結構圖:

原始模型代碼:

# YOLOv5 v6.0 backbone
backbone:# [from, number, module, args][[-1, 1, Conv, [64, 6, 2, 2]],  # 0-P1/2[-1, 1, Conv, [128, 3, 2]],  # 1-P2/4[-1, 3, C3, [128]],[-1, 1, Conv, [256, 3, 2]],  # 3-P3/8[-1, 6, C3, [256]],[-1, 1, Conv, [512, 3, 2]],  # 5-P4/16[-1, 9, C3, [512]],[-1, 1, Conv, [1024, 3, 2]],  # 7-P5/32[-1, 3, C3, [1024]],[-1, 1, SPPF, [1024, 5]],  # 9]# YOLOv5 v6.0 head
head:[[-1, 1, Conv, [512, 1, 1]],[-1, 1, nn.Upsample, [None, 2, 'nearest']],[[-1, 6], 1, Concat, [1]],  # cat backbone P4[-1, 3, C3, [512, False]],  # 13[-1, 1, Conv, [256, 1, 1]],[-1, 1, nn.Upsample, [None, 2, 'nearest']],[[-1, 4], 1, Concat, [1]],  # cat backbone P3[-1, 3, C3, [256, False]],  # 17 (P3/8-small)[-1, 1, Conv, [256, 3, 2]],[[-1, 14], 1, Concat, [1]],  # cat head P4[-1, 3, C3, [512, False]],  # 20 (P4/16-medium)[-1, 1, Conv, [512, 3, 2]],[[-1, 10], 1, Concat, [1]],  # cat head P5[-1, 3, C3, [1024, False]],  # 23 (P5/32-large)[[17, 20, 23], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)]

?改進代碼:

# YOLOv5 v6.0 backbone
backbone:# [from, number, module, args][[-1, 1, Conv, [64, 6, 2, 2]],  # 0-P1/2[-1, 1, Conv, [128, 3, 2]],  # 1-P2/4[-1, 3, C3, [128]],[-1, 1, Conv, [256, 3, 2]],  # 3-P3/8[-1, 6, C2, [256]],[-1, 1, Conv, [512, 3, 2]],  # 5-P4/16[-1, 3, C3, [512]],#[-1, 1, Conv, [1024, 3, 2]],  # 7-P5/32#[-1, 3, C3, [1024]],[-1, 1, SPPF, [512, 5]],  # 9]# YOLOv5 v6.0 head
head:[[-1, 1, Conv, [512, 3, 2]],[-1, 1, nn.Upsample, [None, 2, 'nearest']],[[-1, 6], 1, Concat, [1]],  # cat backbone P4[-1, 3, C3, [512, False]],  # 13[-1, 1, Conv, [256, 1, 1]],[-1, 1, nn.Upsample, [None, 2, 'nearest']],[[-1, 4], 1, Concat, [1]],  # cat backbone P3[-1, 3, C3, [256, False]],  # 17 (P3/8-small)[-1, 1, Conv, [256, 3, 2]],[[-1, 12], 1, Concat, [1]],  # cat head P4[-1, 3, C3, [512, False]],  # 20 (P4/16-medium)[-1, 1, Conv, [512, 3, 2]],[[-1, 8], 1, Concat, [1]],  # cat head P5[-1, 3, C3, [1024, False]],  # 23 (P5/32-large)[[15, 18, 21], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)]

?運行模型:

python train.py --img 640 --batch 8 --epoch 1 --data data/ab.yaml ?--cfg models/yolov5s.yaml


(venv) D:\Out\yolov5-master>python train.py --img 640 --batch 8 --epoch 1 --data data/ab.yaml ?--cfg models/yolov5s.yaml
train: weights=yolov5s.pt, cfg=models/yolov5s.yaml, data=data/ab.yaml, hyp=data\hyps\hyp.scratch-low.yaml, epochs=1, batch_size=8, imgsz=640, rect=False, resume=False, nosave=False, noval=False, noautoanchor=False, noplots=False, evolve=None, bucket=, cache=None, image_weights=False, device=, multi_scale=False, single_cls=False, optimizer=SGD, sync_bn=False, workers=8, project=runs\train, name=exp, exist_ok=False, quad=False, cos_lr=False, label_smoothing=0.0, patience=100, freeze=[0], save_period=-1, seed=0, local_rank=-1, entity=None, upload_dataset=False, bbox_interval=-1, artifact_alias=latest
github: skipping check (not a git repository), for updates see https://github.com/ultralytics/yolov5
YOLOv5 ?2023-6-27 Python-3.10.3 torch-2.0.1+cpu CPU

hyperparameters: lr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=0.05, cls=0.5, cls_pw=1.0, obj=1.0, obj_pw=1.0, iou_t=0.2, anchor_t=4.0, fl_gamma=0.0, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, mosaic=1.0, mixup=0.0, copy_paste=0.0
Comet: run 'pip install comet_ml' to automatically track and visualize YOLOv5 ?runs in Comet
TensorBoard: Start with 'tensorboard --logdir runs\train', view at http://localhost:6006/
Overriding model.yaml nc=80 with nc=4

? ? ? ? ? ? ? ? ?from ?n ? ?params ?module ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?arguments
? 0 ? ? ? ? ? ? ? ?-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 ? ? 14592 ?models.common.C2 ? ? ? ? ? ? ? ? ? ? ? ?[64, 64, 1]
? 4 ? ? ? ? ? ? ? ?-1 ?1 ? ? 73984 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[64, 128, 3, 2]
? 5 ? ? ? ? ? ? ? ?-1 ?2 ? ?115712 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[128, 128, 2]
? 6 ? ? ? ? ? ? ? ?-1 ?1 ? ?295424 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[128, 256, 3, 2]
? 7 ? ? ? ? ? ? ? ?-1 ?3 ? ?625152 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[256, 256, 3]
? 8 ? ? ? ? ? ? ? ?-1 ?1 ? 1180672 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[256, 512, 3, 2]
? 9 ? ? ? ? ? ? ? ?-1 ?1 ? 1182720 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[512, 512, 1]
?10 ? ? ? ? ? ? ? ?-1 ?1 ? ?656896 ?models.common.SPPF ? ? ? ? ? ? ? ? ? ? ?[512, 512, 5]
?11 ? ? ? ? ? ? ? ?-1 ?1 ? ?131584 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[512, 256, 1, 1]
?12 ? ? ? ? ? ? ? ?-1 ?1 ? ? ? ? 0 ?torch.nn.modules.upsampling.Upsample ? ?[None, 2, 'nearest']
?13 ? ? ? ? ? [-1, 6] ?1 ? ? ? ? 0 ?models.common.Concat ? ? ? ? ? ? ? ? ? ?[1]
?14 ? ? ? ? ? ? ? ?-1 ?1 ? ?361984 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[512, 256, 1, False]
?15 ? ? ? ? ? ? ? ?-1 ?1 ? ? 33024 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[256, 128, 1, 1]
?16 ? ? ? ? ? ? ? ?-1 ?1 ? ? ? ? 0 ?torch.nn.modules.upsampling.Upsample ? ?[None, 2, 'nearest']
?17 ? ? ? ? ? [-1, 4] ?1 ? ? ? ? 0 ?models.common.Concat ? ? ? ? ? ? ? ? ? ?[1]
?18 ? ? ? ? ? ? ? ?-1 ?1 ? ? 90880 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[256, 128, 1, False]
?19 ? ? ? ? ? ? ? ?-1 ?1 ? ?147712 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[128, 128, 3, 2]
?20 ? ? ? ? ?[-1, 14] ?1 ? ? ? ? 0 ?models.common.Concat ? ? ? ? ? ? ? ? ? ?[1]
?21 ? ? ? ? ? ? ? ?-1 ?1 ? ?329216 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[384, 256, 1, False]
?22 ? ? ? ? ? ? ? ?-1 ?1 ? ?590336 ?models.common.Conv ? ? ? ? ? ? ? ? ? ? ?[256, 256, 3, 2]
?23 ? ? ? ? ?[-1, 10] ?1 ? ? ? ? 0 ?models.common.Concat ? ? ? ? ? ? ? ? ? ?[1]
?24 ? ? ? ? ? ? ? ?-1 ?1 ? 1313792 ?models.common.C3 ? ? ? ? ? ? ? ? ? ? ? ?[768, 512, 1, False]
?25 ? ? ?[17, 20, 23] ?1 ? ? 38097 ?models.yolo.Detect ? ? ? ? ? ? ? ? ? ? ?[4, [[10, 13, 16, 30, 33, 23], [30, 61, 62, 45, 59, 119], [116, 90, 156, 198, 373, 326]], [256, 384, 768]]
YOLOv5s summary: 229 layers, 7222673 parameters, 7222673 gradients, 17.0 GFLOPs

Transferred 49/373 items from yolov5s.pt
optimizer: SGD(lr=0.01) with parameter groups 61 weight(decay=0.0), 64 weight(decay=0.0005), 64 bias
train: Scanning D:\Out\yolov5-master\paper_data\train.cache... 160 images, 0 backgrounds, 0 corrupt: 100%|██████████| 1
val: Scanning D:\Out\yolov5-master\paper_data\val.cache... 20 images, 0 backgrounds, 0 corrupt: 100%|██████████| 20/20

AutoAnchor: 5.35 anchors/target, 1.000 Best Possible Recall (BPR). Current anchors are a good fit to dataset
Plotting labels to runs\train\exp3\labels.jpg...
Image sizes 640 train, 640 val
Using 4 dataloader workers
Logging results to runs\train\exp3
Starting training for 1 epochs...

? ? ? Epoch ? ?GPU_mem ? box_loss ? obj_loss ? cls_loss ?Instances ? ? ? Size
? ? ? ? 0/0 ? ? ? ? 0G ? ? 0.1101 ? ?0.04563 ? ? 0.0454 ? ? ? ? 49 ? ? ? ?640: 100%|██████████| 20/20 [02:44<00:00, ?8.
? ? ? ? ? ? ? ? ?Class ? ? Images ?Instances ? ? ? ? ?P ? ? ? ? ?R ? ? ?mAP50 ? mAP50-95: 100%|██████████| 2/2 [00:05<0
? ? ? ? ? ? ? ? ? ?all ? ? ? ? 20 ? ? ? ? 60 ? 0.000542 ? ? ? 0.25 ? 0.000682 ? 0.000268

1 epochs completed in 0.048 hours.
Optimizer stripped from runs\train\exp3\weights\last.pt, 14.8MB
Optimizer stripped from runs\train\exp3\weights\best.pt, 14.8MB

Validating runs\train\exp3\weights\best.pt...
Fusing layers...
YOLOv5s summary: 168 layers, 7213041 parameters, 0 gradients, 16.8 GFLOPs
? ? ? ? ? ? ? ? ?Class ? ? Images ?Instances ? ? ? ? ?P ? ? ? ? ?R ? ? ?mAP50 ? mAP50-95: 100%|██████████| 2/2 [00:05<0
? ? ? ? ? ? ? ? ? ?all ? ? ? ? 20 ? ? ? ? 60 ? 0.000542 ? ? ? 0.25 ? 0.000685 ? 0.000268
? ? ? ? ? ? ? ? banana ? ? ? ? 20 ? ? ? ? 12 ? ? ? ? ?0 ? ? ? ? ?0 ? ? ? ? ?0 ? ? ? ? ?0
? ? ? ? ? ?snake fruit ? ? ? ? 20 ? ? ? ? 20 ? ? ? ? ?0 ? ? ? ? ?0 ? ? ? ? ?0 ? ? ? ? ?0
? ? ? ? ? dragon fruit ? ? ? ? 20 ? ? ? ? 13 ? ?0.00217 ? ? ? ? ?1 ? ?0.00274 ? ?0.00107
? ? ? ? ? ? ?pineapple ? ? ? ? 20 ? ? ? ? 15 ? ? ? ? ?0 ? ? ? ? ?0 ? ? ? ? ?0 ? ? ? ? ?0
Results saved to runs\train\exp3


?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/39069.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/39069.shtml
英文地址,請注明出處:http://en.pswp.cn/news/39069.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

每日匯評:黃金在 200 日移動平均線附近似乎很脆弱,關注美國零售銷售

1、金價預計將鞏固其近期跌勢&#xff0c;至 6 月初以來的最低水平&#xff1b; 2、對美聯儲再次加息的押注繼續限制了貴金屬的上漲&#xff1b; 3、金融市場現在期待美國零售銷售報告帶來一些有意義的推動&#xff1b; 周二金價難以獲得任何有意義的牽引力&#xff0c;并在…

Mac RN環境搭建

IOS RN ios android原生環境搭建有時候是真惡心&#xff0c;電腦環境不一樣配置也有差異。 我已經安裝官網的文檔配置了ios環境 執行 npx react-nativelatest init AwesomeProject 報錯 然后自己百度查呀執行 gem update --system 說是沒有權限&#xff0c;執行失敗。因…

POSTGRESQL 關于安裝中自動啟動的問題 詳解

開頭還是介紹一下群&#xff0c;如果感興趣Polardb ,mongodb ,MySQL ,Postgresql ,redis &#xff0c;SQL SERVER ,ORACLE,Oceanbase 等有問題&#xff0c;有需求都可以加群群內有各大數據庫行業大咖&#xff0c;CTO&#xff0c;可以解決你的問題。加群請加 liuaustin3微信號 &…

OpenSSH 遠程升級到 9.4p1

OpenSSH 遠程升級到 9.4p1 文章目錄 OpenSSH 遠程升級到 9.4p1背景升級前提1. 升級 OpenSSL2. 安裝并啟用Telnet 升級OpenSSH 背景 最近的護網行動&#xff0c;被查出來了好幾個關于OpenSSH 的漏洞。這是因為服務器系統安裝后&#xff0c;直接使用了系統自帶版本的OpenSSH &am…

2023-08-15 linux mipi 屏幕調試:有一個屏幕開機時候不顯示,開機后按power 按鍵休眠喚醒就可以顯示。原因是reset gpio 被復用

一、現象&#xff1a;今天更新了一個新版本的buildroot linux sdk &#xff0c;調試兩個mipi 屏幕&#xff0c;這兩個屏幕之前在其他的sdk都調好了的&#xff0c;所有直接把配置搬過來。但是有一個屏幕可以正常顯示&#xff0c;有一個屏幕開機時候不顯示&#xff0c;開機后按po…

CentOS防火墻操作:開啟端口、開啟、關閉、配置

一、基本使用 啟動&#xff1a; systemctl start firewalld 關閉&#xff1a; systemctl stop firewalld 查看狀態&#xff1a; systemctl status firewalld 開機禁用 &#xff1a; systemctl disable firewalld 開機啟用 &#xff1a; systemctl enable firewalld systemctl是…

angular注入方法providers

在Angular中有很多方式可以將服務類注冊到注入器中: Injectable 元數據中的providedIn屬性 NgModule 元數據中的 providers屬性 Component 元數據中的 providers屬性 創建一個文件名叫名 hero.service.ts叫 hero 的服務 hero.service.ts import { Injectable } from angular…

C語言,結構體,結構體大小,

1、結構體&#xff1a; 用于存儲不同數據類型的多個相關變量&#xff0c;從而形成一個具有獨立性的組合數據類型。 結構體的聲明&#xff1a; struct 結構體類型名{ 數據類型 成員1&#xff1b; 數據類型 成員2&#xff1b; 數據類型 成員3&#xff1b; ……… }&#xff1…

轉行軟件測試四個月學習,第一次面試經過分享

我是去年上半年從銷售行業轉行到測試的&#xff0c;從銷售公司辭職之后選擇去培訓班培訓軟件測試&#xff0c;經歷了四個月左右的培訓&#xff0c;在培訓班結課前兩周就開始投簡歷了&#xff0c;在結課的時候順利拿到了offer。在新的公司從事軟件測試工作已經將近半年有余&…

深信服數據中心管理系統 XXE漏洞復現

0x01 產品簡介 深信服數據中心管理系統DC為AC的外置數據中心&#xff0c;主要用于海量日志數據的異地擴展備份管理&#xff0c;多條件組合的高效查詢&#xff0c;統計和趨勢報表生成&#xff0c;設備運行狀態監控等功能。 0x02 漏洞概述 深信服數據中心管理系統DC存在XML外部實…

WPS-0DAY-20230809的分析和利用復現

WPS-0DAY-20230809的分析和初步復現 一、漏洞學習1、本地復現環境過程 2、代碼解析1.htmlexp.py 3、通過修改shellcode拿shell曲折的學習msf生成sc 二、疑點1、問題2、我的測試測試方法測試結果 一、漏洞學習 強調&#xff1a;以下內容僅供學習和測試&#xff0c;一切行為均在…

Keil開發STM32單片機項目的三種方式

STM32單片機相比51單片機&#xff0c;內部結構復雜很多&#xff0c;因此直接對底層寄存器編碼&#xff0c;相對復雜&#xff0c;這個需要我們了解芯片手冊&#xff0c;對于復雜項目&#xff0c;這些操作可能需要反復編寫&#xff0c;因此出現了標準庫的方式&#xff0c;對寄存器…

ES中倒排索引機制

在ES的倒排索引機制中有四個重要的名詞&#xff1a;Term、Term Dictionary、Term Index、Posting List。 Term&#xff08;詞條&#xff09;&#xff1a;詞條是索引里面最小的存儲和查詢單元。一段文本經過分析器分析以后就會輸出一串詞條。一般來說英文語境中詞條是一個單詞&a…

日期時間常用功能和函數

1 time 模塊 time 模塊提供了很多與時間相關的類和函數&#xff0c;下面我們介紹一些常用的。 1.1 struct_time 類 time 模塊的 struct_time 類代表一個時間對象&#xff0c;可以通過索引和屬性名訪問值。對應關系如下所示&#xff1a; 索引屬性值0tm_year&#xff08;年&a…

Docker容器與虛擬化技術:Docker資源控制、數據管理

目錄 一、理論 1.資源控制 2.Docker數據管理 二、實驗 1.Docker資源控制 2.Docker數據管理 三、問題 1.docker容器故障導致大量日志集滿&#xff0c;造成磁盤空間滿 2、當日志占滿之后如何處理 四、總結 一、理論 1.資源控制 (1) CPU 資源控制 cgroups&#xff0…

Java Vue Uniapp MES生產執行管理系統

本MES系統是一款B/S結構、通用的生產執行管理系統&#xff0c;功能強大&#xff01; 系統基于多年離散智造行業的業務經驗組建&#xff0c;主要目的是為國內離散制造業的中小企業提供一個專業化、通用性、低成本的MES系統解決方案。 聯系作者獲取

Linux(進程控制)

進程控制 進程創建fork函數初識fork函數返回值寫時拷貝fork常規用法fork調用失敗的原因 進程終止進程退出碼進程常見退出方法 進程等待進程等待必要性獲取子進程status進程等待的方法 阻塞等待與非阻塞等待阻塞等待非阻塞等待 進程替換替換原理替換函數函數解釋命名理解 做一個…

re學習(32)【綠城杯2021】babyvxworks(淺談花指令)

鏈接&#xff1a;https://pan.baidu.com/s/1msA5EY_7hoYGBEema7nWwA 提取碼&#xff1a;b9xf wp:首先找不到main函數&#xff0c;然后尋找特殊字符串&#xff0c; 交叉引用 反匯編 主函數在sub_3D9當中&#xff0c;但是IDA分析錯了 分析錯誤后&#xff0c;刪除函數 創建函數 操…

【Linux】多線程1——線程概念與線程控制

文章目錄 1. 線程概念什么是線程Linux中的線程線程的優點線程的缺點線程的獨立資源和共享資源 2. 線程控制Linux的pthread庫用戶級線程 &#x1f4dd; 個人主頁 &#xff1a;超人不會飛)&#x1f4d1; 本文收錄專欄&#xff1a;《Linux》&#x1f4ad; 如果本文對您有幫助&…

無腦入門pytorch系列(三)—— nn.Linear

本系列教程適用于沒有任何pytorch的同學&#xff08;簡單的python語法還是要的&#xff09;&#xff0c;從代碼的表層出發挖掘代碼的深層含義&#xff0c;理解具體的意思和內涵。pytorch的很多函數看著非常簡單&#xff0c;但是其中包含了很多內容&#xff0c;不了解其中的意思…