Bu olgunluk modelinin amacı, Machine Learning İşlemleri (MLOps) ilkelerinin ve uygulamalarının netleştirilmesine yardımcı olmaktır. Olgunluk modeli, üretim düzeyinde bir makine öğrenmesi uygulama ortamının oluşturulması ve çalıştırılmasındaki sürekli iyileştirmeyi gösterir. Bunu bir makine öğrenmesi üretim ortamının olgunluğunu ve ilişkili süreçlerini ölçmek için gereken aşamalı gereksinimleri oluşturmak için bir ölçüm olarak kullanabilirsiniz.
Olgunluk modeli
MLOps olgunluk modeli, başarılı bir MLOps ortamını çalıştırmak için gereken Geliştirme İşlemleri (DevOps) ilkelerinin ve uygulamalarının netleştirilmesine yardımcı olur. Mevcut bir kuruluşun böyle bir ortamı uygulama girişimindeki boşlukları belirlemeye yöneliktir. Ayrıca, MLOps özelliğinizi tamamen olgun bir ortamın gereksinimlerine boğmak yerine artımlı olarak nasıl artırabileceğinizi göstermenin bir yoludur. Bunu kılavuz olarak kullanarak:
Yeni görevlendirmeler için çalışmanın kapsamını tahmin edin.
Gerçekçi başarı ölçütleri oluşturun.
Görevlendirmenin sonunda teslim ettiğiniz teslim edilebilir öğeleri belirleyin.
Çoğu olgunluk modelinde olduğu gibi MLOps olgunluk modeli de insanları/kültürü, süreçleri/yapıları ve nesneleri/teknolojiyi nitel olarak değerlendirir. Olgunluk düzeyi arttıkça, olayların veya hataların geliştirme ve üretim süreçlerinin kalitesinde iyileştirmelere yol açma olasılığı artar.
MLOps olgunluk modeli beş teknik özellik düzeyini kapsar:
Level |
Açıklama |
Önemli Noktalar |
Teknoloji |
0 |
MLOps Yok |
- Tam makine öğrenmesi modeli yaşam döngüsünü yönetmek zor
- Ekipler birbirinden ayrı ve yayınlar acı verici
- Çoğu sistem "kara kutular" olarak var, dağıtım sırasında/sonrasında çok az geri bildirim
|
- El ile derlemeler ve dağıtımlar
- Modelin ve uygulamanın el ile test edilmesi
- Model performansını merkezi olarak izleme yok
- Modelin eğitimi el ile yapılır
|
1 |
DevOps ama MLOps yok |
- Sürümler No MLOps'tan daha az acı vericidir, ancak her yeni model için Veri Ekibi'ni kullanır
- Bir modelin üretimde ne kadar iyi performans sergileyebilmesi konusunda hala sınırlı geri bildirim
- Sonuçları izlemek/yeniden oluşturmak zor
|
- Otomatik derlemeler
- Uygulama kodu için otomatikleştirilmiş testler
|
2 |
Otomatik Eğitim |
- Eğitim ortamı tam olarak yönetilir ve izlenebilir
- Modeli yeniden oluşturması kolay
- Serbest bırakmalar el iledir, ancak düşük sürtünme
|
- Otomatik model eğitimi
- Model eğitim performansını merkezi olarak izleme
- Model yönetimi
|
3 |
Otomatik Model Dağıtımı |
- Sürümler düşük sürtünme ve otomatiktir
- Dağıtımdan özgün verilere kadar tam izlenebilirlik
- Tüm ortam yönetilen: test > üretimini eğitme >
|
- Dağıtım için model performansının tümleşik A/B testi
- Tüm kodlar için otomatikleştirilmiş testler
- Model eğitim performansını merkezi olarak izleme
|
4 |
Tam MLOps Otomatik İşlemleri |
- Tam sistem otomatikleştirilmiş ve kolayca izlenir
- Üretim sistemleri, yeni modellerle nasıl geliştirilir ve bazı durumlarda otomatik olarak nasıl geliştirilir hakkında bilgi sağlar
- Sıfır kapalı kalma süresi sistemine yaklaşma
|
- Otomatik model eğitimi ve testi
- Dağıtılan modelden ayrıntılı, merkezi ölçümler
|
İzleyen tablolar, bu işlem olgunluğu düzeyi için ayrıntılı özellikleri tanımlar. Model gelişmeye devam edecektir. Bu sürüm en son Ocak 2020'de güncelleştirildi.
Düzey 0: MLOps Yok
Kişiler |
Model Oluşturma |
Model Sürümü |
Uygulama Tümleştirme |
- Veri bilimciler: silolu, büyük ekiple düzenli iletişimde değil
- Veri mühendisleri (varsa): büyük ekiple düzenli iletişimde değil silolu
- Yazılım mühendisleri: silolu, modeli diğer ekip üyelerinden uzaktan alma
|
- El ile toplanan veriler
- İşlem büyük olasılıkla yönetilmiyor
- Denemeler tahmin edilebilir şekilde izlenmez
- Bitiş sonucu, girişler/çıkışlar ile el ile teslim edilen tek bir model dosyası olabilir
|
- El ile işlem
- Puanlama betiği denemelerin ardından el ile oluşturulabilir, sürüm denetlenmeyebilir
- Yalnızca veri bilimcisi veya veri mühendisi tarafından işlenen yayın
|
- Uygulamak için veri bilimcisi uzmanlığına büyük ölçüde güvenen
- Her seferinde el ile yayınlar
|
Düzey 1: DevOps mlOps yok
Kişiler |
Model Oluşturma |
Model Sürümü |
Uygulama Tümleştirme |
- Veri bilimciler: silolu, büyük ekiple düzenli iletişimde değil
- Veri mühendisleri (varsa): silolu, büyük ekiple düzenli iletişimde değil
- Yazılım mühendisleri: silolu, modeli diğer ekip üyelerinden uzaktan alma
|
- Veri işlem hattı verileri otomatik olarak toplar
- İşlem yönetiliyor veya yönetilmiyor
- Denemeler tahmin edilebilir şekilde izlenmez
- Bitiş sonucu, girişler/çıkışlar ile el ile teslim edilen tek bir model dosyası olabilir
|
- El ile işlem
- Puanlama betiği denemelerin ardından el ile iyi oluşturulabilir ve büyük olasılıkla sürüm denetlenebilir
- Yazılım mühendislerine devredilir
|
- Model için temel tümleştirme testleri var
- Modeli uygulamak için veri bilimcisi uzmanlığına büyük ölçüde güvenen
- Otomatik sürümler
- Uygulama kodunda birim testleri var
|
Düzey 2: Otomatik Eğitim
Kişiler |
Model Oluşturma |
Model Sürümü |
Uygulama Tümleştirme |
- Veri bilimcileri: Deneme kodunu tekrarlanabilir betiklere/işlere dönüştürmek için doğrudan veri mühendisleriyle çalışma
- Veri mühendisleri: Veri bilimciler ile çalışma
- Yazılım mühendisleri: silolu, modeli diğer ekip üyelerinden uzaktan alma
|
- Veri işlem hattı verileri otomatik olarak toplar
- yönetilen işlem
- İzlenen deneme sonuçları
- Hem eğitim kodu hem de sonuçta elde edilen modeller sürüm denetimindedir
|
- El ile yayın
- Puanlama betiği, testlerle denetlenen sürümdür
- Yazılım mühendisliği ekibi tarafından yönetilen sürüm
|
- Model için temel tümleştirme testleri var
- Modeli uygulamak için veri bilimcisi uzmanlığına büyük ölçüde güvenen
- Uygulama kodunda birim testleri var
|
Düzey 3: Otomatik Model Dağıtımı
Kişiler |
Model Oluşturma |
Model Sürümü |
Uygulama Tümleştirme |
- Veri bilimcileri: Deneme kodunu tekrarlanabilir betiklere/işlere dönüştürmek için doğrudan veri mühendisleriyle çalışma
- Veri mühendisleri: Girdileri/çıkışları yönetmek için veri bilimciler ve yazılım mühendisleriyle çalışma
- Yazılım mühendisleri: Uygulama koduyla model tümleştirmesini otomatikleştirmek için veri mühendisleriyle çalışma
|
- Veri işlem hattı verileri otomatik olarak toplar
- yönetilen işlem
- İzlenen deneme sonuçları
- Hem eğitim kodu hem de sonuçta elde edilen modeller sürüm denetimindedir
|
- Otomatik sürüm
- Puanlama betiği, testlerle denetlenen sürümdür
- Sürekli teslim (CI/CD) işlem hattı tarafından yönetilen yayın
|
- Her model sürümü için birim ve tümleştirme testleri
- Modeli uygulamak için veri bilimcisi uzmanlığına daha az güvenin
- Uygulama kodunda birim/tümleştirme testleri var
|
Düzey 4: Tam MLOps Otomatik Yeniden Eğitme
Kişiler |
Model Oluşturma |
Model Sürümü |
Uygulama Tümleştirme |
- Veri bilimcileri: Deneme kodunu tekrarlanabilir betiklere/işlere dönüştürmek için doğrudan veri mühendisleriyle çalışma. Veri mühendislerinin işaretleyicilerini belirlemek için yazılım mühendisleriyle çalışma
- Veri mühendisleri: Girdileri/çıkışları yönetmek için veri bilimciler ve yazılım mühendisleriyle çalışma
- Yazılım mühendisleri: Uygulama koduyla model tümleştirmesini otomatikleştirmek için veri mühendisleriyle çalışma. Dağıtım sonrası ölçüm toplamayı uygulama
|
- Veri işlem hattı verileri otomatik olarak toplar
- Yeniden eğitme, üretim ölçümlerine göre otomatik olarak tetikleniyor
- yönetilen işlem
- İzlenen deneme sonuçları
- Hem eğitim kodu hem de sonuçta elde edilen modeller sürüm denetimindedir
|
- Otomatik Yayın
- Puanlama Betiği, testlerle denetlenen sürümdür
- Sürekli tümleştirme ve CI/CD işlem hattı tarafından yönetilen yayın
|
- Her model sürümü için Birim ve Tümleştirme testleri
- Modeli uygulamak için veri bilimcisi uzmanlığına daha az güvenin
- Uygulama kodunda birim/tümleştirme testleri var
|
Sonraki adımlar