İçeriğe geç

DVCLive ile Gelişmiş YOLOv8 Deney Takibi

Makine öğreniminde deney takibi, model geliştirme ve değerlendirme için kritik öneme sahiptir. Çok sayıda eğitim çalışmasından elde edilen çeşitli parametrelerin, metriklerin ve sonuçların kaydedilmesini ve analiz edilmesini içerir. Bu süreç, model performansını anlamak ve modelleri iyileştirmek ve optimize etmek için veriye dayalı kararlar almak için gereklidir.

DVCLive ile Entegrasyon Ultralytics YOLOv8 deneylerin takip edilme ve yönetilme şeklini dönüştürüyor. Bu entegrasyon, önemli deney ayrıntılarını otomatik olarak kaydetmek, farklı çalıştırmalar arasında sonuçları karşılaştırmak ve derinlemesine analiz için verileri görselleştirmek için sorunsuz bir çözüm sunar. Bu kılavuzda, DVCLive'ın süreci kolaylaştırmak için nasıl kullanılabileceğini anlayacağız.

DVCLive

DVCLive Genel Bakış

DVC tarafından geliştirilen DVCLive, makine öğreniminde deney takibi için yenilikçi bir açık kaynak aracıdır. Git ve DVC ile sorunsuz bir şekilde entegre olan bu araç, model parametreleri ve eğitim ölçümleri gibi önemli deney verilerinin günlüğe kaydedilmesini otomatikleştirir. Basitlik için tasarlanan DVCLive, birden fazla çalıştırmanın zahmetsizce karşılaştırılmasını ve analiz edilmesini sağlayarak sezgisel veri görselleştirme ve analiz araçlarıyla makine öğrenimi projelerinin verimliliğini artırır.

YOLOv8 DVCLive ile Eğitim

YOLOv8 eğitim oturumları DVCLive ile etkin bir şekilde izlenebilir. Ayrıca DVC, bu deneyleri görselleştirmek için, izlenen tüm deneyler arasında metrik grafiklerin karşılaştırılmasına olanak tanıyan ve eğitim sürecinin kapsamlı bir görünümünü sunan bir raporun oluşturulması da dahil olmak üzere entegre özellikler sağlar.

Kurulum

Gerekli paketleri yüklemek için çalıştırın:

Kurulum

# Install the required packages for YOLOv8 and DVCLive
pip install ultralytics dvclive

Kurulum süreciyle ilgili ayrıntılı talimatlar ve en iyi uygulamalar için YOLOv8 Kurulum kılavuzumuzu kontrol ettiğinizden emin olun. YOLOv8 için gerekli paketleri yüklerken herhangi bir zorlukla karşılaşırsanız, çözümler ve ipuçları için Ortak Sorunlar kılavuz umuza başvurun.

DVCLive'ı Yapılandırma

Gerekli paketleri kurduktan sonra, bir sonraki adım ortamınızı gerekli kimlik bilgileriyle kurmak ve yapılandırmaktır. Bu kurulum, DVCLive'ın mevcut iş akışınıza sorunsuz bir şekilde entegre edilmesini sağlar.

Git, hem kodunuz hem de DVCLive yapılandırmalarınız için sürüm kontrolünde çok önemli bir rol oynadığından, bir Git deposu başlatarak başlayın.

İlk Ortam Kurulumu

# Initialize a Git repository
git init -q

# Configure Git with your details
git config --local user.email "you@example.com"
git config --local user.name "Your Name"

# Initialize DVCLive in your project
dvc init -q

# Commit the DVCLive setup to your Git repository
git commit -m "DVC init"

Bu komutlarda, "you@example.com" yerine Git hesabınızla ilişkili e-posta adresini ve "Adınız" yerine Git hesabı kullanıcı adınızı yazdığınızdan emin olun.

Kullanım

Kullanım talimatlarına geçmeden önce, Ultralytics tarafından sunulanYOLOv8 model yelpazesine göz attığınızdan emin olun. Bu, proje gereksinimleriniz için en uygun modeli seçmenize yardımcı olacaktır.

DVCLive ile YOLOv8 Modellerinin Eğitimi

YOLOv8 eğitim oturumlarınızı çalıştırarak başlayın. Proje ihtiyaçlarınıza uygun farklı model konfigürasyonları ve eğitim parametreleri kullanabilirsiniz. Örneğin:

# Example training commands for YOLOv8 with varying configurations
yolo train model=yolov8n.pt data=coco8.yaml epochs=5 imgsz=512
yolo train model=yolov8n.pt data=coco8.yaml epochs=5 imgsz=640

Modeli, verileri, epokları ve imgsz parametrelerini özel gereksinimlerinize göre ayarlayın. Model eğitimi süreci ve en iyi uygulamalar hakkında ayrıntılı bilgi için YOLOv8 Model Eğitimi kılavuzumuza bakın.

DVCLive ile Deneyleri İzleme

DVCLive, temel metriklerin izlenmesini ve görselleştirilmesini sağlayarak eğitim sürecini geliştirir. Kurulduğunda, Ultralytics YOLOv8 daha sonra performans içgörüleri için analiz edebileceğiniz deney takibi için DVCLive ile otomatik olarak entegre olur. Eğitim sırasında kullanılan belirli performans metriklerini kapsamlı bir şekilde anlamak için, performans metrikleri hakkındaki ayrıntılı kılavuzumuzu incelediğinizden emin olun.

Sonuçları Analiz Etme

