YOLO Vision 2026:
Ultralytics Sözlüğüne dön

Batch Size

Toplu boyutunun (batch size) makine öğrenimi eğitim hızını ve doğruluğunu nasıl etkilediğini öğren. Donanım kısıtlamalarını keşfet ve AutoBatch kullanarak Ultralytics YOLO26'yı optimize et.

makine öğrenimi alanında ve özellikle derin öğrenme bağlamında Batch Size, model eğitiminin bir iterasyonunda kullanılan eğitim örneği sayısını ifade eder. Bütün eğitim verisini bellek kısıtlamaları nedeniyle genellikle hesaplama açısından imkansız olacak şekilde aynı anda sinir ağına beslemek yerine, veri seti batch adı verilen daha küçük alt kümelere bölünür. Model bir batch'i işler, hatayı hesaplar ve bir sonraki batch'e geçmeden önce geri yayılım yoluyla dahili model ağırlıklarını günceller. Bu hiperparametre, hem eğitimin hızını hem de öğrenme sürecinin kararlılığını belirlemede çok önemli bir rol oynar.

Batch ile Eğitim Dinamikleri#

Batch size seçimi, tipik olarak stokastik gradyan inişi'nin bir varyantı olan optimizasyon algoritmasının kayıp manzarasında nasıl gezineceğini temelde değiştirir.

  • Küçük Batch Size'lar: Az sayıda (örneğin 8 veya 16) kullanmak "gürültülü" güncellemelere yol açar. Gradyan tahmini veri setinin bütünü için daha az doğru olsa da, bu gürültü bazen modelin yerel minimumlardan kurtulmasına yardımcı olarak daha iyi genelleştirmeye yol açabilir. Ancak, daha küçük batch'ler epoch başına daha fazla güncelleme gerektirir, bu da ek yük nedeniyle duvar saati süresi açısından eğitimi yavaşlatabilir.
  • Büyük Batch Size Değerleri: Daha büyük bir batch (örneğin 128 veya 256), gradyanın daha doğru bir tahminini sağlayarak kayıp fonksiyonu'nün daha pürüzsüz bir şekilde yakınsamasına yol açar. Modern donanımlar üzerinde devasa paralelleştirmeye olanak tanıyarak hesaplamayı önemli ölçüde hızlandırır. Ancak batch çok büyükse, model keskin, optimal olmayan minimumlarda takılıp kalabilir; bu da aşırı öğrenmeye (overfitting) ve yeni verilere genelleme yapma yeteneğinin azalmasına yol açabilir.

Donanım ve Bellek Etkileri#

Uygulayıcılar, tamamen teorik tercihlerden ziyade donanım kısıtlamalarına dayanarak genellikle bir batch size seçmek zorundadır. Derin öğrenme modelleri, özellikle Transformer'lar veya gelişmiş evrişimli ağlar gibi büyük mimariler, bir GPU'nün VRAM'inde saklanır.

Hızlandırma için NVIDIA CUDA kullanılırken, VRAM model parametrelerini, girdi verisi batch'ini ve gradyan hesaplaması için gereken ara aktivasyon çıktılarını barındırmalıdır. Batch size kullanılabilir belleği aşarsa, eğitim "Bellek Yetersiz" (OOM) hatasıyla çöker. Aynı donanımda daha büyük batch size değerlerine izin vermek için bellek kullanımını azaltmak amacıyla genellikle karışık hassasiyet (mixed precision) eğitimi gibi teknikler kullanılır.

İlgili Kavramları Ayırt Etme#

Eğitimi etkili bir şekilde yapılandırmak için batch size'ı eğitim döngüsündeki diğer zamansal terimlerden ayırt etmek önemlidir.

  • Batch Size ve Epoch Karşılaştırması: Bir epoch, tüm eğitim veri setinden tam bir geçişi temsil eder. Batch size, verinin o epoch içinde kaç parçaya bölüneceğini belirler. Örneğin, 1.000 görseliniz ve 100'lük bir batch size değeriniz varsa, bir epoch'u tamamlamak 10 iterasyon alacaktır.
  • Batch Size ve İterasyon Karşılaştırması: Bir iterasyon (veya adım), bir batch'i işleme ve ağırlıkları güncelleme eylemidir. Eğitimdeki toplam iterasyon sayısı, epoch başına düşen batch sayısı ile toplam epoch sayısının çarpımıdır.
  • Batch Size ve Batch Normalization Karşılaştırması: Adlarını paylaşsalar da Batch Normalization, katman girdilerini mevcut batch'in ortalamasına ve varyansına göre normalleştiren özel bir katman türüdür. Bu teknik büyük ölçüde batch size değerine dayanır; batch size çok küçükse (örneğin 2), istatistiksel tahminler güvenilmez hale gelir ve potansiyel olarak performansı düşürür.

