自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

新目標(biāo)檢測(cè)模型YOLOv9實(shí)踐 :訓(xùn)練自定義數(shù)據(jù)

開發(fā)
在本文中,我將向您展示如何使用 Roboflow 在您的自定義數(shù)據(jù)集上使用新模型。

新YOLOv9模型的更新

YOLO系列模型有了一個(gè)新成員,在2024年2月發(fā)布了一篇新論文,標(biāo)題為“YOLOv9: 使用可編程梯度信息學(xué)習(xí)您想要學(xué)習(xí)的內(nèi)容”,詳細(xì)論文可以在這個(gè)鏈接中查看:https://arxiv.org/pdf/2402.13616.pdf。以下是一個(gè)快速概述:

  • 解決方案的核心是引入了可編程梯度信息(PGI)和一種新的輕量級(jí)網(wǎng)絡(luò)架構(gòu),稱為廣義高效層聚合網(wǎng)絡(luò)(GELAN)。
  • 可編程梯度信息(PGI):論文將PGI引入為一種方法,以減輕數(shù)據(jù)通過(guò)深度神經(jīng)網(wǎng)絡(luò)層時(shí)的信息丟失。PGI確保完整的輸入信息可用于目標(biāo)任務(wù)以計(jì)算目標(biāo)函數(shù),從而可以獲得可靠的梯度信息,用于更新網(wǎng)絡(luò)權(quán)重。
  • 廣義高效層聚合網(wǎng)絡(luò)(GELAN):GELAN基于梯度路徑規(guī)劃設(shè)計(jì),旨在優(yōu)化參數(shù)利用。這種架構(gòu)在輕量級(jí)模型中展示出優(yōu)異的結(jié)果,特別是與PGI結(jié)合時(shí),在MS COCO數(shù)據(jù)集上的對(duì)象檢測(cè)任務(wù)中表現(xiàn)比現(xiàn)有的最先進(jìn)方法更好。
  • 優(yōu)越的性能:在基于MS COCO數(shù)據(jù)集的對(duì)象檢測(cè)上,GELAN和PGI的組合表現(xiàn)出優(yōu)于其他方法的性能,特別是在參數(shù)利用和準(zhǔn)確性方面,甚至超過(guò)了在大型數(shù)據(jù)集上預(yù)訓(xùn)練的模型。

MS COCO對(duì)象檢測(cè)數(shù)據(jù)集的性能

與新YOLOv9進(jìn)行實(shí)際交互 

在本節(jié)中,我將向您展示如何使用Roboflow在您的自定義數(shù)據(jù)集上使用新模型,以下是詳細(xì)步驟:

1.確保您的運(yùn)行時(shí)類型設(shè)置為GPU:

您可以通過(guò)選擇Runtime > Change runtime type來(lái)檢查,確保選擇了GPU選項(xiàng)。

現(xiàn)在運(yùn)行以下部分以確認(rèn)我們正在使用正確的機(jī)器類型,并使得在我們的數(shù)據(jù)集中更容易進(jìn)行使用。

!nvidia-smi
import os
HOME = os.getcwd()
print(HOME)

2.設(shè)置和安裝

現(xiàn)在是時(shí)候克隆YOLOv9存儲(chǔ)庫(kù),并安裝roboflow庫(kù),以便我們可以直接在筆記本中輕松下載我們的數(shù)據(jù)集,并下載模型權(quán)重。

!git clone https://github.com/SkalskiP/yolov9.git%cd yolov9
!pip install -r requirements.txt -q
!pip install -q roboflow
!wget -P {HOME}/weights -q https://github.com/WongKinYiu/yolov9/releases/download/v0.1/yolov9-c.pt
!wget -P {HOME}/weights -q https://github.com/WongKinYiu/yolov9/releases/download/v0.1/yolov9-e.pt
!wget -P {HOME}/weights -q https://github.com/WongKinYiu/yolov9/releases/download/v0.1/gelan-c.pt
!wget -P {HOME}/weights -q https://github.com/WongKinYiu/yolov9/releases/download/v0.1/gelan-e.pt
!ls -la {HOME}/weights

3.創(chuàng)建您的Roboflow數(shù)據(jù)集

下一步是創(chuàng)建您想要使用的自定義數(shù)據(jù)集。

順便一提,不必使用roboflow,只要您的訓(xùn)練和測(cè)試數(shù)據(jù)的文件結(jié)構(gòu)符合YOLOv9文件結(jié)構(gòu)標(biāo)準(zhǔn),您也可以在自己的計(jì)算機(jī)上手動(dòng)完成。我鼓勵(lì)熱心的讀者這樣做,但是對(duì)于本文,我們將繼續(xù)使用Roboflow,因?yàn)樗峁┝烁憬莸慕换ァ?/p>