YOLOv8 eğitim oturumlarınız tamamlandıktan sonra, sonuçların derinlemesine analizi için DVCLive'ın güçlü görselleştirme araçlarından yararlanabilirsiniz. DVCLive'ın entegrasyonu, tüm eğitim metriklerinin sistematik olarak kaydedilmesini sağlayarak modelinizin performansının kapsamlı bir şekilde değerlendirilmesini kolaylaştırır.

Analize başlamak için, DVC'nin API'sini kullanarak deney verilerini çıkarabilir ve daha kolay kullanım ve görselleştirme için Pandas ile işleyebilirsiniz:

import dvc.api
import pandas as pd

# Define the columns of interest
columns = ["Experiment", "epochs", "imgsz", "model", "metrics.mAP50-95(B)"]

# Retrieve experiment data
df = pd.DataFrame(dvc.api.exp_show(), columns=columns)

# Clean the data
df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True)

# Display the DataFrame
print(df)

Yukarıdaki kod parçacığının çıktısı, YOLOv8 modelleriyle gerçekleştirilen farklı deneylerin net bir tablo görünümünü sağlar. Her satır, deneyin adını, epok sayısını, görüntü boyutunu (imgsz), kullanılan belirli modeli ve mAP50-95(B) metriğini detaylandıran farklı bir eğitim çalışmasını temsil eder. Bu metrik, modelin doğruluğunu değerlendirmek için çok önemlidir ve daha yüksek değerler daha iyi performansa işaret eder.

Plotly ile Sonuçları Görselleştirme

Deney sonuçlarınızın daha etkileşimli ve görsel bir analizi için Plotly'nin paralel koordinatlar grafiğini kullanabilirsiniz. Bu tür bir çizim, farklı parametreler ve ölçümler arasındaki ilişkileri ve ödünleşimleri anlamak için özellikle yararlıdır.

from plotly.express import parallel_coordinates

# Create a parallel coordinates plot
fig = parallel_coordinates(df, columns, color="metrics.mAP50-95(B)")

# Display the plot
fig.show()

Yukarıdaki kod parçacığının çıktısı, epoklar, görüntü boyutu, model türü ve bunlara karşılık gelen mAP50-95(B) puanları arasındaki ilişkileri görsel olarak temsil edecek bir çizim oluşturarak deney verilerinizdeki eğilimleri ve kalıpları tespit etmenizi sağlar.

DVC ile Karşılaştırmalı Görselleştirmeler Oluşturma

DVC, deneyleriniz için karşılaştırmalı grafikler oluşturmak için kullanışlı bir komut sağlar. Bu, özellikle farklı modellerin çeşitli eğitim çalışmaları üzerindeki performansını karşılaştırmak için yararlı olabilir.

# Generate DVC comparative plots
dvc plots diff $(dvc exp list --names-only)

Bu komutu çalıştırdıktan sonra, DVC farklı deneylerdeki ölçümleri karşılaştıran grafikler oluşturur ve bunlar HTML dosyaları olarak kaydedilir. Aşağıda, bu işlem tarafından oluşturulan tipik grafikleri gösteren örnek bir görüntü yer almaktadır. Görüntü, mAP, geri çağırma, kesinlik, kayıp değerleri ve daha fazlasını temsil edenler de dahil olmak üzere çeşitli grafikleri sergiler ve temel performans ölçümlerine görsel bir genel bakış sağlar:

DVCLive Arsaları

DVC Arazilerini Görüntüleme

Bir Jupyter Notebook kullanıyorsanız ve oluşturulan DVC grafiklerini görüntülemek istiyorsanız, IPython görüntüleme işlevini kullanabilirsiniz.

from IPython.display import HTML

# Display the DVC plots as HTML
HTML(filename="./dvc_plots/index.html")

Bu kod, DVC grafiklerini içeren HTML dosyasını doğrudan Jupyter Notebook'unuzda oluşturacak ve görselleştirilmiş deney verilerini analiz etmek için kolay ve kullanışlı bir yol sağlayacaktır.

Veriye Dayalı Kararlar Alma

Model optimizasyonları, hiperparametre ayarı ve modelinizin performansını artıracak diğer değişiklikler hakkında bilinçli kararlar vermek için bu görselleştirmelerden elde edilen içgörüleri kullanın.

Deneyler Üzerinde Yineleme

Analizinize dayanarak deneylerinizi yineleyin. Model konfigürasyonlarını, eğitim parametrelerini ve hatta veri girdilerini ayarlayın ve eğitim ve analiz sürecini tekrarlayın. Bu yinelemeli yaklaşım, mümkün olan en iyi performans için modelinizi iyileştirmenin anahtarıdır.

Özet

Bu kılavuz, DVCLive'ı Ultralytics' YOLOv8 ile entegre etme sürecinde size yol göstermiştir. Makine öğrenimi çalışmalarınızda ayrıntılı deney izleme, etkili görselleştirme ve anlayışlı analiz için DVCLive'ın gücünden nasıl yararlanacağınızı öğrendiniz.

Kullanım hakkında daha fazla ayrıntı için DVCLive'ın resmi belgelerini ziyaret edin.

Ayrıca, harika kaynaklar ve içgörülerin bir koleksiyonu olan Ultralytics entegrasyon kılavuzu sayfasını ziyaret ederek Ultralytics 'un daha fazla entegrasyonunu ve yeteneklerini keşfedin.



Oluşturma 2023-11-30, Güncelleme 2024-05-18
Yazarlar: glenn-jocher (1), abirami-vina (1)

Yorumlar