Gerçek Dünya Uygulamaları#

Batch size'ı ayarlamak, bilgisayarlı görü çözümlerini çeşitli endüstrilerde devreye alırken rutin bir gerekliliktir.

  1. Yüksek Doğruluklu Tıbbi Görüntüleme: Sağlık alanında yapay zeka alanında uygulayıcılar genellikle MRI veya BT taramaları gibi 3D hacimsel verilerle çalışır. Bu dosyalar inanılmaz derecede yoğun ve bellek yoğundur. Sistemi çökertmeden tıbbi görüntü analizi veya karmaşık görüntü segmentasyonu gibi görevleri gerçekleştirmek için mühendisler genellikle batch size değerini çok küçük bir sayıya, hatta bazen 1'lik bir batch'e düşürür. Burada öncelik ham eğitim hızından ziyade yüksek çözünürlüklü detayı işlemektir.

  2. Endüstriyel Kalite Kontrol: Buna karşılık, üretimde yapay zeka alanında hız çok önemlidir. Bir konveyör bant üzerindeki ürünleri denetleyen otomasyon sistemlerinin saatte binlerce görsel işlemesi gerekir. Çıkarım (inference) sırasında mühendisler, uç yapay zeka (edge AI) cihazlarının kullanımını en üst düzeye çıkarmak için gelen kamera akışlarını daha büyük batch'lerde toplayabilir ve gerçek zamanlı kusur tespiti için yüksek verimlilik sağlayabilir.

Python ile Batch Size Yapılandırma#

Ultralytics Python paketi kullanılırken batch size ayarlamak oldukça kolaydır. Sabit bir tamsayı belirleyebilir veya donanımınızın güvenli bir şekilde işleyebileceği maksimum batch size değerini otomatik olarak hesaplamak için AutoBatch özelliğini kullanan dinamik batch=-1 ayarını kullanabilirsin.

Aşağıdaki örnek, hız ve doğruluk açısından en son standart olan bir YOLO26 modelinin belirli bir batch ayarı kullanılarak nasıl eğitileceğini gösterir.

from ultralytics import YOLO

# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")

# Train on the COCO8 dataset
# batch=16 is manually set.
# Alternatively, use batch=-1 for auto-tuning based on available GPU memory.
results = model.train(data="coco8.yaml", epochs=5, batch=16)

Büyük ölçekli deneyleri yönetmek ve farklı batch size değerlerinin eğitim metriklerini nasıl etkilediğini görselleştirmek için Ultralytics Platform gibi araçlar, çalıştırmaları kaydetmek ve karşılaştırmak için kapsamlı bir ortam sağlar. Batch size için uygun bir hiperparametre ayarı (hyperparameter tuning), modelinizden en iyi performansı almanın genellikle son adımını oluşturur.

Explore solutions

Real-time AI that works with your team

Robotikte AI

Daha akıllı makineleri Ultralytics YOLO modelleriyle destekle. Robotikteki Vision AI; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Lojistikte Yapay Zeka

Ultralytics YOLO modelleri ile lojistiği kolaylaştır. Görü Yapay Zekası; paket inceleme, ayıklama, araç takibi ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Real-time AI that works with your team

Perakendede AI

Perakendeyi Ultralytics YOLO modelleri ile yeniden hayal et. Görü Yapay Zekası; envanter takibi, raf izleme, sıra yönetimi ve daha akıllı müşteri içgörüleri sağlar.
Daha fazla bilgi edin
Real-time AI that works with your team

Sağlıkta Yapay Zeka

Ultralytics YOLO modelleriyle sağlık çözümleri oluştur. Sağlıkta görüntü tabanlı yapay zeka; daha hızlı tıbbi görüntülemeyi, daha akıllı teşhisleri ve hasta izlemeyi güçlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Üretimde Yapay Zeka

Ultralytics YOLO modelleri ile üretimi optimize et. Görü Yapay Zekası; kalite kontrol, kusur tespiti, KKD uyumu ve montaj hattı otomasyonunu yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your operation

