Model kümelerinin Ultralytics gibi birden fazla mimariyi bir araya getirerek doğruluğu ve sağlamlığı nasıl artırdığını keşfedin. Temel teknikleri ve uygulama ipuçlarını öğrenin.
Model Ensemble, makine öğreniminde, birden fazla bireysel modelden elde edilen tahminlerin birleştirilerek, tek bir modelin tek başına elde edebileceğinden daha doğru ve sağlam bir nihai çıktı üretmek için kullanılan stratejik bir yaklaşımdır. Tek bir kişiden daha iyi bir karara varmak için müzakere eden bir uzmanlar komitesi gibi , model topluluğu da hataları azaltmak için çeşitli mimarilerin güçlü yönlerinden yararlanır. Bu teknik , karmaşık görevlerde performansı iyileştirmek, aşırı uyum riskini azaltmak ve istatistiksel modellemede bulunan doğal önyargı-varyans dengesi sorununu çözmek için yaygın olarak kullanılır.
Model topluluğunun temel ilkesi "çeşitlilik"tir. Genellikle "temel öğrenenler" veya "zayıf öğrenenler" olarak adlandırılan birden fazla modeli, eğitim verilerinin farklı alt kümeleri üzerinde eğiterek veya farklı algoritmalar kullanarak, topluluk, bir modelin yaptığı hataların diğerleri tarafından düzeltilmesini sağlar. Derin öğrenme bağlamında, bu genellikle çıkarım sırasında birden fazla sinir ağının paralel olarak çalıştırılmasını içerir. .
Bu tahminleri birleştirmek için yaygın olarak kullanılan yöntemler şunlardır:
Model kümeleri, doğruluğun en üst düzeye çıkarılmasının çok önemli olduğu ve hesaplama kaynaklarının birden fazla modelin çalıştırılmasına olanak tanıdığı yüksek riskli ortamlarda çok önemlidir. Model kümeleri, birden fazla modelin aynı anda çalıştırılmasına olanak tanır. Bu, tek bir modelin hatalı olması durumunda diğer modellerin doğru sonuçlar verebileceği anlamına gelir.
Scikit-learn gibi kütüphaneler kullanılarak karmaşık ensemble stratejileri oluşturulabilirken, bilgisayar görme için temel bir inferans ensemble'ı, birden fazla modeli yükleyip aynı girdiyi işleyerek kolayca oluşturabilirsiniz. Aşağıdaki örnek, iki farklı Ultralytics YOLO modelinin aynı görüntü üzerinde tahminler üretmek için nasıl yükleneceğini göstermektedir.
from ultralytics import YOLO
# Load two different model variants to create a diverse ensemble
model_a = YOLO("yolo26n.pt") # Nano model (Speed focused)
model_b = YOLO("yolo26s.pt") # Small model (Higher accuracy)
# Perform inference on an image with both models
# In production, results are typically merged programmatically
results_a = model_a("https://ultralytics.com/images/bus.jpg")
results_b = model_b("https://ultralytics.com/images/bus.jpg")
print(f"Model A detected {len(results_a[0].boxes)} objects.")
print(f"Model B detected {len(results_b[0].boxes)} objects.")
Standart model topluluğunu, modern Büyük Dil Modeli (LLM) araştırmalarında sıklıkla görülen bir terim olan Uzman Karışımı (MoE) ile ayırt etmek yararlıdır.
Model topluluğu kullanmanın temel avantajı, performansta sağladığı artışdır. Topluluklar, Kaggle yarışmaları gibi veri bilimi yarışmalarında sıklıkla liderlik tablosunda üst sıralarda yer alır, çünkü tekli modellerin gözden kaçırdığı karmaşık kalıpları modelleyebilirler. Ancak bunun bir bedeli vardır: toplulukları kullanmak için daha fazla bellek ve hesaplama gücü gerekir.
Bu kaynak taleplerini verimli bir şekilde yönetmek isteyen ekipler için Ultralytics , farklı model mimarilerini eğitmek, track ve karşılaştırmak için araçlar sunar. Performans metriklerini kolayca karşılaştırarak, geliştiriciler bir topluluğun doğruluk kazancının kenar AI senaryolarında dağıtım için gereken ekstra altyapıyı haklı kılmaya değer olup olmadığına karar verebilirler.