YOLO26 Eğitimini Yükselt: Comet ile Günlükleme Sürecini Basitleştir#
Parametreler, metrikler, görüntü tahminleri ve model denetim noktaları gibi temel eğitim detaylarını kaydetmek machine learning projelerinde hayati önem taşır; projenin şeffaf kalmasını, ilerlemenin ölçülebilir olmasını ve sonuçların tekrarlanabilir olmasını sağlar.
Watch: How to Use Comet for Ultralytics YOLO Model Training Logs and Metrics 🚀
Ultralytics YOLO26, Comet (eski adıyla Comet ML) ile sorunsuz bir şekilde bütünleşerek YOLO26 object detection modelinin eğitim sürecinin her yönünü verimli bir şekilde yakalar ve optimize eder. Bu kılavuzda, kurulum sürecini, Comet yapılandırmasını, gerçek zamanlı içgörüleri, özel günlüğe kaydetmeyi ve çevrimdışı kullanımı ele alarak YOLO26 eğitiminin eksiksiz bir şekilde belgelenmesini ve olağanüstü sonuçlar için ince ayar yapılmasını sağlıyoruz.
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ğitimi sırasında metrikleri, parametreleri, medyaları ve daha fazlasını kaydetmenize ve 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 tekrarlanabilirliğ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 bir dizi avantajın kilidini açarsın. Bunlar arasında basitleştirilmiş deney yönetimi, hızlı ayarlamalar için gerçek zamanlı içgörüler, esnek ve özelleştirilmiş günlükleme seçenekleri ve internet erişimi kısıtlı olduğunda deneyleri çevrimdışı kaydetme yeteneği yer alır. Bu entegrasyon, veriye dayalı kararlar vermeni, performans metriklerini analiz etmeni ve olağanüstü sonuçlar elde etmeni sağlar.
Kurulum#
Gerekli paketleri kurmak 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ız ve bunu yapılandırmanız gerekir.
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEYArdından, Comet ile kimlik doğrulaması yap. Ultralytics geri çağırma işlevi deneyi oluşturur ve Comet proje adı olarak YOLO project eğitim argümanını 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 isteyecektir.
Kullanım#
Kullanım talimatlarına dalmadan önce, Ultralytics tarafından sunulan YOLO26 modelleri yelpazesini incelediğinden emin ol. Bu, proje gereksinimlerin için en uygun modeli seçmene yardımcı olacaktır.
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ırma işlemini otomatik olarak izlemek için Comet çalışma alanınızda bir deney oluşturacaktır. Ardından, YOLO26 model's training sürecinin ayrıntılı günlük kaydını görüntülemeniz için bir bağlantı sağlanacaktır.
Comet, ek bir yapılandırma gerektirmeden şu verileri otomatik olarak kaydeder: mAP ve kayıp gibi metrikler, hiperparametreler, model denetim noktaları, interaktif karışıklık matrisi ve görüntü bounding box tahminleri.
Comet Görselleştirmeleri ile Model Performansını Anlama#
YOLO26 modelin eğitimine başladığında Comet panosunda neler göreceğine bir bakalım. Tüm aksiyonun gerçekleştiği pano, otomatik olarak kaydedilen çeşitli bilgileri görseller ve istatistikler aracılığıyla sunar. İşte kısa bir tur:
Deney Panelleri
Comet panosunun deney panelleri bölümü, farklı çalıştırmaları ve segment maskesi kaybı, sınıf kaybı, hassasiyet ve mean average precision gibi metriklerini düzenler ve sunar.
Metrikler
Metrikler bölümünde, metrikleri burada gösterildiği gibi özel bir bölmede sunulan tablo formatında inceleme seçeneğin de vardır.
Interaktif Confusion Matrix
Karışıklık matrisi sekmesinde bulunan karışıklık matrisi, modelin sınıflandırma accuracy değerini değerlendirmek için interaktif bir yol sunar. Doğru ve yanlış tahminleri ayrıntılı olarak vererek modelin güçlü ve zayıf yönlerini anlamanıza olanak tanır.
Sistem Metrikleri
Comet, eğitim sürecindeki darboğazları belirlemeye yardımcı olmak için sistem metriklerini kaydeder. GPU kullanımı, GPU bellek kullanımı, CPU kullanımı ve RAM kullanımı gibi metrikleri içerir. Bunlar, model eğitimi sırasında kaynak kullanımının verimliliğini izlemek için gereklidir.
Comet Günlüklemesini Özelleştirme#
Comet, ortam değişkenlerini ayarlayarak günlükleme davranışını özelleştirme esnekliği sunar. Bu yapılandırmalar, Comet'i özel ihtiyaçlarına ve tercihlerine göre uyarlamanı sağlar. Ultralytics geri çağırma işlevi (callback) şu ortam değişkenlerini okur (bunları eğitim başlamadan önce ayarla):
| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
COMET_START_ONLINE | 1 | Deneyi çevrimiçi (1) veya çevrimdışı (0) modda çalıştırın. |
COMET_PROJECT_NAME | args.project | Comet çalışma alanı projesi. Ayarlanmadığında YOLO project eğitim argümanına geri döner. |
COMET_MODEL_NAME | Ultralytics | Kaydedilen model yapısı (artifact) için kayıtlı isim. |
COMET_MAX_IMAGE_PREDICTIONS | 100 | Çalışma başına kaydedilecek toplam doğrulama görüntü tahmini sayısı. |
COMET_EVAL_BATCH_LOGGING_INTERVAL | 1 | Görüntü tahminlerini her N. doğrulama grubunda (batch) kaydet. |
COMET_EVAL_LOG_IMAGE_PREDICTIONS | true | Görüntü tahmini günlüğünü aç (true) veya kapat (false). |
COMET_EVAL_LOG_CONFUSION_MATRIX | false | Her doğrulama döneminde (epoch) bir karışıklık matrisi kaydet. Eğitim sonunda her zaman nihai bir matris kaydedilir. |
COMET_MAX_CONFIDENCE_SCORE | 100.0 | Günlüklemeden önce algılama güven skorlarına uygulanan çarpan (Comet'in arayüzü yüzde ölçeği bekler). |
COMET_MODE (kullanımdan kaldırıldı) | online | COMET_START_ONLINE ("online" ↔ 1, "offline" ↔ 0) öğesinin eski takma adı. Bir kullanımdan kaldırma uyarısı yayınlar. |
Boole 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 True olarak ayrıştırılır (büyük/küçük harf duyarsızdır). Diğer tüm değerler False değerindedir.
Görüntü Tahminlerini Kaydetme#
Comet'in deneylerin sırasında kaydettiği görüntü tahmini sayısını kontrol edebilirsin. Comet varsayılan olarak doğrulama kümesinden 100 görüntü tahmini kaydeder. Ancak bu sayıyı ihtiyaçlarına daha uygun olacak şekilde değiştirebilirsin. Örneğin, 200 görüntü tahmini kaydetmek için şu kodu kullan:
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"Görüntü tahmini günlüğü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 ayarlayın:
import os
os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"Grup (Batch) Günlükleme Aralığı#
Comet, görüntü tahmini gruplarının ne sıklıkla günlüğe kaydedileceğini belirtmenize olanak tanır. COMET_EVAL_BATCH_LOGGING_INTERVAL çevre değişkeni bu sıklığı kontrol eder. Varsayılan ayar 1'dir ve bu, her doğrulama grubundan tahminleri kaydeder. Tahminleri farklı bir aralıkta kaydetmek için bu değeri ayarlayabilirsiniz. Örneğin, 4 olarak ayarlamak her dördüncü gruptan tahminleri günlüğe kaydeder.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"Karışıklık Matrisi Günlüklemesini Devre Dışı Bırakma#
Bazı durumlarda, her epoch sonrasında doğrulama setinizden karışıklık matrisini kaydetmek istemeyebilirsiniz. COMET_EVAL_LOG_CONFUSION_MATRIX çevre değişkenini "false" olarak ayarlayarak bu özelliği devre dışı bırakabilirsiniz. Karışıklık matrisi yalnızca eğitim tamamlandıktan sonra bir kez günlüğe kaydedilecektir.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"Çevrimiçi ve Çevrimdışı Mod#
Varsayılan olarak Comet çevrimiçi modda çalışır ve deney verilerini Comet sunucularına akış olarak aktarır. İnternet erişimi olmadan eğitim gerçekleştirmeniz gerekiyorsa, eğitim başlamadan önce COMET_START_ONLINE=0 değerini ayarlayın. 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ümler bu amaçla COMET_MODE="offline" kullanıyordu. Değişken, geriye dönük uyumluluk için hala desteklenmektedir ancak bir kullanımdan kaldırma uyarısı yayınlar. Bundan sonra COMET_START_ONLINE kullanın.
Proje Adı#
Varsayılan olarak Comet geri çağırma işlevi, YOLO project eğitim argümanını Comet'e iletir (veya argüman ayarlanmadığında None iletir, bu durumda Comet çalışma alanı varsayılanınızı kullanır). YOLO eğitim argümanından bağımsız olarak tüm deneyleri belirli bir Comet çalışma alanı projektine göndermek için bunu COMET_PROJECT_NAME ile geçersiz kılın:
import os
os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"Model Yapısı Adı#
COMET_MODEL_NAME, Comet'in günlüğe kaydedilen model yapısı için kaydettiği adı belirler (Ultralytics varsayılandır). Paylaşılan bir çalışma alanındaki model varyantlarını ayırt etmek için kullanın:
import os
os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"Güven Skoru Ölçeklendirme#
Algılama güven puanları [0, 1] aralığında yayılır, ancak Comet kullanıcı arayüzü bunları varsayılan olarak bir yüzdelik ölçekte görüntüler. Geri çağırma işlevi, günlüğe kaydetmeden önce her puanı COMET_MAX_CONFIDENCE_SCORE (varsayılan 100.0) ile çarpar. Ham olasılıkları veya farklı bir ölçeği tercih ediyorsanız bunu ayarlayın:
import os
os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0" # log raw [0, 1] scoresÖzet#
Bu kılavuz, Comet'i Ultralytics YOLO26 ile entegre etme sürecinde sana rehberlik etti. Kurulumdan özelleştirmeye kadar deney yönetimini kolaylaştırmayı, gerçek zamanlı içgörüler kazanmayı ve günlüklemeyi projenin ihtiyaçlarına göre uyarlamayı öğrendin.
YOLO26 projeleri için de geçerli olan Comet's official YOLOv8 integration documentation inceleyin.
Ayrıca, YOLO26'nın pratik uygulamalarına, özellikle de image segmentation görevlerine daha derinlemesine dalmak istiyorsanız, fine-tuning YOLO26 with Comet hakkındaki bu ayrıntılı kılavuz, modelinizin performansını artırmak için değerli içgörüler ve adım adım talimatlar sunar.
Ek olarak, Ultralytics ile diğer heyecan verici entegrasyonları keşfetmek için bol kaynak ve bilgi sunan integration guide page göz atın.
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 Anahtarını 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 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 configuration section bakın.
-
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 yapabilirsin.
- Kapsamlı metrikleri kaydet: mAP, kayıp, hiperparametreler ve model kontrol noktaları gibi temel metrikleri otomatik olarak yakalayabilirsin.
- Deneyleri çevrimdışı takip et: İnternet erişimi olmadığında eğitim çalışmalarını yerel olarak kaydedebilirsin.
- Farklı eğitim çalışmalarını karşılaştır: Birden fazla deneyi analiz etmek ve karşılaştırmak için etkileşimli Comet panosunu kullanabilirsin.
Bu özelliklerden yararlanarak, daha iyi performans ve tekrarlanabilirlik için makine öğrenimi iş akışlarınızı optimize edebilirsiniz. Daha fazla bilgi için Comet integration guide adresini ziyaret edin.
Comet, ortam değişkenlerini kullanarak günlükleme davranışının kapsamlı bir şekilde özelleştirilmesine olanak tanır:
-
Kaydedilen görüntü tahmini sayısını değiştir:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200" -
Grup günlükleme aralığını ayarla:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4" -
Karışıklık matrisi günlüklemesini 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" -
Kaydedilen model yapısı adını ayarla:
import os os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"
Görüntü tahmini geçişleri, güven puanı ölçeklendirmesi ve çevrimiçi/çevrimdışı mod dahil olmak üzere tam liste için Customizing Comet Logging bölümüne bakın.
-
YOLO26 modelin eğitimine başladığında, Comet panosunda çok çeşitli metrik ve görselleştirmelere erişebilirsin. Temel özellikler şunlardır:
- Deney Panelleri: Segment maskesi kaybı, sınıf kaybı ve ortalama precision dahil olmak üzere farklı çalıştırmaları ve bunların metriklerini görüntüleyin.
- Metrikler: Ayrıntılı analiz için metrikleri tablo formatında incele.
- Etkileşimli Karışıklık Matrisi: Sınıflandırma doğruluğunu etkileşimli bir karışıklık matrisi ile değerlendir.
- Sistem Metrikleri: GPU ve CPU kullanımını, bellek kullanımını ve diğer sistem metriklerini izle.
Bu özelliklerin ayrıntılı bir genel bakışı için Understanding Your Model's Performance with Comet Visualizations bölümünü ziyaret edin.
Evet. Yerel olarak kaydetmek için eğitim başlamadan önce
COMET_START_ONLINE=0ayarlayın:import os os.environ["COMET_START_ONLINE"] = "0"Deney verileri diske kaydedilir ve bağlantı mevcut olduğunda daha sonra
comet uploadCLI ile Comet'e yüklenebilir. Daha öncekiCOMET_MODE="offline"değişkeni hala çalışmaktadır ancak bir kullanımdan kaldırma uyarısı yayınlar. Daha fazla ayrıntı için Online and Offline Mode bölümüne bakın.