Otomotivde yapay zeka

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görü uygula. Görüntü tabanlı yapay zeka; yol güvenliğini, sürücü yardımını ve araç otomasyonunu daha akıllı yollar için geliştirir.
Daha fazla bilgi edin
Real-time AI tailored to your operation

Tarımda yapay zeka

Ultralytics YOLO modelleriyle akıllı tarıma görüntü tabanlı yapay zeka getir. Daha yüksek ve akıllı verimler için mahsul takibini, hayvancılık izlemeyi ve hassas tarımı güçlendir.
Daha fazla bilgi edin
Real-time AI that works with your team

Robotikte AI

Daha akıllı makineleri Ultralytics YOLO modelleriyle destekle. Robotikteki Vision AI; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Lojistikte Yapay Zeka

Ultralytics YOLO modelleri ile lojistiği kolaylaştır. Görü Yapay Zekası; paket inceleme, ayıklama, araç takibi ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Real-time AI that works with your team

Perakendede AI

Perakendeyi Ultralytics YOLO modelleri ile yeniden hayal et. Görü Yapay Zekası; envanter takibi, raf izleme, sıra yönetimi ve daha akıllı müşteri içgörüleri sağlar.
Daha fazla bilgi edin
Real-time AI that works with your team

Sağlıkta Yapay Zeka

Ultralytics YOLO modelleriyle sağlık çözümleri oluştur. Sağlıkta görüntü tabanlı yapay zeka; daha hızlı tıbbi görüntülemeyi, daha akıllı teşhisleri ve hasta izlemeyi güçlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Üretimde Yapay Zeka

Ultralytics YOLO modelleri ile üretimi optimize et. Görü Yapay Zekası; kalite kontrol, kusur tespiti, KKD uyumu ve montaj hattı otomasyonunu yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your operation

Otomotivde yapay zeka

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görü uygula. Görüntü tabanlı yapay zeka; yol güvenliğini, sürücü yardımını ve araç otomasyonunu daha akıllı yollar için geliştirir.
Daha fazla bilgi edin
Real-time AI tailored to your operation

Tarımda yapay zeka

Ultralytics YOLO modelleriyle akıllı tarıma görüntü tabanlı yapay zeka getir. Daha yüksek ve akıllı verimler için mahsul takibini, hayvancılık izlemeyi ve hassas tarımı güçlendir.
Daha fazla bilgi edin
Real-time AI that works with your team

Robotikte AI

Daha akıllı makineleri Ultralytics YOLO modelleriyle destekle. Robotikteki Vision AI; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Lojistikte Yapay Zeka

Ultralytics YOLO modelleri ile lojistiği kolaylaştır. Görü Yapay Zekası; paket inceleme, ayıklama, araç takibi ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Real-time AI that works with your team

Perakendede AI

Perakendeyi Ultralytics YOLO modelleri ile yeniden hayal et. Görü Yapay Zekası; envanter takibi, raf izleme, sıra yönetimi ve daha akıllı müşteri içgörüleri sağlar.
Daha fazla bilgi edin
Real-time AI that works with your team

Sağlıkta Yapay Zeka

Ultralytics YOLO modelleriyle sağlık çözümleri oluştur. Sağlıkta görüntü tabanlı yapay zeka; daha hızlı tıbbi görüntülemeyi, daha akıllı teşhisleri ve hasta izlemeyi güçlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Üretimde Yapay Zeka

Ultralytics YOLO modelleri ile üretimi optimize et. Görü Yapay Zekası; kalite kontrol, kusur tespiti, KKD uyumu ve montaj hattı otomasyonunu yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your operation

Otomotivde yapay zeka

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görü uygula. Görüntü tabanlı yapay zeka; yol güvenliğini, sürücü yardımını ve araç otomasyonunu daha akıllı yollar için geliştirir.
Daha fazla bilgi edin
Real-time AI tailored to your operation

Tarımda yapay zeka

Ultralytics YOLO modelleriyle akıllı tarıma görüntü tabanlı yapay zeka getir. Daha yüksek ve akıllı verimler için mahsul takibini, hayvancılık izlemeyi ve hassas tarımı güçlendir.
Daha fazla bilgi edin

Yapay zekanın geleceğini birlikte inşa edelim!

Yolculuğuna makine öğreniminin geleceğiyle başla