Ultralytics YOLO27:

Ultralytics YOLO Hiperparametre Ayarlama Kılavuzu#

Ultralytics YOLO'da hiperparametre ayarlama; doğruluk, kesinlik ve geri çağırma gibi makine öğrenimi modeli performans metriklerini en üst düzeye çıkarmak için öğrenme oranı, kayıp ağırlıkları ve artırma gücü gibi ayarları optimize eden otomatik, yinelemeli bir aramadır. Bu değerleri elle test etmek yerine Ultralytics YOLO, hiperparametre uzayını; çok sayıda kısa eğitim çalışması boyunca aday yapılandırmaları mutasyona uğratan ve değerlendiren bir genetik algoritmayla araştırır.



Watch: How to Tune Hyperparameters for Better Model Performance 🚀

Hiperparametreler nedir?#

Hiperparametreler, algoritma için üst düzey, yapısal ayarlardır. Eğitim aşamasından önce belirlenir ve eğitim sırasında sabit kalırlar. Ultralytics YOLO'da yaygın olarak ayarlanan bazı hiperparametreler şunlardır:

  • Öğrenme Oranı lr0: kayıp fonksiyonunda bir minimuma doğru ilerlerken her yinelemedeki adım boyutunu belirler.
  • Yığın Boyutu batch: Bir ileri geçişte eş zamanlı işlenen görüntü sayısıdır.
  • Epoch Sayısı epochs: Bir epoch, tüm eğitim örnekleri üzerinde gerçekleştirilen bir tam ileri ve geri geçiştir.
  • Mimariye Özgü Ayrıntılar: Kanal sayıları, katman sayısı, aktivasyon fonksiyonu türleri vb. gibi. Bunlar eğitim bağımsız değişkenleri yerine model YAML yapılandırmasında bulunur.

Bu dördü arasında yalnızca öğrenme oranı varsayılan arama uzayındadır: batch, epochs ve mimari sabit kalır. Ayarlayıcı ayrıca aşağıda listelenen çizelgeyi, kayıp kazanımlarını ve artırmaları da mutasyona uğratır.

Hyperparameter optimization search space visualization

YOLO26'da kullanılan artırma hiperparametrelerinin tam listesi için lütfen yapılandırmalar sayfasına bak.

Genetik Evrim ve Mutasyon#

Ultralytics YOLO, hiperparametreleri optimize etmek için genetik algoritmaları kullanır. Genetik algoritmalar, doğal seçilim ve genetik mekanizmasından ilham alır.

  • Seçim: Her yinelemede, uygunluk değerine göre ağırlıklandırılmış şekilde, uygunluğu en yüksek en fazla dokuz yapılandırmadan biri seçilir. 30 sonuçtan sonra, tüm sonuçların en iyi %20'si (en fazla 30 sonuç) parametre kovaryansını da tahmin eder; bu etkinin gücü seçkin kanıtlar biriktikçe artar.
  • Mutasyon: Her yinelemede parametrelerin yaklaşık yarısı, arama aralıklarına göre normalize edilmiş Gauss adımları kullanılarak mutasyona uğratılır. Kovaryans etkin olduğunda, en fazla %40'lık güven ağırlıklı bir pay korelasyonlu adımlar kullanır; yansıtma, kırpılmış değerleri biriktirmeden bu adımları sınırlar içinde tutar. Denemeler iyileşme olmadan biriktikçe adım boyutları 25 deneme boyunca doğrusal olarak en fazla %20 daralır ve yeni bir en iyi sonuç bulunduğunda sıfırlanır. 1. yinelemenin ebeveyni yoktur ve temel olarak varsayılan eğitim hiperparametrelerini kullanır.

Hiperparametre Ayarlamaya Hazırlanma#

