İçeriğe geç

ile Model Eğitimi Ultralytics YOLO

Ultralytics YOLO ekosistem ve entegrasyonlar

Giriş

Bir derin öğrenme modelinin eğitilmesi, doğru tahminler yapabilmesi için modelin verilerle beslenmesini ve parametrelerinin ayarlanmasını içerir. Ultralytics YOLOv8 adresindeki Train modu, modern donanım özelliklerinden tam olarak yararlanarak nesne algılama modellerinin etkili ve verimli bir şekilde eğitilmesi için tasarlanmıştır. Bu kılavuz, YOLOv8'un güçlü özellik setini kullanarak kendi modellerinizi eğitmeye başlamak için ihtiyacınız olan tüm ayrıntıları kapsamayı amaçlamaktadır.



İzle: Google Colab'da Özel Veri Setinizde YOLOv8 Modelini Eğitme.

Eğitim için Neden Ultralytics YOLO adresini seçmelisiniz?

İşte YOLOv8'un Tren modunu tercih etmek için bazı zorlayıcı nedenler:

  • Verimlilik: İster tek GPU'lu bir kurulumda olun ister birden fazla GPU arasında ölçeklendirme yapın, donanımınızdan en iyi şekilde yararlanın.
  • Çok yönlülük: COCO, VOC ve ImageNet gibi hazır veri kümelerinin yanı sıra özel veri kümeleri üzerinde de eğitim alın.
  • Kullanıcı Dostu: Basit bir eğitim deneyimi için basit ama güçlü CLI ve Python arayüzleri.
  • Hiperparametre Esnekliği: Model performansına ince ayar yapmak için çok çeşitli özelleştirilebilir hiperparametreler.

Tren Modunun Temel Özellikleri

Aşağıda YOLOv8'un Tren modunun bazı önemli özellikleri yer almaktadır:

  • Otomatik Veri Seti İndirme: COCO, VOC ve ImageNet gibi standart veri kümeleri ilk kullanımda otomatik olarak indirilir.
  • Çoklu GPU Desteği: Süreci hızlandırmak için eğitim çalışmalarınızı birden fazla GPU'da sorunsuz bir şekilde ölçeklendirin.
  • Hiperparametre Yapılandırması: Hiperparametreleri YAML yapılandırma dosyaları veya CLI argümanları aracılığıyla değiştirme seçeneği.
  • Görselleştirme ve İzleme: Eğitim metriklerinin gerçek zamanlı takibi ve daha iyi içgörüler için öğrenme sürecinin görselleştirilmesi.

İpucu

  • YOLOv8 COCO, VOC, ImageNet ve diğerleri gibi veri kümeleri ilk kullanımda otomatik olarak indirilir, yani yolo train data=coco.yaml

Kullanım Örnekleri

YOLOv8n adresini 640 görüntü boyutunda 100 epok için COCO8 veri kümesi üzerinde eğitin. Eğitim cihazı şu şekilde belirtilebilir device argüman. Herhangi bir argüman geçilmezse GPU device=0 mevcutsa kullanılacaktır, aksi takdirde device='cpu' kullanılacaktır. Eğitim argümanlarının tam listesi için aşağıdaki Argümanlar bölümüne bakın.

Tek GPU ve CPU Eğitim Örneği

Cihaz otomatik olarak belirlenir. Bir GPU mevcutsa o zaman kullanılacaktır, aksi takdirde eğitim CPU'da başlayacaktır.

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n.yaml')  # build a new model from YAML
model = YOLO('yolov8n.pt')  # load a pretrained model (recommended for training)
model = YOLO('yolov8n.yaml').load('yolov8n.pt')  # build from YAML and transfer weights

