国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

YOLOv8訓練參數詳解

這篇具有很好參考價值的文章主要介紹了YOLOv8訓練參數詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

全部參數表

首先羅列一下官網提供的全部參數。

YOLOv8訓練參數詳解,目標檢測,YOLO,深度學習,計算機視覺

1. model ?????

model: 模型文件的路徑。這個參數指定了所使用的模型文件的位置,例如 yolov8n.pt 或 yolov8n.yaml。

選擇.pt和.yaml的區(qū)別

  • 若我們選擇 yolov8n.pt這種.pt類型的文件,其實里面是包含了模型的結構和訓練好的參數的,也就是說拿來就可以用,就已經具備了檢測目標的能力了,yolov8n.pt能檢測coco中的80個類別。但如果你需要檢測的類別不在其中,例如口罩檢測,那么就需要重新訓練。
  • 訓練自己的數據集,我們一般采用yolov8n.yaml這種.yaml文件的形式,在文件中指定類別,以及一些別的參數。

2. data ?????

data: 數據文件的路徑。該參數指定了數據集文件的位置,例如 coco128.yaml。數據集文件包含了訓練和驗證所需的圖像、標簽。

3. epochs ???

epochs: 訓練的輪數。這個參數確定了模型將會被訓練多少次,每一輪都遍歷整個訓練數據集。訓練的輪數越多,模型對數據的學習就越充分,但也增加了訓練時間。

選取策略

默認是100輪數。但一般對于新數據集,我們還不知道這個數據集學習的難易程度,可以加大輪數,例如300,來找到更佳性能。

4. patience

patience: 早停的等待輪數。在訓練過程中,如果在一定的輪數內沒有觀察到模型性能的明顯提升,就會停止訓練。這個參數確定了等待的輪數,如果超過該輪數仍沒有改進,則停止訓練。

早停

早停能減少過擬合。過擬合(overfitting)指的是只能擬合訓練數據, 但不能很好地擬合不包含在訓練數據中的其他數據的狀態(tài)。

5. batch ?????

batch: 每個批次中的圖像數量。在訓練過程中,數據被分成多個批次進行處理,每個批次包含一定數量的圖像。這個參數確定了每個批次中包含的圖像數量。特殊的是,如果設置為**-1**,則會自動調整批次大小,至你的顯卡能容納的最多圖像數量。

選取策略

一般認為batch越大越好。因為我們的batch越大我們選擇的這個batch中的圖片更有可能代表整個數據集的分布,從而幫助模型學習。但batch越大占用的顯卡顯存空間越多,所以還是有上限的。

6. imgsz ?????

imgsz: 輸入圖像的尺寸。這個參數確定了輸入圖像的大小??梢灾付ㄒ粋€整數值表示圖像的邊長,也可以指定寬度和高度的組合。例如640表示圖像的寬度和高度均為640像素。

YOLOv8訓練參數詳解,目標檢測,YOLO,深度學習,計算機視覺

選取策略

如果數據集中存在大量小對象,增大輸入圖像的尺寸imgsz可以使得這些小對象從高分辨率中受益,更好的被檢測出。從官網放出的性能表也可以看出。

7. save、save_period ???

  • save: 是否保存訓練的檢查點和預測結果。當訓練過程中保存檢查點時,模型的權重和訓練狀態(tài)會被保存下來,以便在需要時進行恢復或繼續(xù)訓練。預測結果也可以被保存下來以供后續(xù)分析和評估。
  • save_period: 保存檢查點的間隔。這個參數確定了保存檢查點的頻率,例如設置為10表示每隔10個訓練輪數保存一次檢查點。如果設置為負數(如-1),則禁用保存檢查點功能。

和resume配合

和resume配合可以在訓練不穩(wěn)定中斷后再進行接著訓練。例如大家白嫖Colab這個平臺訓練網絡時,一般是有時間限制,會出現時間到了我們還沒訓練完的情況。通過save然后再resume重新啟動可以進行接著訓練。

8. cache

cache: 數據加載時是否使用緩存。這個參數控制是否將數據加載到緩存中,以加快訓練過程中的數據讀取速度??梢赃x擇在 RAM 內存中緩存數據(True/ram)、在磁盤上緩存數據(disk)或不使用緩存(False)。

9. device ?????

device: 訓練運行的設備。該參數指定了模型訓練所使用的設備,例如使用 GPU 運行可以指定為 cuda device=0,或者使用多個 GPU 運行可以指定為 device=0,1,2,3,如果沒有可用的 GPU,可以指定為 device=cpu 使用 CPU 進行訓練。

注意別選擇錯了。

10. workers

workers: 數據加載時的工作線程數。在數據加載過程中,可以使用多個線程并行地加載數據,以提高數據讀取速度。這個參數確定了加載數據時使用的線程數,具體的最佳值取決于硬件和數據集的大小。