Ayarlama işlemine başlamadan önce şunları yapman önemlidir:

  1. Metrikleri Belirle: Yerleşik ayarlayıcı (use_ray=False), denemeleri görevin fitness puanına göre sıralarken use_ray=True, görev metriğini kullanır. AP50 veya F1-score gibi hangi ikincil metrikleri inceleyeceğine karar ver.
  2. Ayarlama Bütçesini Belirle: Ayırmaya istekli olduğun hesaplama kaynaklarının miktarını tanımla. Hiperparametre ayarlama, hesaplama açısından yoğun olabilir.

Ayarlama Döngüsü Nasıl Çalışır?#

Yerleşik ayarlayıcı her yinelemede aşağıdaki döngüyü yineler:

  1. Hiperparametreleri başlat — Ultralytics YOLO tarafından belirlenen varsayılan hiperparametrelerden veya alan bilgine ya da önceki deneylerine dayalı değerlerden makul bir temel alarak başla.
  2. Hiperparametreleri mutasyona uğratTuner sınıfı, _mutate yöntemiyle mevcut kümeden otomatik olarak yeni bir hiperparametre kümesi üretir.
  3. Modeli eğit — mutasyona uğratılmış hiperparametrelerle eğitim yap, ardından seçtiğin metriklerle eğitim performansını değerlendir.
  4. Modeli değerlendirdeğerlendirme işlemi, yinelemenin uygunluk puanını üretir. Bu puan, mevcut hiperparametrelerin iyileşme sağlayıp sağlamadığını belirlemek için önceki yinelemelerle karşılaştırılır.
  5. Sonuçları günlüğe kaydet — performans metriklerini ve bunlara karşılık gelen hiperparametreleri gelecekte başvurmak üzere kaydet. Ultralytics YOLO bu sonuçları otomatik olarak NDJSON biçiminde kaydeder.
  6. Yinele — belirlenen yineleme sayısına ulaşılana kadar devam et; her yineleme önceki çalışmalardan edinilen bilgilerin üzerine inşa edilir. Yerleşik ayarlayıcı tüm iterations çalıştırır; Ray Tune her fit epoch'undan sonra metrikleri raporlayarak ASHA'nın hoşgörü süresinden sonra zayıf denemeleri durdurmasına olanak tanır.

Yinelemeler ve Popülasyon Boyutu#

Yerleşik ayarlayıcıda (use_ray=False) iterations, sıralı denemelerin toplam sayısını kontrol eder ve varsayılan olarak 300'dür. Her deneme, tek bir hiperparametre yapılandırmasıyla bir model eğitir — örneğin iterations=40 ile epochs=50, ayrı bir 40 aday popülasyonuna sahip tek bir 50 epoch'luk çalışma değil, birbirinden bağımsız 40 adet 50 epoch'luk eğitim çalışması planlar.

Yerleşik genetik algoritmada açık bir popülasyon boyutu parametresi yoktur. Önceki denemeler mevcut olduğunda, uygunluğu en yüksek en fazla dokuz yapılandırmadan birini seçer ve her yinelemede tek bir adayı mutasyona uğratır.

Paralel denemeler veya daha gelişmiş arama stratejileri için use_ray=True değerini Ray Tune kullanacak şekilde ayarla. Ray Tune aynı 300 denemelik varsayılanı kullanır ve iterations değerini num_samples olarak alır. Ayrıntılar için Ray Tune entegrasyon kılavuzuna bak.

Varsayılan Arama Uzayı#

Aşağıdaki tablo, YOLO26'da hiperparametre ayarlama için varsayılan arama uzayı parametrelerini listeler. Her parametrenin, (min, max) demetiyle tanımlanan belirli bir değer aralığı vardır.

