YOLO26 Eğitimini Geliştirin: Comet ile Günlük Kaydı Sürecinizi Basitleştirin#
Parametreler, metrikler, görüntü tahminleri ve model kontrol noktaları gibi temel eğitim ayrıntılarının günlüğe kaydedilmesi makine öğreniminde büyük önem taşır; projenizi şeffaf, ilerlemenizi ölçülebilir ve sonuçlarınızı tekrarlanabilir tutar.
Watch: How to Use Comet for Ultralytics YOLO Model Training Logs and Metrics 🚀
Ultralytics YOLO26, Comet ile (eski adıyla Comet ML) sorunsuz biçimde entegre olur ve YOLO26 nesne algılama modelinizin eğitim sürecinin her yönünü verimli bir şekilde yakalayıp optimize eder. Bu kılavuzda kurulum sürecini, Comet ayarlarını, gerçek zamanlı içgörüleri, özel günlük kaydını ve çevrimdışı kullanımı ele alarak YOLO26 eğitiminizin kapsamlı şekilde belgelenmesini ve üstün sonuçlar için ince ayarlanmasını sağlayacağız.
Comet#
Comet, makine öğrenimi modellerini ve deneylerini izlemek, karşılaştırmak, açıklamak ve optimize etmek için kullanılan bir platformdur. Model eğitiminiz sırasında metrikleri, parametreleri, medyayı ve daha fazlasını günlüğe kaydetmenize, deneylerinizi estetik açıdan hoş bir web arayüzü üzerinden izlemenize olanak tanır. Comet, veri bilimcilerin daha hızlı yineleme yapmasına yardımcı olur, şeffaflığı ve yeniden üretilebilirliği artırır ve üretim modellerinin geliştirilmesini destekler.
YOLO26 ve Comet'in Gücünden Yararlanma#
Ultralytics YOLO26'yı Comet ile birleştirerek çeşitli avantajlardan yararlanabilirsin. Bunlar arasında basitleştirilmiş deney yönetimi, hızlı ayarlamalar için gerçek zamanlı içgörüler, esnek ve ihtiyaçlarına göre uyarlanmış günlük kaydı seçenekleri ve internet erişiminin sınırlı olduğu durumlarda deneyleri çevrimdışı günlüğe kaydetme olanağı bulunur. Bu entegrasyon, veriye dayalı kararlar almanı, performans metriklerini analiz etmeni ve olağanüstü sonuçlar elde etmeni sağlar.
Kurulum#
Gerekli paketleri yüklemek için şunu çalıştır:
# Install YOLO26 and Comet
pip install ultralytics comet_mlComet'i Yapılandırma#
Gerekli paketleri yükledikten sonra kaydolman, bir Comet API Key alman ve bunu yapılandırman gerekir.
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEYArdından Comet ile kimlik doğrulaması yap. Ultralytics geri çağırması deneyi oluşturur ve YOLO project eğitim bağımsız değişkenini Comet proje adı olarak kullanır.
import comet_ml
comet_ml.login()Google Colab not defteri kullanıyorsan yukarıdaki kod, başlatma için API anahtarını girmeni ister.
Kullanım#
Kullanım talimatlarına geçmeden önce Ultralytics tarafından sunulan YOLO26 modellerine göz atmayı unutma. Bu, proje gereksinimlerin için en uygun modeli seçmene yardımcı olur.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n.pt")
# Train the model
results = model.train(
data="coco8.yaml",
project="comet-example-yolo26-coco128",
batch=32,
save_period=1,
save_json=True,
epochs=3,
)Eğitim kodunu çalıştırdıktan sonra Comet, çalıştırmayı otomatik olarak izlemek için Comet çalışma alanında bir deney oluşturur. Daha sonra YOLO26 modelinin eğitim sürecine ilişkin ayrıntılı günlük kaydını görüntüleyebileceğin bir bağlantı sağlanır.
Comet, ek yapılandırma gerektirmeden şu verileri otomatik olarak günlüğe kaydeder: mAP ve loss gibi metrikler, hiperparametreler, model kontrol noktaları, etkileşimli karmaşıklık matrisi ve görüntü sınırlayıcı kutu tahminleri.
Comet Görselleştirmeleriyle Modelinin Performansını Anlama#
YOLO26 modelin eğitime başladığında Comet panosunda neler göreceğine bakalım. Pano, tüm işlemlerin gerçekleştiği yerdir ve otomatik olarak günlüğe kaydedilen çeşitli bilgileri görseller ve istatistikler aracılığıyla sunar. Kısaca inceleyelim:
Deney Panelleri
Comet panosunun deney panelleri bölümü, farklı çalıştırmaları ve segment maskesi kaybı, sınıf kaybı, kesinlik ve ortalama kesinlik gibi metriklerini düzenler ve sunar.
Metrikler
Metrikler bölümünde metrikleri tablo biçiminde de inceleyebilirsin; bu görünüm burada gösterildiği gibi özel bir bölmede sunulur.
Etkileşimli Karmaşıklık Matrisi
Karmaşıklık Matrisi sekmesinde bulunan karmaşıklık matrisi, modelin sınıflandırma doğruluğunu değerlendirmek için etkileşimli bir yöntem sunar. Doğru ve yanlış tahminleri ayrıntılı olarak göstererek modelin güçlü ve zayıf yönlerini anlamanı sağlar.
Sistem Metrikleri
Comet, eğitim sürecindeki olası darboğazları belirlemeye yardımcı olmak için sistem metriklerini günlüğe kaydeder. Bunlar GPU kullanımı, GPU bellek kullanımı, CPU kullanımı ve RAM kullanımı gibi metrikleri içerir. Bu metrikler, model eğitimi sırasında kaynak kullanımının verimliliğini izlemek için gereklidir.
Comet Günlük Kaydını Özelleştirme#
Comet, ortam değişkenleri ayarlayarak günlük kaydı davranışını özelleştirme esnekliği sunar. Bu yapılandırmalar, Comet'i özel ihtiyaçlarına ve tercihlerine göre uyarlamana olanak tanır. Ultralytics geri çağırması aşağıdaki ortam değişkenlerini okur (eğitim başlamadan önce bunları ayarla):
| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
COMET_START_ONLINE | 1 | Deneyi çevrimiçi (1) veya çevrimdışı (0) modda çalıştırır. |
COMET_PROJECT_NAME | args.project | Comet çalışma alanı projesi. Ayarlanmadığında YOLO project eğitim bağımsız değişkenine geri döner. |
COMET_MODEL_NAME | Ultralytics | Günlüğe kaydedilen model yapıtı için kaydedilen ad. |
COMET_MAX_IMAGE_PREDICTIONS | 100 | Çalıştırma başına günlüğe kaydedilecek toplam doğrulama görüntüsü tahmini sayısı. |
COMET_EVAL_BATCH_LOGGING_INTERVAL | 1 | Görüntü tahminlerini her N'inci doğrulama toplu işlemi sonrasında günlüğe kaydeder. |
COMET_EVAL_LOG_IMAGE_PREDICTIONS | true | Görüntü tahmini günlük kaydını etkinleştirir (true) veya devre dışı bırakır (false). |
COMET_EVAL_LOG_CONFUSION_MATRIX | false | Her doğrulama epoch'unda bir karmaşıklık matrisi günlüğe kaydeder. Son matris, eğitimin sonunda her zaman günlüğe kaydedilir. |
COMET_MAX_CONFIDENCE_SCORE | 100.0 | Günlük kaydından önce algılama güven skorlarına uygulanan çarpan (Comet kullanıcı arayüzü yüzde ölçeği bekler). |
COMET_MODE (kullanımdan kaldırıldı) | online | COMET_START_ONLINE için eski takma ad ("online" ↔ 1, "offline" ↔ 0). Kullanımdan kaldırma uyarısı verir. |
Boolean geçişleri (COMET_EVAL_LOG_IMAGE_PREDICTIONS ve COMET_EVAL_LOG_CONFUSION_MATRIX) için 1, true, yes, on, y ve t değerleri (büyük/küçük harfe duyarsız olarak) True şeklinde ayrıştırılır. Diğer tüm değerler False olarak değerlendirilir.
Görüntü Tahminlerini Günlüğe Kaydetme#
Comet'in deneylerin sırasında günlüğe kaydettiği görüntü tahminlerinin sayısını kontrol edebilirsin. Varsayılan olarak Comet, doğrulama kümesinden 100 görüntü tahminini günlüğe kaydeder. Ancak bu sayıyı gereksinimlerine daha uygun olacak şekilde değiştirebilirsin. Örneğin 200 görüntü tahminini günlüğe kaydetmek için aşağıdaki kodu kullan:
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"Görüntü tahmini günlük kaydını tamamen devre dışı bırakmak için (örneğin yavaş bağlantılarda yükleme hacmini azaltmak amacıyla) COMET_EVAL_LOG_IMAGE_PREDICTIONS değerini "false" olarak ayarla:
import os
os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"Toplu İşlem Günlüğü Kaydı Aralığı#
Comet, görüntü tahminlerinden oluşan toplu işlemlerin ne sıklıkta günlüğe kaydedileceğini belirtmene olanak tanır. COMET_EVAL_BATCH_LOGGING_INTERVAL ortam değişkeni bu sıklığı kontrol eder. Varsayılan ayar 1'dir; bu, her doğrulama toplu işlemindeki tahminleri günlüğe kaydeder. Tahminleri farklı bir aralıkta günlüğe kaydetmek için bu değeri ayarlayabilirsin. Örneğin değeri 4 olarak ayarlamak, her dördüncü toplu işlemdeki tahminleri günlüğe kaydeder.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"Karmaşıklık Matrisi Günlük Kaydını Devre Dışı Bırakma#
Bazı durumlarda doğrulama kümenizdeki karmaşıklık matrisini her epoch sonrasında günlüğe kaydetmek istemeyebilirsin. COMET_EVAL_LOG_CONFUSION_MATRIX ortam değişkenini "false" olarak ayarlayarak bu özelliği devre dışı bırakabilirsin. Karmaşıklık matrisi yalnızca eğitim tamamlandıktan sonra bir kez günlüğe kaydedilir.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"Çevrimiçi ve Çevrimdışı Mod#
Comet varsayılan olarak çevrimiçi modda çalışır ve deney verilerini Comet sunucularına aktarır. İnternet erişimi olmadan eğitim yapman gerekiyorsa eğitim başlamadan önce COMET_START_ONLINE=0 değerini ayarla. Deney verileri yerel olarak kaydedilir ve daha sonra comet upload CLI ile yüklenebilir.
import os
os.environ["COMET_START_ONLINE"] = "0" # 1 (default) = online, 0 = offlineÖnceki sürümlerde bu amaçla COMET_MODE="offline" kullanılıyordu. Değişken geriye dönük uyumluluk için hâlâ dikkate alınır, ancak kullanımdan kaldırma uyarısı verir. Bundan sonra COMET_START_ONLINE kullan.
Proje Adı#
Comet geri çağırması varsayılan olarak YOLO project eğitim bağımsız değişkenini Comet'e aktarır (bağımsız değişken ayarlanmadığında None kullanılır; bu durumda Comet çalışma alanı varsayılanını kullanır). Bunu COMET_PROJECT_NAME ile geçersiz kılarak YOLO eğitim bağımsız değişkeninden bağımsız olarak tüm deneyleri belirli bir Comet çalışma alanı projesine gönderebilirsin:
import os
os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"Model Yapıtı Adı#
COMET_MODEL_NAME, Comet'in günlüğe kaydedilen model yapıtı için kullandığı adı belirler (varsayılan değer Ultralytics). Paylaşılan bir çalışma alanında model varyantlarını ayırt etmek için bunu kullan:
import os
os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"Güven Skoru Ölçeklendirme#
Algılama güven skorları [0, 1] aralığında üretilir, ancak Comet kullanıcı arayüzü bunları varsayılan olarak yüzde ölçeğinde görüntüler. Geri çağırması, günlüğe kaydetmeden önce her skoru COMET_MAX_CONFIDENCE_SCORE ile (varsayılan 100.0) çarpar. Ham olasılıkları veya farklı bir ölçeği tercih ediyorsan bunu ayarla:
import os
os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0" # log raw [0, 1] scoresÖzet#
Bu kılavuzda Comet'i Ultralytics YOLO26 ile entegre etme sürecini ele aldık. Kurulumdan özelleştirmeye kadar deney yönetimini kolaylaştırmayı, gerçek zamanlı içgörüler elde etmeyi ve günlük kaydını projenin ihtiyaçlarına göre uyarlamayı öğrendin.
Ayrıca YOLO26 projeleri için de geçerli olan Comet'in resmi YOLOv8 entegrasyonu belgelerini incele.
Ayrıca YOLO26'nın özellikle görüntü segmentasyonu görevlerindeki pratik uygulamalarını daha ayrıntılı incelemek istiyorsan, YOLO26'ya Comet ile ince ayar yapma hakkındaki bu ayrıntılı kılavuz, modelinin performansını geliştirmek için değerli içgörüler ve adım adım talimatlar sunar.
Ayrıca Ultralytics ile diğer heyecan verici entegrasyonları keşfetmek için zengin kaynaklar ve bilgiler sunan entegrasyon kılavuzu sayfasına göz at.
SSS#
Comet'i Ultralytics YOLO26 ile entegre etmek için şu adımları izle:
-
Gerekli paketleri yükle:
pip install ultralytics comet_ml -
Comet API Key'ini ayarla:
export COMET_API_KEY=YOUR_API_KEY -
Python kodunda Comet ile kimlik doğrulaması yap:
import comet_ml comet_ml.login() -
YOLO26 modelini eğit ve metrikleri günlüğe kaydet:
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model.train( data="coco8.yaml", project="comet-example-yolo26-coco128", batch=32, save_period=1, save_json=True, epochs=3, )
Daha ayrıntılı talimatlar için Comet yapılandırması bölümüne başvur.
-
Ultralytics YOLO26'yı Comet ile entegre ederek şunları yapabilirsin:
- Gerçek zamanlı içgörüleri izle: Eğitim sonuçların hakkında anında geri bildirim alarak hızlı ayarlamalar yap.
- Kapsamlı metrikleri günlüğe kaydet: mAP, loss, hiperparametreler ve model kontrol noktaları gibi temel metrikleri otomatik olarak yakala.
- Deneyleri çevrimdışı izle: İnternet erişimi olmadığında eğitim çalıştırmalarını yerel olarak günlüğe kaydet.
- Farklı eğitim çalıştırmalarını karşılaştır: Birden çok deneyi analiz etmek ve karşılaştırmak için etkileşimli Comet panosunu kullan.
Bu özelliklerden yararlanarak makine öğrenimi iş akışlarını daha iyi performans ve yeniden üretilebilirlik için optimize edebilirsin. Daha fazla bilgi için Comet entegrasyonu kılavudunu ziyaret et.
Comet, ortam değişkenlerini kullanarak günlük kaydı davranışını kapsamlı biçimde özelleştirmene olanak tanır:
-
Günlüğe kaydedilen görüntü tahminlerinin sayısını değiştir:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200" -
Toplu işlem günlük kaydı aralığını ayarla:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4" -
Karmaşıklık matrisi günlük kaydını devre dışı bırak:
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false" -
Comet proje adını ayarla:
import os os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments" -
Günlüğe kaydedilen model yapıtı adını ayarla:
import os os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"
Görüntü tahmini geçişleri, güven skoru ölçeklendirmesi ve çevrimiçi/çevrimdışı mod da dâhil olmak üzere tam liste için Comet Günlük Kaydını Özelleştirme bölümüne bak.
-
YOLO26 modelin eğitime başladıktan sonra Comet panosunda çok çeşitli metriklere ve görselleştirmelere erişebilirsin. Temel özellikler şunlardır:
- Deney Panelleri: Segment maskesi kaybı, sınıf kaybı ve ortalama kesinlik dâhil olmak üzere farklı çalıştırmaları ve bunların metriklerini görüntüle.
- Metrikler: Ayrıntılı analiz için metrikleri tablo biçiminde incele.
- Etkileşimli Karmaşıklık Matrisi: Etkileşimli bir karmaşıklık matrisiyle sınıflandırma doğruluğunu değerlendir.
- Sistem Metrikleri: GPU ve CPU kullanımını, bellek kullanımını ve diğer sistem metriklerini izle.
Bu özelliklere ayrıntılı bir genel bakış için Comet Görselleştirmeleriyle Modelinin Performansını Anlama bölümünü ziyaret et.
Evet. Yerel olarak günlük kaydı yapmak için eğitim başlamadan önce
COMET_START_ONLINE=0değerini ayarla:import os os.environ["COMET_START_ONLINE"] = "0"Deney verileri diske kaydedilir ve bağlantı kullanılabilir olduğunda
comet uploadCLI ile daha sonra Comet'e yüklenebilir. ÖncekiCOMET_MODE="offline"değişkeni hâlâ çalışır, ancak kullanımdan kaldırma uyarısı verir. Daha fazla ayrıntı için Çevrimiçi ve Çevrimdışı Mod bölümüne bak.