11. project

project: 項目名稱。這個參數用于標識當前訓練任務所屬的項目,方便管理和組織多個訓練任務。

12. name

name: 實驗名稱。該參數為當前訓練任務指定一個名稱,以便于標識和區(qū)分不同的實驗。

13. exist_ok

exist_ok: 是否覆蓋現有的實驗。如果設置為 True,當實驗名稱已經存在時,將會覆蓋現有實驗。如果設置為 False,當實驗名稱已經存在時,將會報錯。

14. pretrained

pretrained: 是否使用預訓練模型。如果設置為 True,將加載預訓練的模型權重進行訓練,這有助于加快訓練過程和提高模型性能。

15. optimizer

optimizer: 選擇要使用的優(yōu)化器。優(yōu)化器是深度學習中用于調整模型參數以最小化損失函數的算法??梢赃x擇不同的優(yōu)化器,如 ‘SGD’、‘Adam’、‘AdamW’、‘RMSProp’,根據任務需求選擇適合的優(yōu)化器。

16. verbose

verbose: 是否打印詳細輸出。如果設置為 True,訓練過程中會輸出更詳細的信息和日志。如果設置為 False,只會輸出關鍵信息和結果。

17. seed

seed: 隨機種子,用于實現可重復性。通過設置相同的隨機種子,可以使得每次運行時的隨機過程保持一致,以便于結果的復現。

18. deterministic

deterministic: 是否啟用確定性模式。啟用確定性模式后,保證在相同的輸入下,每次運行的結果是確定的,不會受到隨機性的影響。

19. single_cls

single_cls: 將多類數據訓練為單類。如果設置為 True,將會將多類數據視為單一類別進行訓練。

20. rect

rect: 使用矩形訓練,每個批次進行最小填充。設置為 True 后,訓練過程中使用矩形形狀的圖像批次,并進行最小化填充。

21. cos_lr

cos_lr: 使用余弦學習率調度器。如果設置為 True,將使用余弦函數調整學習率的變化情況。

22. close_mosaic

close_mosaic: 禁用mosaic增強的最后第幾個輪次??梢灾付ㄒ粋€整數值,表示在訓練的最后第幾個輪次中禁用mosaic增強。

mosaic是什么

Mosaic數據增強方法是YOLOV4論文中提出來的,主要思想是將四張圖片進行隨機裁剪,再拼接到一張圖上作為訓練數據。這樣做的好處是豐富了圖片的背景,并且四張圖片拼接在一起變相地提高了batch_size,在進行batch normalization的時候也會計算四張圖片,所以對本身batch_size不是很依賴,單塊GPU就可以訓練YOLOV4。

YOLOV4論文YOLOv4: Optimal Speed and Accuracy of Object Detection

23. resume

resume: 從最后一個檢查點恢復訓練。如果設置為 True,將從最后一個檢查點的狀態(tài)繼續(xù)訓練。

24. amp

amp: 是否使用自動混合精度(Automatic Mixed Precision,AMP)訓練。AMP 是一種深度學習訓練技術,利用半精度浮點數加速訓練過程,可以減少顯存占用。

25. lr0

lr0: 初始學習率。學習率是控制模型參數更新步幅的超參數,初始學習率確定了訓練開始時的參數更新速度。

26. lrf

lrf: 最終學習率。最終學習率是通過初始學習率乘以一個比例系數得到的,用于控制訓練過程中學習率的衰減。
注意lrf其實是系數,最終學習率相較于初始學習率的系數。

27. momentum

momentum: SGD 優(yōu)化器的動量/Adam 優(yōu)化器的 beta1。動量是一種加速梯度下降過程的技術,用于增加參數更新的穩(wěn)定性。

28. weight_decay

weight_decay: 優(yōu)化器的權重衰減(weight decay)。權重衰減是一種正則化技術,用于減小模型復雜度,防止過擬合。

29. warmup_epochs

warmup_epochs: 熱身階段的輪數。熱身階段是訓練過程中初始階段的一部分,在此階段內,學習率和動量等參數逐漸增加,以幫助模型更好地適應訓練數據。

30. warmup_momentum

warmup_momentum: 熱身階段的初始動量。在熱身階段開始時,動量的初始值。

31. warmup_bias_lr

warmup_bias_lr: 熱身階段的初始偏置學習率。在熱身階段開始時,偏置學習率的初始值。

32. box、cls

  • box: 邊界框損失權重。用于調整邊界框損失的權重,以控制其在總損失中的貢獻程度。
  • cls: 類別損失權重。用于調整類別損失的權重,以控制其在總損失中的貢獻程度(按像素進行縮放)。

調整策略