ParametreTürDeğer AralığıAçıklama
lr0float(1e-5, 1e-2)Eğitimin başlangıcındaki başlangıç öğrenme oranı. Daha düşük değerler daha kararlı ancak daha yavaş yakınsama sağlar
lrffloat(0.01, 1.0)lr0'ın kesri olarak nihai öğrenme oranı faktörü. Eğitim sırasında öğrenme oranının ne kadar azalacağını kontrol eder
momentumfloat(0.7, 0.98)SGD momentum faktörü. Daha yüksek değerler tutarlı gradyan yönünün korunmasına yardımcı olur ve yakınsamayı hızlandırabilir
weight_decayfloat(0.0, 0.001)Aşırı öğrenmeyi önleyen L2 düzenlileştirme faktörü. Daha büyük değerler daha güçlü düzenlileştirme uygular
warmup_epochsfloat(0.0, 5.0)Doğrusal öğrenme oranı ısınması için epoch sayısı. Erken eğitim kararsızlığını önlemeye yardımcı olur
warmup_momentumfloat(0.0, 0.95)Isınma aşamasındaki başlangıç momentumu. Nihai momentum değerine kademeli olarak yükselir
boxfloat(1.0, 20.0)Toplam kayıp fonksiyonundaki sınırlayıcı kutu kaybı ağırlığı. Kutu regresyonu ile sınıflandırma arasındaki dengeyi sağlar
clsfloat(0.1, 4.0)Toplam kayıp fonksiyonundaki sınıflandırma kaybı ağırlığı. Daha yüksek değerler doğru sınıf tahminini öne çıkarır
cls_pwfloat(0.0, 1.0)Sınıf dengesizliğini ele almak için sınıf ağırlıklandırma gücü. Daha yüksek değerler nadir sınıfların ağırlığını artırır
dflfloat(0.4, 12.0)Kutu mesafesi regresyon teriminin ağırlığı. DFL içermeyen YOLO26, bu kazanımı normalize edilmiş kutu mesafeleri üzerindeki L1 kaybına uygular; daha yüksek değerler hassas konumlandırmayı öne çıkarır
hsv_hfloat(0.0, 0.1)HSV renk uzayında rastgele ton artırma aralığı. Modelin renk çeşitlilikleri arasında genelleme yapmasına yardımcı olur
hsv_sfloat(0.0, 0.9)HSV uzayında rastgele doygunluk artırma aralığı. Farklı aydınlatma koşullarını simüle eder
hsv_vfloat(0.0, 0.9)Rastgele değer (parlaklık) artırma aralığı. Modelin farklı pozlama düzeylerini ele almasına yardımcı olur
degreesfloat(0.0, 45.0)Derece cinsinden maksimum döndürme artırması. Modelin nesne yönelimlerine karşı değişmez hale gelmesine yardımcı olur
translatefloat(0.0, 0.9)Görüntü boyutunun kesri olarak maksimum öteleme artırması. Nesne konumuna karşı dayanıklılığı artırır
scalefloat(0.0, 0.95)Rastgele ölçekleme artırma aralığı. Modelin farklı boyutlardaki nesneleri algılamasına yardımcı olur
shearfloat(0.0, 10.0)Derece cinsinden maksimum kayma artırması. Eğitim görüntülerine perspektif benzeri bozulmalar ekler
perspectivefloat(0.0, 0.001)Rastgele perspektif artırma aralığı. Farklı bakış açılarını simüle eder
flipudfloat(0.0, 1.0)Eğitim sırasında dikey görüntü çevirme olasılığı. Üstten çekilmiş/hava görüntüleri için kullanışlıdır
fliplrfloat(0.0, 1.0)Yatay görüntü çevirme olasılığı. Modelin nesne yönüne karşı değişmez hale gelmesine yardımcı olur
bgrfloat(0.0, 1.0)Renk kanallarını değiştiren BGR artırmasının kullanılma olasılığı. Renk değişmezliğine yardımcı olabilir
mosaicfloat(0.0, 1.0)4 görüntüyü birleştiren mozaik artırmasının kullanılma olasılığı. Özellikle küçük nesne algılama için kullanışlıdır
mixupfloat(0.0, 1.0)İki görüntüyü harmanlayan mixup artırmasının kullanılma olasılığı. Modelin dayanıklılığını artırabilir
cutmixfloat(0.0, 1.0)cutmix artırmasının kullanılma olasılığı. Yerel özellikleri korurken görüntü bölgelerini birleştirir
copy_pastefloat(0.0, 1.0)flip modunda kopyalanan uygun nesnelerin kesri; mixup modunda ise bunun uygulanma olasılığı
close_mosaicint(0.0, 10.0)Eğitimi tamamlanmadan önce kararlı hale getirmek için son N epoch'ta mozaiği devre dışı bırakır. Float olarak mutasyona uğratılır, ardından tam epoch sayısına yuvarlanır