# Train the model
results = model.train(data='coco8.yaml', epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolov8n.yaml epochs=100 imgsz=640

# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolov8n.pt epochs=100 imgsz=640

# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolov8n.yaml pretrained=yolov8n.pt epochs=100 imgsz=640

Çoklu GPU Eğitimi

Multi-GPU eğitimi, eğitim yükünü birden fazla GPU'ya dağıtarak mevcut donanım kaynaklarının daha verimli kullanılmasını sağlar. Bu özellik hem Python API hem de komut satırı arayüzü aracılığıyla kullanılabilir. Çoklu GPU eğitimini etkinleştirmek için kullanmak istediğiniz GPU cihaz kimliklerini belirtin.

Çoklu GPU Eğitim Örneği

2 GPU, CUDA aygıtları 0 ve 1 ile eğitim yapmak için aşağıdaki komutları kullanın. Gerektiğinde ek GPU'lara genişletin.

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n.pt')  # load a pretrained model (recommended for training)

# Train the model with 2 GPUs
results = model.train(data='coco8.yaml', epochs=100, imgsz=640, device=[0, 1])
# Start training from a pretrained *.pt model using GPUs 0 and 1
yolo detect train data=coco8.yaml model=yolov8n.pt epochs=100 imgsz=640 device=0,1

Apple M1 ve M2 MPS Eğitimi

Ultralytics YOLO modellerine entegre edilen Apple M1 ve M2 çip desteği sayesinde, modellerinizi güçlü Metal Performans Gölgelendiricileri (MPS) çerçevesini kullanan cihazlarda eğitmek artık mümkün. MPS, Apple'ın özel silikonunda hesaplama ve görüntü işleme görevlerini yürütmek için yüksek performanslı bir yol sunuyor.

Apple M1 ve M2 çiplerinde eğitimi etkinleştirmek için, eğitim sürecini başlatırken cihazınız olarak 'mps' belirtmelisiniz. Aşağıda bunu Python adresinde ve komut satırı üzerinden nasıl yapabileceğinize dair bir örnek verilmiştir:

MPS Eğitim Örneği

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n.pt')  # load a pretrained model (recommended for training)

# Train the model with 2 GPUs
results = model.train(data='coco8.yaml', epochs=100, imgsz=640, device='mps')
# Start training from a pretrained *.pt model using GPUs 0 and 1
yolo detect train data=coco8.yaml model=yolov8n.pt epochs=100 imgsz=640 device=mps

Bu, M1/M2 çiplerinin hesaplama gücünden yararlanırken, eğitim görevlerinin daha verimli bir şekilde işlenmesini sağlar. Daha ayrıntılı rehberlik ve gelişmiş yapılandırma seçenekleri için lütfen PyTorch MPS belgelerine bakın.

Ara Verilen Eğitimlere Devam Edilmesi

Önceden kaydedilmiş bir durumdan eğitime devam etmek, derin öğrenme modelleriyle çalışırken çok önemli bir özelliktir. Bu, eğitim süreci beklenmedik bir şekilde kesintiye uğradığında veya bir modeli yeni verilerle veya daha fazla epokla eğitmeye devam etmek istediğinizde olduğu gibi çeşitli senaryolarda kullanışlı olabilir.

Eğitime devam edildiğinde, Ultralytics YOLO son kaydedilen modeldeki ağırlıkları yükler ve ayrıca optimize edici durumunu, öğrenme hızı zamanlayıcısını ve epok sayısını geri yükler. Bu, eğitim sürecine kaldığı yerden sorunsuz bir şekilde devam etmenizi sağlar.

Eğitiminize Ultralytics YOLO adresinden kolayca devam edebilirsiniz. resume argümanına True çağırırken train metodunun yolunu belirtmek ve .pt Kısmen eğitilmiş model ağırlıklarını içeren dosya.

Aşağıda, Python adresini kullanarak ve komut satırı aracılığıyla kesintiye uğramış bir eğitimin nasıl devam ettirileceğine dair bir örnek yer almaktadır:

Özgeçmiş Eğitim Örneği

from ultralytics import YOLO

# Load a model
model = YOLO('path/to/last.pt')  # load a partially trained model

# Resume training
results = model.train(resume=True)
# Resume an interrupted training
yolo train resume model=path/to/last.pt

Ayarlayarak resume=True, the train fonksiyonu 'path/to/last.pt' dosyasında saklanan durumu kullanarak eğitime kaldığı yerden devam edecektir. Eğer resume argümanı atlanır veya False, the train işlevi yeni bir eğitim oturumuna başlayacaktır.

Kontrol noktalarının varsayılan olarak her dönemin sonunda ya da sabit aralıklarla kaydedildiğini unutmayın. save_period argümanına göre, bir eğitim çalışmasına devam etmek için en az 1 epok tamamlamanız gerekir.

Tren Ayarları

YOLO modelleri için eğitim ayarları, eğitim süreci sırasında kullanılan çeşitli hiper parametreleri ve yapılandırmaları kapsar. Bu ayarlar modelin performansını, hızını ve doğruluğunu etkiler. Temel eğitim ayarları arasında yığın boyutu, öğrenme hızı, momentum ve ağırlık azalması yer alır. Ayrıca optimize edici, kayıp fonksiyonu ve eğitim veri kümesi bileşimi seçimi de eğitim sürecini etkileyebilir. Bu ayarların dikkatli bir şekilde ayarlanması ve denenmesi performansı optimize etmek için çok önemlidir.

Tartışma Varsayılan Açıklama
model None Eğitim için model dosyasını belirtir. Bir model dosyasına giden bir yol kabul eder. .pt ön eğitimli model veya bir .yaml yapılandırma dosyası. Model yapısını tanımlamak veya ağırlıkları başlatmak için gereklidir.
data None Veri kümesi yapılandırma dosyasının yolu (örn, coco8.yaml). Bu dosya, eğitim ve doğrulama verilerine giden yollar, sınıf adları ve sınıf sayısı dahil olmak üzere veri kümesine özgü parametreleri içerir.
epochs 100 Toplam eğitim epok sayısı. Her epok, tüm veri kümesi üzerinde tam bir geçişi temsil eder. Bu değerin ayarlanması eğitim süresini ve model performansını etkileyebilir.
time None Saat cinsinden maksimum eğitim süresi. Eğer ayarlanırsa, bu epochs argümanı, eğitimin belirtilen süreden sonra otomatik olarak durmasına izin verir. Zaman kısıtlı eğitim senaryoları için kullanışlıdır.
patience 100 Eğitimi erken durdurmadan önce doğrulama metriklerinde iyileşme olmadan beklenecek epok sayısı. Performans platoları olduğunda eğitimi durdurarak aşırı uyumu önlemeye yardımcı olur.
batch 16 Eğitim için toplu iş boyutu, modelin dahili parametreleri güncellenmeden önce kaç görüntünün işleneceğini gösterir. AutoBatch (batch=-1) GPU bellek kullanılabilirliğine bağlı olarak yığın boyutunu dinamik olarak ayarlar.
imgsz 640 Eğitim için hedef görüntü boyutu. Tüm görüntüler modele girilmeden önce bu boyuta yeniden boyutlandırılır. Model doğruluğunu ve hesaplama karmaşıklığını etkiler.
save True Eğitim kontrol noktalarının ve son model ağırlıklarının kaydedilmesini sağlar. Eğitime veya model dağıtımına devam etmek için kullanışlıdır.
save_period -1 Model kontrol noktalarını kaydetme sıklığı, epok cinsinden belirtilir. -1 değeri bu özelliği devre dışı bırakır. Uzun eğitim oturumları sırasında ara modelleri kaydetmek için kullanışlıdır.
cache False Veri kümesi görüntülerinin bellekte önbelleğe alınmasını etkinleştirir (True/ram), disk üzerinde (disk) veya devre dışı bırakır (False). Artan bellek kullanımı pahasına disk I/O'sunu azaltarak eğitim hızını artırır.
device None Eğitim için hesaplama cihaz(lar)ını belirtir: tek bir GPU (device=0), çoklu GPU'lar (device=0,1), CPU (device=cpu) veya Apple silikon için MPS (device=mps).
workers 8 Veri yükleme için işçi iş parçacığı sayısı (her RANK Çoklu GPU eğitimi ise). Veri ön işleme ve modele besleme hızını etkiler, özellikle çoklu GPU kurulumlarında kullanışlıdır.
project None Eğitim çıktılarının kaydedildiği proje dizininin adı. Farklı deneylerin düzenli bir şekilde saklanmasını sağlar.
name None Eğitim çalışmasının adı. Proje klasörü içinde eğitim günlüklerinin ve çıktılarının saklandığı bir alt dizin oluşturmak için kullanılır.
exist_ok False True ise, mevcut bir proje/isim dizininin üzerine yazılmasına izin verir. Önceki çıktıları manuel olarak temizlemeye gerek kalmadan yinelemeli denemeler için kullanışlıdır.
pretrained True Eğitime önceden eğitilmiş bir modelden başlanıp başlanmayacağını belirler. Boolean bir değer veya ağırlıkların yükleneceği belirli bir modele giden bir dize yolu olabilir. Eğitim verimliliğini ve model performansını artırır.
optimizer 'auto' Eğitim için optimize edici seçimi. Seçenekler şunları içerir SGD, Adam, AdamW, NAdam, RAdam, RMSProp vb. veya auto model yapılandırmasına dayalı otomatik seçim için. Yakınsama hızını ve kararlılığı etkiler.
verbose False Eğitim sırasında ayrıntılı çıktıları etkinleştirerek ayrıntılı günlükler ve ilerleme güncellemeleri sağlar. Hata ayıklama ve eğitim sürecini yakından izlemek için kullanışlıdır.
seed 0 Eğitim için rastgele tohumu ayarlar ve aynı konfigürasyonlara sahip çalıştırmalar arasında sonuçların tekrarlanabilirliğini sağlar.
deterministic True Deterministik algoritma kullanımını zorlayarak tekrarlanabilirliği sağlar, ancak deterministik olmayan algoritmalar üzerindeki kısıtlama nedeniyle performansı ve hızı etkileyebilir.
single_cls False Eğitim sırasında çok sınıflı veri kümelerindeki tüm sınıfları tek bir sınıf olarak ele alır. İkili sınıflandırma görevleri için veya sınıflandırmadan ziyade nesne varlığına odaklanırken kullanışlıdır.
rect False Minimum dolgu için yığın kompozisyonunu optimize ederek dikdörtgen eğitim sağlar. Verimliliği ve hızı artırabilir ancak model doğruluğunu etkileyebilir.
cos_lr False Epoklar boyunca bir kosinüs eğrisini takip ederek öğrenme oranını ayarlayan bir kosinüs öğrenme oranı zamanlayıcısı kullanır. Daha iyi yakınsama için öğrenme oranını yönetmeye yardımcı olur.
close_mosaic 10 Tamamlanmadan önce eğitimi stabilize etmek için son N epokta mozaik veri artırımını devre dışı bırakır. 0 olarak ayarlanması bu özelliği devre dışı bırakır.
resume False Son kaydedilen kontrol noktasından eğitime devam eder. Model ağırlıklarını, optimizer durumunu ve epok sayısını otomatik olarak yükleyerek eğitime sorunsuz bir şekilde devam eder.
amp True Otomatik Karma Hassasiyet (AMP) eğitimini etkinleştirerek bellek kullanımını azaltır ve muhtemelen doğruluk üzerinde minimum etkiyle eğitimi hızlandırır.
fraction 1.0 Veri kümesinin eğitim için kullanılacak kısmını belirtir. Tam veri kümesinin bir alt kümesi üzerinde eğitime izin verir, deneyler için veya kaynaklar sınırlı olduğunda kullanışlıdır.
profile False Eğitim sırasında ONNX ve TensorRT hızlarının profilinin çıkarılmasını sağlar, model dağıtımını optimize etmek için kullanışlıdır.
freeze None Modelin ilk N katmanını veya indekse göre belirtilen katmanları dondurarak eğitilebilir parametrelerin sayısını azaltır. İnce ayar veya aktarımlı öğrenme için kullanışlıdır.
lr0 0.01 İlk öğrenme oranı (örn. SGD=1E-2, Adam=1E-3) . Bu değerin ayarlanması optimizasyon süreci için çok önemlidir ve model ağırlıklarının ne kadar hızlı güncelleneceğini etkiler.
lrf 0.01 Başlangıç oranının bir kesri olarak nihai öğrenme oranı = (lr0 * lrf), zaman içinde öğrenme oranını ayarlamak için zamanlayıcılarla birlikte kullanılır.
momentum 0.937 SGD için momentum faktörü veya Adam optimize edicileri için beta1, geçmiş gradyanların mevcut güncellemeye dahil edilmesini etkiler.
weight_decay 0.0005 L2 düzenleme terimi, aşırı uyumu önlemek için büyük ağırlıkları cezalandırır.
warmup_epochs 3.0 Öğrenme hızı ısınması için epok sayısı, eğitimi erkenden stabilize etmek için öğrenme hızını düşük bir değerden başlangıç öğrenme hızına kademeli olarak artırır.
warmup_momentum 0.8 Isınma aşaması için başlangıç momentumu, ısınma süresi boyunca kademeli olarak ayarlanan momentuma ayarlanır.
warmup_bias_lr 0.1 Isınma aşamasında önyargı parametreleri için öğrenme oranı, ilk epoklarda model eğitiminin dengelenmesine yardımcı olur.
box 7.5 Kayıp fonksiyonundaki kutu kaybı bileşeninin ağırlığı, sınırlayıcı kutu koordinatlarının doğru tahmin edilmesine ne kadar önem verildiğini etkiler.
cls 0.5 Sınıflandırma kaybının toplam kayıp fonksiyonundaki ağırlığı, doğru sınıf tahmininin diğer bileşenlere göre önemini etkiler.
dfl 1.5 Belirli YOLO sürümlerinde ince taneli sınıflandırma için kullanılan dağıtım odak kaybının ağırlığı.
pose 12.0 Poz tahmini için eğitilen modellerde poz kaybının ağırlığı, poz anahtar noktalarını doğru bir şekilde tahmin etme vurgusunu etkiler.
kobj 2.0 Poz tahmin modellerinde anahtar nokta nesnellik kaybının ağırlığı, algılama güvenini poz doğruluğu ile dengeler.
label_smoothing 0.0 Etiket yumuşatma uygular, sert etiketleri hedef etiketin bir karışımına ve etiketler üzerinde tek tip bir dağılıma yumuşatır, genelleştirmeyi iyileştirebilir.
nbs 64 Kaybın normalleştirilmesi için nominal parti büyüklüğü.
overlap_mask True Segmentasyon maskelerinin eğitim sırasında üst üste gelip gelmeyeceğini belirler, örnek segmentasyon görevlerinde uygulanabilir.
mask_ratio 4 Segmentasyon maskeleri için aşağı örnekleme oranı, eğitim sırasında kullanılan maskelerin çözünürlüğünü etkiler.
dropout 0.0 Sınıflandırma görevlerinde düzenli hale getirme için bırakma oranı, eğitim sırasında birimleri rastgele atlayarak aşırı uyumu önler.
val True Eğitim sırasında doğrulamayı etkinleştirerek model performansının ayrı bir veri kümesi üzerinde periyodik olarak değerlendirilmesine olanak tanır.
plots False Eğitim ve doğrulama ölçümlerinin yanı sıra tahmin örneklerinin grafiklerini oluşturur ve kaydeder, model performansı ve öğrenme ilerlemesi hakkında görsel bilgiler sağlar.

Büyütme Ayarları ve Hiperparametreler

Güçlendirme teknikleri, eğitim verilerine değişkenlik katarak YOLO modellerinin sağlamlığını ve performansını artırmak için gereklidir ve modelin görülmeyen verilere daha iyi genelleme yapmasına yardımcı olur. Aşağıdaki tabloda her bir güçlendirme argümanının amacı ve etkisi özetlenmektedir:

Tartışma Tip Varsayılan Menzil Açıklama
hsv_h float 0.015 0.0 - 1.0 Görüntünün tonunu renk tekerleğinin bir kısmına göre ayarlayarak renk değişkenliği sağlar. Modelin farklı aydınlatma koşullarında genelleştirilmesine yardımcı olur.
hsv_s float 0.7 0.0 - 1.0 Görüntünün doygunluğunu bir miktar değiştirerek renklerin yoğunluğunu etkiler. Farklı çevre koşullarını simüle etmek için kullanışlıdır.
hsv_v float 0.4 0.0 - 1.0 Görüntünün değerini (parlaklığını) belli bir oranda değiştirerek modelin çeşitli aydınlatma koşullarında iyi performans göstermesine yardımcı olur.
degrees float 0.0 -180 - +180 Görüntüyü belirtilen derece aralığında rastgele döndürerek modelin çeşitli yönlerdeki nesneleri tanıma yeteneğini geliştirir.
translate float 0.1 0.0 - 1.0 Görüntüyü yatay ve dikey olarak görüntü boyutunun bir kısmı kadar çevirerek kısmen görülebilen nesneleri tespit etmeyi öğrenmeye yardımcı olur.
scale float 0.5 >=0.0 Görüntüyü bir kazanç faktörü ile ölçeklendirerek kameradan farklı mesafelerdeki nesneleri simüle eder.
shear float 0.0 -180 - +180 Görüntüyü belirli bir dereceye kadar keserek, farklı açılardan görüntülenen nesnelerin etkisini taklit eder.
perspective float 0.0 0.0 - 0.001 Görüntüye rastgele bir perspektif dönüşümü uygulayarak modelin 3D uzaydaki nesneleri anlama yeteneğini geliştirir.
flipud float 0.0 0.0 - 1.0 Görüntüyü belirtilen olasılıkla ters çevirerek nesnenin özelliklerini etkilemeden veri değişkenliğini artırır.
fliplr float 0.5 0.0 - 1.0 Görüntüyü belirtilen olasılıkla soldan sağa çevirir, simetrik nesneleri öğrenmek ve veri kümesi çeşitliliğini artırmak için kullanışlıdır.
bgr float 0.0 0.0 - 1.0 Görüntü kanallarını belirtilen olasılıkla RGB'den BGR'ye çevirir, yanlış kanal sıralamasına karşı sağlamlığı artırmak için kullanışlıdır.
mosaic float 1.0 0.0 - 1.0 Dört eğitim görüntüsünü tek bir görüntüde birleştirerek farklı sahne kompozisyonlarını ve nesne etkileşimlerini simüle eder. Karmaşık sahneleri anlamak için son derece etkilidir.
mixup float 0.0 0.0 - 1.0 İki görüntüyü ve etiketlerini harmanlayarak bileşik bir görüntü oluşturur. Etiket gürültüsü ve görsel değişkenlik ekleyerek modelin genelleme yeteneğini geliştirir.
copy_paste float 0.0 0.0 - 1.0 Nesneleri bir görüntüden kopyalar ve başka bir görüntüye yapıştırır, nesne örneklerini artırmak ve nesne tıkanıklığını öğrenmek için kullanışlıdır.
auto_augment str randaugment - Önceden tanımlanmış bir büyütme politikasını otomatik olarak uygular (randaugment, autoaugment, augmix), görsel özellikleri çeşitlendirerek sınıflandırma görevleri için optimize eder.
erasing float 0.4 0.0 - 0.9 Sınıflandırma eğitimi sırasında görüntünün bir kısmını rastgele silerek modeli tanıma için daha az belirgin özelliklere odaklanmaya teşvik eder.
crop_fraction float 1.0 0.1 - 1.0 Merkezi özellikleri vurgulamak ve nesne ölçeklerine uyum sağlamak için sınıflandırma görüntüsünü boyutunun bir kısmına kırparak arka plandaki dikkat dağıtıcı unsurları azaltır.

Bu ayarlar, veri kümesinin ve eldeki görevin özel gereksinimlerini karşılayacak şekilde ayarlanabilir. Farklı değerlerle denemeler yapmak, en iyi model performansını sağlayan optimum büyütme stratejisini bulmaya yardımcı olabilir.

Bilgi

Eğitim artırma operasyonları hakkında daha fazla bilgi için referans bölümüne bakın.

Günlük kaydı

Bir YOLOv8 modelini eğitirken, modelin zaman içindeki performansını takip etmeyi değerli bulabilirsiniz. Günlük kaydı burada devreye girer. Ultralytics' YOLO üç tür kaydedici için destek sağlar - Comet, ClearML, ve TensorBoard.

Bir kaydediciyi kullanmak için, yukarıdaki kod parçacığındaki açılır menüden seçin ve çalıştırın. Seçilen kaydedici yüklenecek ve başlatılacaktır.

Comet

Comet veri bilimcilerin ve geliştiricilerin deneyleri ve modelleri izlemesine, karşılaştırmasına, açıklamasına ve optimize etmesine olanak tanıyan bir platformdur. Gerçek zamanlı metrikler, kod farklılıkları ve hiperparametrelerin izlenmesi gibi işlevler sağlar.

Comet adresini kullanmak için:

Örnek

# pip install comet_ml
import comet_ml

comet_ml.init()

Web sitelerinde Comet hesabınıza giriş yapmayı ve API anahtarınızı almayı unutmayın. Deneylerinizi günlüğe kaydetmek için bunu ortam değişkenlerinize veya komut dosyanıza eklemeniz gerekecektir.

ClearML

ClearML deneylerin izlenmesini otomatikleştiren ve kaynakların verimli bir şekilde paylaşılmasına yardımcı olan açık kaynaklı bir platformdur. Ekiplerin makine öğrenimi çalışmalarını daha verimli bir şekilde yönetmelerine, yürütmelerine ve yeniden üretmelerine yardımcı olmak için tasarlanmıştır.

ClearML adresini kullanmak için:

Örnek

# pip install clearml
import clearml

clearml.browser_login()

Bu betiği çalıştırdıktan sonra, tarayıcıda ClearML hesabınızda oturum açmanız ve oturumunuzu doğrulamanız gerekecektir.

TensorBoard

TensorBoard, TensorFlow için bir görselleştirme araç setidir. TensorFlow grafiğinizi görselleştirmenize, grafiğinizin yürütülmesiyle ilgili nicel ölçümleri çizmenize ve içinden geçen görüntüler gibi ek verileri göstermenize olanak tanır.

TensorBoard'u Google Colab'da kullanmak için:

Örnek

load_ext tensorboard
tensorboard --logdir ultralytics/runs  # replace with 'runs' directory

TensorBoard'u yerel olarak kullanmak için aşağıdaki komutu çalıştırın ve sonuçları http://localhost:6006/ adresinde görüntüleyin.

Örnek

tensorboard --logdir ultralytics/runs  # replace with 'runs' directory

Bu, TensorBoard'u yükleyecek ve eğitim günlüklerinizin kaydedildiği dizine yönlendirecektir.

Logger'ınızı kurduktan sonra model eğitiminize devam edebilirsiniz. Tüm eğitim ölçümleri seçtiğiniz platformda otomatik olarak kaydedilir ve modelinizin zaman içindeki performansını izlemek, farklı modelleri karşılaştırmak ve iyileştirme alanlarını belirlemek için bu günlüklere erişebilirsiniz.



Oluşturuldu 2023-11-12, Güncellendi 2024-04-23
Yazarlar: dependabot[bot] (1), glenn-jocher (10), fcakyon (1), Laughing-q (2), Burhan-Q (1)

Yorumlar