Ölçeklenebilirlik
Explore how scalability empowers AI systems to handle growth. Learn to optimize MLOps with [Ultralytics YOLO26](https://docs.ultralytics.com/models/yolo26/) and the [Ultralytics Platform](https://platform.ultralytics.com) for high-performance, distributed training and seamless deployment.
Scalability refers to the capability of a system, network, or process to handle a growing amount of work by adding
resources. In the context of
Artificial Intelligence (AI) and
Machine Learning (ML), scalability describes a
model's or infrastructure's ability to maintain performance levels as demand increases. This demand typically
manifests as larger datasets during training, higher user traffic during inference, or increased complexity in
computational tasks. A scalable architecture allows for seamless expansion—whether deploying a
computer vision model to a single embedded
device or serving millions of API requests via cloud clusters—ensuring that
inference latency remains low even under heavy
load.
AI'da Ölçeklenebilirliğin Önemi
Designing for scalability is a critical component of successful
Machine Learning Operations (MLOps). A model that functions perfectly in a controlled research environment may fail when exposed to the high-velocity
data streams found in production. Effectively managing
Big Data requires systems that can scale horizontally
(adding more machines to a cluster) or vertically (adding more power, such as RAM or GPUs, to existing machines).
Ölçeklenebilir AI sistemlerinin temel avantajları şunlardır:
-
Güvenilirlik: Ölçeklenebilir sistemler, beklenmedik trafik artışları sırasında tutarlı hizmet çalışma süresi sağlar ve
kritik uygulamalarda çökmeleri önler.
-
Maliyet Verimliliği: Dinamik ölçeklendirme, düşük kullanım dönemlerinde kaynakların ölçeklendirilmesini sağlar. Bu özellik,
genellikle AWS veya Google gibi bulut bilişim platformları tarafından yönetilir.
AWS veya Google gibi bulut bilişim platformları tarafından yönetilir.
-
Geleceğe Hazırlık: Ölçeklenebilir bir altyapı, donanım ekosisteminin tamamen yenilenmesini gerektirmeden,
görsel dönüştürücüler (ViT) gibi daha yeni ve daha karmaşık algoritmaları barındırabilir.
.
Ölçeklenebilirliğe Ulaşmak için Stratejiler
Ölçeklenebilir yapay zeka çözümleri oluşturmak, hem model mimarisini hem de dağıtım altyapısını optimize etmeyi gerektirir.
-
Distributed Training: When training datasets become too large for a single processor,
distributed training splits the workload
across multiple
Graphics Processing Units (GPUs).
Frameworks like PyTorch Distributed allow
developers to parallelize computations, significantly reducing the time required to train foundation models. Tools
like the Ultralytics Platform simplify this process by managing cloud
training resources automatically.
-
Verimli Model Mimarileri: Doğru model mimarisini seçmek, verimlilik açısından çok önemlidir.
En yeni Ultralytics , önceki modellerden daha küçük
ve daha hızlı olacak şekilde tasarlanmıştır, bu da onu kenar AI cihazlarından büyük sunucu çiftliklerine kadar çeşitli donanımlarda doğal olarak ölçeklenebilir hale getirir.
YOLO26, 1000x daha hızlıdır ve 1000x daha fazla veri işleyebilir.
-
Containerization and Orchestration: Packaging applications with
Docker ensures they run consistently across different
environments. For managing large clusters of containers, Kubernetes automates
the deployment, scaling, and management of containerized applications.
-
Model Optimizasyonu:
Model niceleme ve
budama gibi teknikler, bir modelin bellek ayak izini ve hesaplama
maliyetini azaltır. NVIDIA TensorRT , mevcut donanımda daha yüksek verim sağlayarak
çıkarım hızlarını daha da artırabilir.
Kod Örneği: Ölçeklenebilir Toplu Çıkarım
Çıkarım sırasında ölçeklenebilirliği artırmanın etkili bir yöntemi, girdileri sıralı olarak değil, toplu olarak işlemektir.
Bu, GPU en üst düzeye çıkarır ve genel verimi artırır.
from ultralytics import YOLO
# Load a scalable YOLO26 model (smaller 'n' version for speed)
model = YOLO("yolo26n.pt")
# Define a batch of images (URLs or local paths)
# Processing multiple images at once leverages parallel computation
batch_images = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
# Run inference on the batch
results = model(batch_images)
# Print the number of detections for the first image
print(f"Detected {len(results[0].boxes)} objects in the first image.")
Gerçek Dünya Uygulamaları
Ölçeklenebilirlik, AI teknolojilerinin teorik araştırmalardan küresel endüstriyel araçlara geçişini mümkün kılar.
-
Akıllı Üretim: Üretimde yapay zeka alanında, otomatik denetim sistemleri, yüksek hızlı montaj hatlarında saatte binlerce bileşeni analiz etmelidir. Ölçeklenebilir bir nesne algılama sistemi, üretim hızları arttıkça kalite kontrol sürecinin bir darboğaz haline gelmeden yüksek doğruluğu korumasını sağlar.
-
Perakende Öneri Motorları: Büyük e-ticaret platformları,
öneri sistemlerini kullanarak milyonlarca
kişiselleştirilmiş ürün önerisini anında sunar. Ölçeklenebilir altyapı, bu platformların Black Friday gibi trafiğin 100 kat artabileceği büyük olayları,
Microsoft veya benzer sağlayıcılar aracılığıyla dinamik olarak ek sunucu düğümleri sağlayarak
yönetmesine olanak tanır.
Ölçeklenebilirlik ve İlgili Kavramlar
Sıklıkla birbirinin yerine kullanılmasına rağmen, ölçeklenebilirlik performans ve verimlilikten farklıdır.
-
Ölçeklenebilirlik ve Performans:
Performans genellikle bir sistemin belirli bir anda ne kadar hızlı
veya doğru olduğunu ifade eder (örneğin, saniye başına kare sayısı). Ölçeklenebilirlik, iş yükü arttıkça sistemin bu performansı
sürdürme yeteneğini tanımlar.
-
Ölçeklenebilirlik ve Verimlilik: Verimlilik, belirli bir görevi tamamlamak için kullanılan kaynakları ölçer
(örneğin, her bir çıkarım için enerji tüketimi). Bir sistem verimli ancak ölçeklenebilir olmayabilir (eğer paralel
görevleri gerçekleştiremiyorsa) veya ölçeklenebilir ancak verimsiz olabilir (büyümeyi gerçekleştirmek için aşırı kaynak kullanıyorsa).
-
Ölçeklenebilirlik ve Esneklik: Esneklik, bir sistemin farklı türdeki görevleri yerine getirmesini sağlar.
Örneğin YOLO11 algılama, segmentasyon ve
poz tahmini gibi farklı görevleri yerine getirmesini sağlar. Ölçeklenebilirlik ise özellikle aynı görevin daha fazlasını yerine getirmeye odaklanır.