Özel Arama Uzayı Örneği#

YOLO26n'yi COCO8 üzerinde 30 epoch boyunca AdamW optimizer ile eğitmek ve daha hızlı ayarlama için son epoch dışındaki çizim, kontrol noktası kaydetme ve doğrulama işlemlerini atlamak üzere bir arama uzayının nasıl tanımlanacağını ve model.tune() yönteminin hiperparametre ayarlamada Tuner sınıfını kullanmak için nasıl kullanılacağını burada bulabilirsin.

Uyarı

Bu örnek yalnızca gösterim amaçlıdır. Kısa veya küçük ölçekli ayarlama çalışmalarından elde edilen hiperparametreler gerçek dünya eğitimleri için nadiren optimaldir. Uygulamada güvenilir ve aktarılabilir sonuçlar elde etmek için ayarlama, karşılaştırılabilir veri kümeleri, epoch'lar ve artırmalar dahil olmak üzere tam eğitime benzer ayarlar altında gerçekleştirilmelidir. Hızlı ayarlama, parametreleri daha hızlı yakınsamaya veya genellenemeyen kısa vadeli doğrulama kazanımlarına doğru yanlı hale getirebilir.

Örnek
from ultralytics import YOLO

# Initialize the YOLO model
model = YOLO("yolo26n.pt")

# Define search space
search_space = {
    "lr0": (1e-5, 1e-2),
    "degrees": (0.0, 45.0),
}

# Tune hyperparameters on COCO8 for 30 epochs
model.tune(
    data="coco8.yaml",
    epochs=30,
    iterations=300,
    optimizer="AdamW",
    space=search_space,
    plots=False,
    save=False,
    val=False,
)

Kesintiye Uğramış Hiperparametre Ayarlama Oturumunu Sürdürme#

resume=True değerini ileterek kesintiye uğramış bir hiperparametre ayarlama oturumunu sürdürebilirsin. Sürdürmek için isteğe bağlı olarak runs/{task} altında kullanılan name dizinini iletebilirsin. name olmadan, en son çalıştırılan oturum yerine varsayılan ad olan ve tam olarak tune adını taşıyan dizini sürdürür; bu nedenle özel bir adla başlattığın çalışmalar için name değerini ilet. Ayrıca data, epochs, iterations ve space dahil olmak üzere önceki tüm eğitim bağımsız değişkenlerini sağlaman gerekir.

`resume=True` ile `model.tune()` kullanma
from ultralytics import YOLO

# Define a YOLO model
model = YOLO("yolo26n.pt")

# Define search space
search_space = {
    "lr0": (1e-5, 1e-2),
    "degrees": (0.0, 45.0),
}

# Resume previous run
results = model.tune(data="coco8.yaml", epochs=50, iterations=300, space=search_space, resume=True)

# Resume tuning run with name 'tune_exp'
results = model.tune(data="coco8.yaml", epochs=50, iterations=300, space=search_space, name="tune_exp", resume=True)

Sonuçlar#

Hiperparametre ayarlama işlemini başarıyla tamamladıktan sonra ayarlama sonuçlarını kapsayan çeşitli dosya ve dizinler elde edersin. Aşağıda her biri açıklanmıştır:

Dosya Yapısı#

