MLflow: makine öğrenmesi deney takibi ve model yaşam döngüsü aracı
Sözlük

MLflow: makine öğrenmesi deney takibi ve model yaşam döngüsü aracı

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 3 dk okuma

MLflow nedir, makine öğrenmesi deneylerini ve modelleri nasıl takip eder? Tracking, Projects, Model Registry bileşenleri ve basit örnek.

MLflow nedir?

MLflow, makine öğrenmesi yaşam döngüsünü yönetmek için geliştirilmiş açık kaynaklı bir platformdur. Deneylerin kaydını tutmak, kodu tekrarlanabilir biçimde paketlemek, eğitilmiş modelleri sürümlemek ve üretime dağıtmak gibi işleri tek bir çatı altında toplar.

Makine öğrenmesi projelerinde en sık yaşanan sorun şudur: farklı parametrelerle onlarca deneme yapılır, birkaç hafta sonra hangi sonucun hangi veri, hangi kod ve hangi ayarla üretildiği hatırlanamaz. MLflow bu belirsizliği kayıt altına alarak giderir. Kütüphane bağımsızdır; scikit-learn, PyTorch, TensorFlow gibi farklı çerçevelerle çalışabilir.

MLflow'un ana bileşenleri

Platform birkaç temel bileşenden oluşur:

  • MLflow Tracking: Her eğitim çalıştırması (run) için parametreleri, metrikleri, çıktı dosyalarını ve kod sürümünü kaydeder. Arayüzünde çalıştırmalar yan yana karşılaştırılabilir.
  • MLflow Projects: Kodun bağımlılıklarıyla birlikte tekrarlanabilir biçimde paketlenmesini sağlar; başka biri aynı çalıştırmayı kendi ortamında yeniden üretebilir.
  • MLflow Models: Modeli farklı araçların anlayabileceği ortak bir paket biçiminde saklar. Bu paket biçimi "flavor" kavramıyla farklı çerçevelere uyum sağlar.
  • Model Registry: Modellerin sürümlendiği merkezi depodur. Güncel MLflow'da bir sürümün rolü takma adlarla (alias) gösterilir; örneğin champion adı üretimde hizmet veren sürüme bağlanır. Doğrulama sonucu gibi durum bilgileri ise etiketlerle (tag) kaydedilir. Eski Staging ve Production aşama mantığı kullanımdan kaldırılmış (deprecated) durumdadır.

MLflow ayrıca modelin servis edilmesi ve dış platformlara dağıtılması için entegrasyonlar sunar. Güncel sürümler klasik makine öğrenmesinin yanında büyük dil modeli ve ajan uygulamaları için izleme (tracing), değerlendirme ve istem (prompt) yönetimi araçları da içerir.

Basit bir iş akışı örneği

Örneğin bir veri bilimi ekibi müşteri kaybını tahmin eden bir model geliştiriyor. Her deneme için algoritma türü, öğrenme oranı gibi hiperparametreler ve doğruluk gibi değerlendirme metrikleri MLflow Tracking ile kaydediliyor. Arayüzde çalıştırmalar karşılaştırıldığında en yüksek metriği veren ayarlar belirleniyor.

Seçilen model, kodun ve verinin sürümüyle birlikte kaydediliyor ve Model Registry'ye yeni bir sürüm olarak ekleniyor. Gözden geçiren kişi onayladığında champion takma adı bu yeni sürüme taşınıyor; üretim kodu modeli takma adla çağırdığı için kod değişmeden yeni sürüm devreye giriyor. Sorun çıkarsa takma ad bir önceki sürüme geri alınıyor. Böylece "bu tahmini hangi model üretti" sorusu her zaman yanıtlanabilir.

Model takibi neden gereklidir?