如果你想更強調一些分類也就是更精準的類別判斷你可以增加cls的值;如果你想更強調一些邊界框的定位你可以增加box的值。

這個兩個權重我認為也可以根據你目前訓練輸出的邊界框損失數值和分類損失數值來判斷。

33. dfl

dfl: DFL(Dynamic Freezing Loss)損失權重。用于調整 DFL 損失的權重,以控制其在總損失中的貢獻程度。

dfl定義

參考這里的定義雙焦點損失 (DFL)雙焦點損失(DFL)緩解了分類和語義分割中的類不平衡問題。此損失函數的靈感來自焦點損失 (FL)函數的特性,該函數加劇了數據點的損失,在預測輸出和實際輸出之間產生較大差異。因此,如果由于類不平衡或其他一些原因,數據點難以分類,FL 使神經網絡更多地關注該數據點以及類似的數據點。DFL采用了這一思路,并通過增強梯度條件提高了FL的性能。

通俗解釋

DFL損失函數在訓練神經網絡時考慮了類別不平衡的問題。當某些類別出現頻率過高,而另一些類別出現頻率較低時,就會出現類別不平衡的情況。例如,在街景圖像中,假設有100張照片,其中有200輛汽車和只有10輛自行車。我們希望同時檢測汽車和自行車。這就是類別不平衡的情況,在訓練神經網絡時,由于汽車數量較多,網絡會學習準確地定位汽車,而自行車數量較少,網絡可能無法正確地定位自行車。通過使用DFL損失函數,每當神經網絡試圖對自行車進行分類時,損失會增加。因此,現在神經網絡會更加重視出現頻率較低的類別。更多信息,可以參考有關Focal Loss和DFL的論文。

焦點損失文章Focal Loss for Dense Object Detection[https://arxiv.org/abs/1708.02002]

調整策略

類別不平衡時使用,也就是當某些類別出現頻率過高,而另一些類別出現頻率較低時。

34. pose

pose: 姿態(tài)損失權重(僅姿態(tài))。用于調整姿態(tài)損失的權重,以控制其在總損失中的貢獻程度(僅應用于姿態(tài)相關任務)。

35. kobj

kobj: 關鍵點目標損失權重(僅姿態(tài))。用于調整關鍵點目標損失的權重,以控制其在總損失中的貢獻程度(僅應用于姿態(tài)相關任務)。

36. label_smoothing

label_smoothing: 標簽平滑(label smoothing)。標簽平滑是一種正則化技術,用于減少模型對訓練數據的過擬合程度。
標簽平滑
label smoothing就是把原來的one-hot表示的標簽,在每一維上都添加了一個隨機噪音。

37. nbs

nbs: 標準批次大?。╪ominal batch size)。指定訓練過程中每個批次的大小。

38. overlap_mask

overlap_mask: 訓練時是否要求蒙版重疊(僅用于分割訓練)。如果設置為 True,要求訓練過程中的蒙版(mask)重疊。

39. mask_ratio

mask_ratio: 蒙版下采樣比例(僅用于分割訓練)。用于控制蒙版下采樣的比例。

40. dropout

dropout: 是否使用丟棄正則化(dropout regularization)(僅用于分類訓練)。如果設置為非零值,則在訓練過程中使用丟棄正則化來減少模型的過擬合。

41. val

val: 是否在訓練過程中進行驗證/測試。如果設置為 True,將在訓練過程中進行驗證或測試,以評估模型的性能。文章來源地址http://www.zghlxwxcb.cn/news/detail-576491.html