Sonuçların dizin yapısı şöyle görünür. train/ ve train-2/ gibi eğitim dizinleri, ayrı ayarlama yinelemelerini, yani tek bir hiperparametre kümesiyle eğitilmiş birer modeli içerir. tune/ dizini, tüm ayrı model eğitimlerinin ayarlama sonuçlarını içerir:

runs/
└── detect/
    ├── train/
    ├── train-2/
    ├── ...
    └── tune/
        ├── best_hyperparameters.yaml
        ├── tune_fitness.png
        ├── tune_results.ndjson
        ├── tune_scatter_plots.png
        └── weights/
            ├── last.pt
            └── best.pt

Dosya Açıklamaları#

best_hyperparameters.yaml#

Bu YAML dosyası, ayarlama işlemi sırasında bulunan en iyi performans gösteren hiperparametreleri içerir. Gelecekteki eğitimleri bu optimize edilmiş ayarlarla başlatmak için bu dosyayı kullanabilirsin.

  • Biçim: YAML

  • Kullanım: Hiperparametre sonuçları

  • Örnek:

    # 558/900 iterations complete ✅ (45536.81s)
    # Results saved to /usr/src/ultralytics/runs/detect/tune
    # Best fitness=0.64297 observed at iteration 498
    # Best fitness metrics are {'metrics/precision(B)': 0.87247, 'metrics/recall(B)': 0.71387, 'metrics/mAP50(B)': 0.79106, 'metrics/mAP50-95(B)': 0.62651, 'val/box_loss': 2.79884, 'val/cls_loss': 2.72386, 'val/l1_loss': 0.68503, 'fitness': 0.64297}
    # Best fitness model is /usr/src/ultralytics/runs/detect/tune/weights
    # Best fitness hyperparameters are printed below.
    
    lr0: 0.00269
    lrf: 0.00288
    momentum: 0.73375
    weight_decay: 0.00015
    warmup_epochs: 1.22935
    warmup_momentum: 0.1525
    box: 18.27875
    cls: 1.32899
    dfl: 0.56016
    hsv_h: 0.01148
    hsv_s: 0.53554
    hsv_v: 0.13636
    degrees: 0.0
    translate: 0.12431
    scale: 0.07643
    shear: 0.0
    perspective: 0.0
    flipud: 0.0
    fliplr: 0.08631
    mosaic: 0.42551
    mixup: 0.0
    copy_paste: 0.0

tune_fitness.png#

Bu, uygunluğu yineleme sayısına karşı gösteren bir grafiktir. Genetik algoritmanın zaman içinde nasıl performans gösterdiğini görselleştirmene yardımcı olur.

  • Biçim: PNG
  • Kullanım: Performans görselleştirme

Hyperparameter Tuning Fitness vs Iteration

Grafik şunları içerir:

  • Her veri kümesi ve her yineleme için bir işaret, bu nedenle tek veri kümeli bir çalışmada yineleme başına bir nokta, çok veri kümeli bir çalışmada ise veri kümesi ve yineleme başına bir nokta gösterilir.
  • Gauss yumuşatması (sigma=3) kullanılarak yineleme başına üst düzey uygunluk değerlerinden hesaplanan noktalı bir "yumuşatılmış ortalama" çizgisi.

tune_results.ndjson#

Her ayarlama yinelemesinin ayrıntılı sonuçlarını içeren bir NDJSON dosyasıdır. Her satır, toplu uygunluk değerini, ayarlanan hiperparametreleri ve veri kümesi başına metrikleri içeren bir JSON nesnesidir. Tek veri kümeli ve çok veri kümeli ayarlama aynı dosya biçimini kullanır.

  • Biçim: NDJSON
  • Kullanım: Yineleme başına sonuç takibi.
  • Örnek:

Okunabilirlik için aşağıda güzel biçimlendirilmiş bir örnek verilmiştir; gerçek .ndjson dosyasında her nesne tek satırda saklanır.