轉(zhuǎn)到Roboflow項(xiàng)目頁(yè)面,然后選擇創(chuàng)建新項(xiàng)目:

然后您將被重定向到創(chuàng)建頁(yè)面,請(qǐng)確保填寫所有被請(qǐng)求的詳細(xì)信息,以下是一個(gè)示例:

從這一點(diǎn)上開始,您將被要求上傳您的數(shù)據(jù)集數(shù)據(jù),因此請(qǐng)確保將所有相關(guān)的圖像添加在那里,然后點(diǎn)擊上傳。

接下來(lái),您需要對(duì)圖像進(jìn)行標(biāo)注。這非常直觀:

使用提示框圍繞正確的對(duì)象創(chuàng)建方框。

然后將所選框分配給相應(yīng)的類別。

下一步是生成階段,您需要?jiǎng)?chuàng)建一個(gè)版本,在此階段確保配置所有您認(rèn)為與您的特定情況相關(guān)的預(yù)處理和增強(qiáng)步驟,然后繼續(xù)。完成選擇選項(xiàng)后,點(diǎn)擊創(chuàng)建。

現(xiàn)在,在右上角選擇導(dǎo)出數(shù)據(jù)集選項(xiàng),檢查顯示下載代碼選項(xiàng)和YOLOv9格式,然后點(diǎn)擊繼續(xù)。

您將獲得一個(gè)下載代碼,請(qǐng)復(fù)制它,并將其粘貼到筆記本的以下部分:

開始訓(xùn)練

最后,現(xiàn)在我們需要訓(xùn)練我們的自定義模型,請(qǐng)根據(jù)您的項(xiàng)目需求設(shè)置參數(shù),并相應(yīng)地更改批量大小、時(shí)期數(shù)和圖像分辨率大?。?/p>

%cd {HOME}/yolov9

!python train.py \
--batch 16 --epochs 25 --img 640 --device 0 --min-items 0 --close-mosaic 15 \
--data {dataset.location}/data.yaml \
--weights {HOME}/weights/gelan-c.pt \
--cfg models/detect/gelan-c.yaml \
--hyp hyp.scratch-high.yaml

訓(xùn)練過(guò)程可能需要一些時(shí)間,具體取決于您的數(shù)據(jù)集大小和所選擇的參數(shù)配置。

要查看我們的模型在訓(xùn)練過(guò)程中的表現(xiàn),以下是繪制出漂亮指標(biāo)圖的代碼片段。我將展示我的結(jié)果和指標(biāo),但不要期望它們很好,因?yàn)槲业臄?shù)據(jù)集相當(dāng)小且貧乏,目標(biāo)只是展示訓(xùn)練新模型的可能性。

from IPython.display import Image

Image(filename=f"{HOME}/yolov9/runs/train/exp/results.png", width=1000)

訓(xùn)練結(jié)果

還有沒(méi)有混淆矩陣?

from IPython.display import Image

Image(filename=f"{HOME}/yolov9/runs/train/exp/confusion_matrix.png", width=1000)

訓(xùn)練后的淆矩陣

如果要檢查模型的預(yù)測(cè),可以這樣做:

from IPython.display import Image

Image(filename=f"{HOME}/yolov9/runs/train/exp/val_batch0_pred.jpg", width=1000)
責(zé)任編輯:趙寧寧 來(lái)源: 小白玩轉(zhuǎn)Python
相關(guān)推薦

2024-11-06 16:56:51

2025-01-22 11:10:34

2024-10-07 11:12:55

2024-09-09 16:35:10

YOLO模型

2025-02-07 14:52:11

2024-02-23 11:10:00

AI訓(xùn)練

2025-01-21 11:41:14

2024-07-01 12:55:50

2024-10-16 16:49:44

定向邊界框目標(biāo)檢測(cè)YOLOv8

2024-10-25 08:30:57

計(jì)算機(jī)視覺(jué)神經(jīng)網(wǎng)絡(luò)YOLOv8模型

2024-02-26 10:21:49

神經(jīng)網(wǎng)絡(luò)YOLO

2023-12-21 09:00:21

函數(shù)React 組件useEffect

2017-05-19 10:03:31

AndroidBaseAdapter實(shí)踐

2025-01-06 08:20:00

YOLOv11目標(biāo)檢測(cè)Python

2023-01-12 12:20:29

YOLOv8模型

2024-10-24 20:56:36

2017-05-18 12:36:16

android萬(wàn)能適配器列表視圖

2023-01-10 18:33:18

AIYOLO網(wǎng)絡(luò)

2021-08-25 10:14:51

鴻蒙HarmonyOS應(yīng)用

2023-07-28 09:26:43

GolangZap
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)