到了這里,關于YOLOv8訓練參數詳解的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 基于YOLOv8深度學習的100種蝴蝶智能識別系統【python源碼+Pyqt5界面+數據集+訓練代碼】目標檢測、深度學習實戰(zhàn)

    基于YOLOv8深度學習的100種蝴蝶智能識別系統【python源碼+Pyqt5界面+數據集+訓練代碼】目標檢測、深度學習實戰(zhàn)

    《博主簡介》 小伙伴們好,我是阿旭。專注于人工智能、AIGC、python、計算機視覺相關分享研究。 ? 更多學習資源,可關注公-仲-hao:【阿旭算法與機器學習】,共同學習交流~ ?? 感謝小伙伴們點贊、關注! 《------往期經典推薦------》 一、AI應用軟件開發(fā)實戰(zhàn)專欄【鏈接】

    2024年01月25日
    瀏覽(148)
  • 基于YOLOv8深度學習的102種花卉智能識別系統【python源碼+Pyqt5界面+數據集+訓練代碼】目標檢測、深度學習實戰(zhàn)

    基于YOLOv8深度學習的102種花卉智能識別系統【python源碼+Pyqt5界面+數據集+訓練代碼】目標檢測、深度學習實戰(zhàn)

    《博主簡介》 小伙伴們好,我是阿旭。專注于人工智能、AIGC、python、計算機視覺相關分享研究。 ? 更多學習資源,可關注公-仲-hao:【阿旭算法與機器學習】,共同學習交流~ ?? 感謝小伙伴們點贊、關注! 《------往期經典推薦------》 一、AI應用軟件開發(fā)實戰(zhàn)專欄【鏈接】

    2024年01月21日
    瀏覽(173)
  • 目標檢測YOLO實戰(zhàn)應用案例100講-基于改進的 YOLOv8 小目標檢測

    目錄 前言 研究現狀 傳統目標檢測算法 基于卷積神經網絡的目標檢測算法

    2024年02月07日
    瀏覽(22)
  • 從0開始yolov8模型目標檢測訓練

    首先有大環(huán)境,即已經準備好了python、nvidia驅動、cuda、cudnn等。 2.1 創(chuàng)建虛擬環(huán)境 2.2 激活虛擬環(huán)境 注意:激活虛擬環(huán)境的時候,需要清楚自己創(chuàng)建的虛擬環(huán)境(yolov8)是在root權限下,還是在user權限下,否則,當使用source activate yolov8激活環(huán)境的時候,可能一直會提示Could n

    2024年02月12日
    瀏覽(18)
  • 目標檢測再升級!YOLOv8模型訓練和部署

    目標檢測再升級!YOLOv8模型訓練和部署

    YOLOv8 是 Ultralytics 開發(fā)的 YOLO(You Only Look Once)物體檢測和圖像分割模型的最新版本。YOLOv8是一種尖端的、最先進的SOTA模型,它建立在先前YOLO成功基礎上,并引入了新功能和改進,以進一步提升性能和靈活性。它可以在大型數據集上進行訓練,并且能夠在各種硬件平臺上運行

    2024年01月20日
    瀏覽(37)
  • 使用YOLOv8訓練自己的【目標檢測】數據集

    使用YOLOv8訓練自己的【目標檢測】數據集

    隨著深度學習技術在計算機視覺領域的廣泛應用,行人檢測和車輛檢測等任務已成為熱門研究領域。然而,實際應用中,可用的預訓練模型可能并不適用于所有應用場景。 例如,雖然預先訓練的模型可以檢測出行人,但它無法區(qū)分“好人”和“壞人”,因為它沒有接受相關的

    2024年04月10日
    瀏覽(32)
  • 【目標檢測算法實現之yolov8】yolov8訓練并測試VisDrone數據集

    【目標檢測算法實現之yolov8】yolov8訓練并測試VisDrone數據集

    在這之前,需要先準備主機的環(huán)境,環(huán)境如下: Ubuntu18.04 cuda11.3 pytorch:1.11.0 torchvision:0.12.0 在服務器上執(zhí)行以下命令, pytorch v1.11.0(torch1.11.0+cu1113 ,torchvision0.12.0+cu113) 先創(chuàng)建yolov8文件夾,存放等會要下載的yolov8代碼 mkdir yolov8 進入yolov8文件夾, cd yolov8 下載yolov8代碼 git cl

    2024年02月13日
    瀏覽(32)
  • YOLOv8目標檢測:自定義數據集訓練與評估

    摘要:在本教程中,我們將詳細介紹如何使用自定義數據集訓練YOLOv8模型,并用Python代碼評估模型性能。 正文: 一、準備自定義數據集 為了訓練YOLOv8模型,我們需要一個標注好的自定義數據集。數據集應包含圖像文件和對應的標注文件,標注文件中包含目標類別和邊界框信

    2024年02月06日
    瀏覽(28)
  • YOLOV8目標檢測——最全最完整模型訓練過程記錄

    YOLOV8目標檢測——最全最完整模型訓練過程記錄

    本文記錄一下yolov8訓練目標檢測模型的過程,以及其中的一些需要注意的地方。本人是yolov5直接使用的yolov8,因此本文也記錄了與yolov5的訓練過程不一樣的地方。 原創(chuàng)聲明:如有轉載請注明文章來源。碼字不易,如對卿有所幫助,歡迎評論、點贊、收藏。 這邊說一下,pip這

    2024年02月07日
    瀏覽(25)
  • 在自定義數據集上訓練 YOLOv8 進行目標檢測

    在自定義數據集上訓練 YOLOv8 進行目標檢測

    這是目標檢測中令人驚嘆的 AI 模型之一。在這種情況下,您無需克隆存儲庫、設置要求并配置模型,就像在 YOLOv5 及其之前的版本中所做的那樣。 在 YOLOv8 中,不需要執(zhí)行這些手動任務。您只需安裝 Ultralytics 即可,我將向您展示如何通過一個簡單的命令安裝它。 這是一個提

    2024年02月01日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包