{
    "iteration": 1,
    "fitness": 0.48628,
    "hyperparameters": {
        "lr0": 0.01,
        "lrf": 0.01,
        "momentum": 0.937,
        "weight_decay": 0.0005
    },
    "datasets": {
        "coco8": {
            "metrics/precision(B)": 0.65666,
            "metrics/recall(B)": 0.85,
            "metrics/mAP50(B)": 0.85086,
            "metrics/mAP50-95(B)": 0.64104,
            "val/box_loss": 1.57958,
            "val/cls_loss": 1.04986,
            "val/l1_loss": 1.32641,
            "fitness": 0.64104
        },
        "coco8-grayscale": {
            "metrics/precision(B)": 0.6582,
            "metrics/recall(B)": 0.51667,
            "metrics/mAP50(B)": 0.59106,
            "metrics/mAP50-95(B)": 0.33152,
            "val/box_loss": 1.95424,
            "val/cls_loss": 1.64059,
            "val/l1_loss": 1.70226,
            "fitness": 0.33152
        }
    },
    "save_dirs": {
        "coco8": "runs/detect/coco8",
        "coco8-grayscale": "runs/detect/coco8-grayscale"
    }
}

Üst düzey fitness, veri kümesi başına fitness değerlerinin aritmetik ortalamasıdır. Tek veri kümeli ayarlamada datasets sözlüğü, fitness değerinin üst düzey fitness değerine eşit olduğu tek bir girişe sahiptir. Tamamlanan her yineleme için bir JSON nesnesi kaydedilir. Gerçek save_dirs yolları mutlaktır; okunabilirlik için yukarıda kısaltılmıştır.

tune_scatter_plots.png#

Bu dosya, tune_results.ndjson üzerinden oluşturulan saçılım grafiklerini içerir ve farklı hiperparametreler ile performans metrikleri arasındaki ilişkileri görselleştirmene yardımcı olur. Mutasyon, her hiperparametrenin yapılandırılmış aralığını kullanır; bu nedenle değerler degrees ve shear gibi sıfır değerli varsayılanlardan evrilebilir.

  • Biçim: PNG
  • Kullanım: Keşifsel veri analizi

Hyperparameter tuning results scatter plot analysis

weights/#

Bu dizin, ayarlama çalışmasının en iyi uygunluk gösteren yinelemesinden kaydedilen PyTorch modellerini içerir. Her iki dosya da aynı yinelemeden gelir:

  • last.pt: last.pt, eğitimin son epoch'undaki ağırlıklardır.
  • best.pt: best.pt, en iyi uygunluk puanına ulaşan yinelemenin ağırlıklarıdır.

Bu sonuçları kullanarak gelecekteki model eğitimleri ve analizleri için daha bilinçli kararlar verebilirsin.

Sonuç#

Ultralytics YOLO'da hiperparametre ayarlamayı başlatmak kolaydır ve perde arkasında, genetik algoritmada uygunluk ağırlıklı seçim ile aralıkla normalize edilmiş mutasyon kullanması sayesinde güçlüdür. Bu kılavuzda açıklanan döngüyü izleyerek modelini daha iyi performans için sistematik olarak ayarlayabilir, ardından ortaya çıkan best_hyperparameters.yaml değerini gelecekteki eğitim çalışmalarını başlatmak için yeniden kullanabilirsin. Ayarlamayı paralel denemeler ve daha gelişmiş arama algoritmalarıyla ölçeklendirmek için Ray Tune entegrasyon kılavuzuna devam et veya Ultralytics Platform üzerinde bulut eğitimi aracılığıyla yapılandırılabilir hiperparametreler ve gerçek zamanlı metrik takibiyle yönetilen işler çalıştır.

Katman başına öğrenme oranları veya özel bir uygunluk metriği gibi hiçbir bağımsız değişkenin sunmadığı ayarlar için bunun yerine eğitimci sınıfını alt sınıflandır. Daha derin bilgiler için Tuner sınıfının kaynak kodunu incele. Soruların veya özellik isteklerin varsa GitHub ya da Discord üzerinden bize ulaş.

