Makine Öğrenimi Operasyonları (MLOps)
MLOps'un gücünü keşfedin: ML model dağıtımını kolaylaştırın, iş akışlarını otomatikleştirin, güvenilirliği sağlayın ve yapay zeka başarısını verimli bir şekilde ölçeklendirin.
Makine Öğrenimi Operasyonları (MLOps), makine öğrenimi (ML) modellerini deneysel geliştirmeden güvenilir üretim dağıtımına
taşıma sürecini kolaylaştıran bir dizi uygulama, ilke ve teknolojidir.
Deneysel geliştirmeden güvenilir üretim dağıtımına Veri biliminin keşifsel doğasını DevOps'un titiz disipliniyle birleştiren MLOps,
Yapay Zeka (AI)
uygulamalarının sürüm döngüsünü birleştirmeyi amaçlamaktadır. Geleneksel yazılım geliştirme öncelikle kod sürümlerine odaklanırken, MLOps
büyük ölçekli verileri yönetme ve model davranışlarını geliştirme gibi ek karmaşıklıklar getirir. Bu bütünsel yaklaşım,
AI sistemlerinin tüm yaşam döngüsü boyunca ölçeklenebilir, doğru ve yönetilebilir olmasını sağlar.
The Pillars of MLOps
Successful MLOps implementations rely on bridging the gap between three distinct disciplines: data engineering,
machine learning, and DevOps.
-
Continuous Integration and Delivery (CI/CD): Just as standard software uses
CI/CD pipelines to automate testing and
deployment, MLOps pipelines automate model training and validation. This ensures that changes to the code or data
automatically trigger steps to verify
model performance before updates reach
production.
-
Data and Model Versioning: In traditional coding, you only version the source code. In MLOps, teams
must use tools like DVC (Data Version Control) to track changes in
training data alongside the model hyperparameters.
This guarantees
reproducibility,
allowing engineers to recreate any specific model version from history.
-
Continuous Monitoring: Once deployed, models can degrade due to
concept drift, where the statistical properties of the
target variable change over time. MLOps involves setting up
observability systems to track metrics like
inference latency and accuracy, automatically
alerting teams when retraining is necessary.
Gerçek Dünya Uygulamaları
MLOps, modern kurumsal yapay backbone kemiğidir ve şirketlerin tek bir modelden binlerce
dağıtılmış uç noktaya güvenilir bir şekilde ölçeklendirme yapmasını sağlar.
-
Üretimde Öngörücü Bakım: Fabrikalar,
montaj hatlarındaki kusurları tespit etmek için
bilgisayar görüşünü kullanır. MLOps boru hattı, yeni ürün hatları piyasaya sürüldükçe,
nesne algılama modellerinin yeni
görüntülerle yeniden eğitilmesini, sürümlenmesini ve kesintiye uğramadan fabrika kenar cihazlarına otomatik olarak dağıtılmasını sağlar. Bu, üretim koşulları değişse bile
kalite kontrolünün
tutarlı kalmasını sağlar.
-
Akıllı Perakende Envanteri: Perakendeciler, track stoklarını track için kameralar kullanıyor. Mağaza aydınlatması ve
ürün ambalajları sık sık değiştiği için, model sapması
sürekli bir risk oluşturuyor. MLOps sistemleri
güven puanlarını izliyor; güven düşerse, sistem
görüntüleri açıklama için işaretliyor ve bulutta yeniden eğitim döngüsü başlatarak, otomatik envanter yönetimini sürdürmek için mağazalara güncellenmiş bir model gönderiyor
.
Ultralytics ile MLOps Uygulama
Herhangi bir MLOps iş akışında kritik bir adım
deney takibidir. Bu, her
eğitim çalışmasının belirli yapılandırmasıyla kaydedilmesini sağlar ve ekiplerin sonuçları yeniden üretmesine veya gerekirse önceki
sürümlerine geri dönmesine olanak tanır.
Aşağıdaki örnek, proje takibi özelliğini etkinleştirirken
YOLO26 modelini ( Ultralytics tüm yeni projeler için Ultralytics en son teknoloji ürünü model)
nasıl eğiteceğinizi göstermektedir. Bu, doğal olarak üretim boru hattı için gerekli olan
yapay nesneleri oluşturur.
from ultralytics import YOLO
# Load the YOLO26 model (recommended for superior speed and accuracy)
model = YOLO("yolo26n.pt")
# Train the model while specifying project and name for organized logging
# This creates a structured directory of artifacts (weights, charts, args)
# which is essential for reproducibility in MLOps pipelines.
results = model.train(data="coco8.yaml", epochs=10, project="mlops_experiments", name="run_v1")
Eğitim çalışmalarını belirli projeler halinde organize ederek, ekipler
MLflow veya
TensorBoard gibi araçları kolayca entegre ederek zaman içindeki performans metriklerini görselleştirebilirler.
Kuruluşlar büyüdükçe, bu iş akışlarını genellikle
Ultralytics taşırlar. Bu Ultralytics , veri kümelerini yönetmek, uzaktan eğitim vermek ve modelleri
TensorRT gibi çeşitli formatlara dağıtmak için birleşik bir arayüz sunan Ultralytics Platformuna taşırlar.
MLOps ve İlgili Kavramlar
Bu uygulamaları etkili bir şekilde hayata geçirmek için, MLOps'u ekosistemdeki ilgili terimlerden ayırmak önemlidir.
-
MLOps ve DevOps: DevOps,
yazılım uygulamalarının sürekli teslimatına odaklanır. MLOps, "Veri" ve
"Model"i birinci sınıf unsurlar olarak ekleyerek bu ilkeleri genişletir. DevOps'ta, bir kod değişikliği bir derlemeyi tetikler; MLOps'ta ise veri
dağılımlarındaki bir değişiklik veya hassasiyetteki bir düşüş de
yeni bir ardışık düzen yürütmesini tetikleyebilir.
-
MLOps ve Model Sunumu:
Model sunumu, özellikle bir modeli barındırmak ve
çıkarım isteklerini işlemek için kullanılan altyapıyı ifade eder.
MLOps ise, sunumu da kapsayan daha geniş bir kavramdır, ancak aynı zamanda eğitim, yönetişim ve izleme aşamalarını da içerir.
MLOps veModel Sunumu:
-
MLOps ve AutoML:
Otomatik Makine Öğrenimi (AutoML)
model oluşturma sürecini (örneğin, algoritma seçimi) otomatikleştirmeye odaklanır. MLOps, model oluşturulduktan sonra
modelin yaşam döngüsünü yönetir ve AutoML araçlarını çalıştıran boru hattını işlevsel hale getirir.