Model takibi yalnız bir kolaylık değil, üretim kalitesi ve yönetişim gereğidir. Gerekçeleri şöyle sıralanabilir:

  • Tekrarlanabilirlik: Aynı sonucu yeniden üretebilmek bilimsel ve operasyonel güven sağlar.
  • Karşılaştırma: Denemeleri nesnel biçimde kıyaslayıp kararı veriye dayandırır.
  • İzlenebilirlik: Üretimdeki bir modelin hangi veri ve koddan geldiği bilinir; denetim ve hata analizinde bu bilgi gerekir.
  • İşbirliği: Ekip üyeleri birbirinin deneylerini görebilir, çalışma tekrarlanmaz.
  • Güvenli yayın: Model sürümleri onay akışıyla yönetilir ve geri dönüş kolaylaşır.

Bu nedenle MLflow, MLOps uygulamalarının en yaygın başlangıç araçlarından biridir.

MLflow ile benzer araçlar ve sınırları

Deney takibi için alternatif araçlar da vardır; örneğin bazı bulut sağlayıcıların kendi yönetilen deney takip hizmetleri ya da özel ticari ürünler. Seçim genellikle altyapı tercihine, ekip büyüklüğüne ve yönetişim ihtiyacına bağlıdır.

MLflow tek başına bir tam MLOps çözümü değildir. Veri sürümleme, özellik deposu, sürekli entegrasyon, ayrıntılı izleme ve uyarı gibi başlıklar için ek araçlarla birlikte kullanılır. Kurumsal ölçekte kimlik doğrulama, erişim yetkileri, ortak sunucu işletimi, yedekleme ve ölçeklendirme gibi konular ayrıca tasarlanmalıdır; yerel dizinde başlayan bir kullanım büyük ekip için yeterli olmaz.

Mindset programlarında nerede çalışılır?

Mindset kataloğunda MLflow'u iki düzeyde ele alan programlar vardır. MLflow ile Model Yönetimi programı MLflow Tracking ile Deney Yönetimi, MLflow Projects ile Tekrarlanabilirlik, MLflow Model Registry ve Yaşam Döngüsü ile MLflow ile Model Dağıtımı modüllerini içerir. MLflow İleri Seviye: Model Registry ve Deployment programı ise Merkezi MLflow Mimarisi, Model Paketleme ve Flavor Yapısı, Model Registry İleri Kullanımı ve Değerlendirme ve Kalite Kayıtları gibi başlıkları kapsar.

İlgili Mindset programı

MLflow ile Model Yönetimi

Sık sorulanlar

Sık sorulan sorular

MLflow ne işe yarar?

Makine öğrenmesi deneylerinin parametrelerini, metriklerini ve çıktılarını kaydeder, modelleri sürümler ve üretime dağıtımı yönetir. Sonuçları tekrarlanabilir, karşılaştırılabilir ve izlenebilir kılar; böylece hangi modelin hangi veri ve kodla üretildiği her zaman bilinir.

MLflow ücretsiz midir?

MLflow açık kaynaklı bir projedir ve kendi altyapınızda çalıştırabilirsiniz. Bazı bulut sağlayıcılar ise MLflow uyumlu yönetilen hizmetler sunar; bunların koşulları sağlayıcıya göre değişir ve ilgili sağlayıcının resmî belgelerinden kontrol edilmelidir.

MLflow hangi kütüphanelerle çalışır?

Kütüphane bağımsız tasarlanmıştır. scikit-learn, PyTorch ve TensorFlow gibi yaygın çerçeveler için hazır entegrasyonlar bulunur; özel bir kütüphane için de kendi kayıt kodunuzla kullanılabilir. Model paketleme tarafında flavor kavramı farklı çerçeveleri ortak biçimde saklamaya yarar.

Model Registry nedir?

Eğitilmiş modellerin adlandırılıp sürümlendiği, takma ad (alias) ve etiketlerle (tag) yaşam döngüsünün yönetildiği merkezi depodur. Hangi sürümün test edildiği, onaylandığı veya üretimde olduğu burada izlenir; sorun çıktığında takma adı önceki sürüme taşımak yeterlidir.

MLflow Nedir? Model Takibi ve Registry Anlatımı