SSS#

  • lr0 parametresiyle bir başlangıç değeri belirle — yaygın değerler 0.001 ile 0.01 arasında değişir — ve en uygun değeri bulmak için ayarlamanın bu değeri mutasyona uğratmasına izin ver. Bunu model.tune() yöntemiyle otomatikleştirebilirsin. Örneğin:

    Örnek
    from ultralytics import YOLO
    
    # Initialize the YOLO model
    model = YOLO("yolo26n.pt")
    
    # Tune hyperparameters on COCO8 for 30 epochs
    model.tune(data="coco8.yaml", epochs=30, iterations=300, optimizer="AdamW", plots=False, save=False, val=False)

    Daha fazla ayrıntı için Ultralytics YOLO yapılandırma sayfasına göz at.

  • Ultralytics YOLO26'daki genetik algoritmalar, hiperparametre uzayını keşfetmek için sağlam bir yöntem sunarak yüksek düzeyde optimize edilmiş model performansı sağlar. Temel faydaları şunlardır:

    • Verimli Arama: Uygunluk ağırlıklı seçim, güçlü yapılandırmaları korurken aralık normalleştirmeli mutasyon yeni adayları keşfeder.
    • Yerel Minimumlardan Kaçınma: Rastgelelik ekleyerek yerel minimumlardan kaçınmaya yardımcı olur ve daha iyi bir global optimizasyon sağlarlar.
    • Performans Metrikleri: Göreve özgü bir uygunluk skoruna göre uyum sağlarlar (algılama için mAP50-95).

    Genetik algoritmaların hiperparametreleri nasıl optimize edebileceğini görmek için hiperparametre evrimi kılavuzuna göz at.

  • Ultralytics YOLO ile hiperparametre ayarı için gereken süre; veri kümesinin boyutu, model mimarisinin karmaşıklığı, yineleme sayısı ve kullanılabilir hesaplama kaynakları gibi çeşitli faktörlere büyük ölçüde bağlıdır. Örneğin, YOLO26n'yi COCO8 gibi bir veri kümesinde 30 epoch boyunca ayarlamak, donanıma bağlı olarak birkaç saatten birkaç güne kadar sürebilir.

    Ayarlama süresini etkili bir şekilde yönetmek için Hiperparametre Ayarına Hazırlanma bölümünde ele alındığı gibi önceden net bir ayarlama bütçesi belirle. Bu, kaynak tahsisi ile optimizasyon hedefleri arasında denge kurmana yardımcı olur.

  • YOLO'da hiperparametre ayarı sırasında model performansını değerlendirirken birkaç temel metrik kullanabilirsin:

    • AP50: 0.50 IoU eşiğindeki ortalama kesinlik.
    • F1-Skoru: Kesinlik ve geri çağırmanın harmonik ortalaması.
    • Kesinlik ve Geri Çağırma: Modelin gerçek pozitifleri yanlış pozitiflere ve yanlış negatiflere kıyasla belirlemedeki doğruluğunu gösteren bağımsız metrikler.

    Bu metrikler, modelinin performansının farklı yönlerini anlamana yardımcı olur. Kapsamlı bir genel bakış için Ultralytics YOLO performans metrikleri kılavuzuna başvur.

  • Evet, Ultralytics YOLO26 gelişmiş hiperparametre optimizasyonu için Ray Tune ile entegre olur. Ray Tune, ayarlama sürecini hızlandırmak için paralel yürütme özelliklerinin yanı sıra Bayesçi Optimizasyon ve Hyperband gibi gelişmiş arama algoritmaları sunar.

    Ray Tune'u YOLO26 ile kullanmak için model.tune() yöntem çağrında use_ray=True parametresini ayarlaman yeterlidir. Daha fazla ayrıntı ve örnek için Ray Tune entegrasyonu kılavuzuna göz at.

Yorumlar