Üretimde makine öğrenimi (ML) iş akışlarını sürdürmek zorlu bir görevdir çünkü makine öğrenimi kodu ve modelleri için sürekli entegrasyon ve sürekli teslim (CI/CD) ardışık düzenleri oluşturmayı, model sürüm oluşturmayı, veri ve kavram sapmasını izlemeyi, modelin yeniden eğitilmesini ve bir kılavuz gerektirir. Modelin yeni versiyonlarının hem performans hem de uyumluluk gerekliliklerini karşıladığından emin olmak için onay süreci.
Bu yazıda, iş planlamayı, model izlemeyi, yeniden eğitimi ve kaydın yanı sıra hata işleme ve bildirimi otomatikleştiren toplu çıkarım için bir MLOps iş akışının nasıl oluşturulacağını açıklıyoruz. Amazon Adaçayı Yapıcı, Amazon EventBridge, AWS Lambda, Amazon Basit Bildirim Servisi (Amazon SNS), HashiCorp Terraform ve GitLab CI/CD. Sunulan MLOps iş akışı, otomasyon, izleme, denetlenebilirlik ve ölçeklenebilirlik yoluyla ML yaşam döngüsünü yönetmek için yeniden kullanılabilir bir şablon sağlar ve böylece üretimde toplu çıkarım iş yüklerini sürdürmenin karmaşıklığını ve maliyetlerini azaltır.
Çözüme genel bakış
Aşağıdaki şekil, AWS araçları ve hizmetleriyle birlikte GitLab CI/CD'yi ve kod olarak Terraform altyapısını (IaC) kullanan kuruluşlara yönelik kurumsal toplu çıkarım için önerilen hedef MLOps mimarisini göstermektedir. GitLab CI/CD, makro-orkestratör görevi görür ve model build
ve model deploy
Kaynak bulma, inşa etme ve sağlamayı içeren boru hatları Amazon SageMaker Ardışık Düzenleri ve SageMaker Python SDK ve Terraform'u kullanarak kaynakları desteklemek. SageMaker Python SDK, eğitim, hiperparametre optimizasyonu (HPO) ile eğitim ve toplu çıkarım için SageMaker işlem hatlarını oluşturmak veya güncellemek için kullanılır. Terraform, SageMaker işlem hatlarını izlemek ve bildirim göndermek (örneğin, bir işlem hattı adımı başarısız veya başarılı olduğunda) için EventBridge kuralları, Lambda işlevleri ve SNS konuları gibi ek kaynaklar oluşturmak için kullanılır. SageMaker Pipelines, makine öğrenimi modeli eğitimi ve çıkarım iş akışları için orkestratör görevi görür.
Bu mimari tasarımı, ML modellerinin oluşturulduğu, eğitildiği ve bir veri bilimi geliştirme hesabındaki (tipik bir uygulama geliştirme hesabından daha fazla kontrole sahip olan) merkezi bir model kaydına kaydedildiği çok hesaplı bir stratejiyi temsil eder. Daha sonra çıkarım hatları, GitLab CI/CD gibi DevOps araçlarından otomasyon kullanılarak hazırlama ve üretim hesaplarına dağıtılır. Merkezi model kaydı isteğe bağlı olarak bir paylaşılan hizmetler hesabına da yerleştirilebilir. Bakınız Çalışma modeli Makine öğrenimine yönelik çoklu hesap stratejisiyle ilgili en iyi uygulamalar için.
Aşağıdaki alt bölümlerde mimari tasarımın farklı yönlerini ayrıntılı olarak tartışıyoruz.
Kod olarak altyapı
IaC, makine tarafından okunabilen dosyalar aracılığıyla BT altyapısını yönetmenin bir yolunu sunarak verimli sürüm kontrolü sağlar. Bu yazıda ve beraberindeki kod örneğinde, nasıl kullanılacağını gösteriyoruz HashiCorp Terraformu AWS kaynaklarını etkili bir şekilde yönetmek için GitLab CI/CD ile. Bu yaklaşım, BT altyapı yönetiminde şeffaf ve tekrarlanabilir bir süreç sunan IaC'nin temel faydasını vurguluyor.
Model eğitimi ve yeniden eğitim
Bu tasarımda, SageMaker eğitim hattı bir programa göre (EventBridge aracılığıyla) veya Amazon Basit Depolama Hizmeti Modeli yeni verilerle düzenli olarak yeniden kalibre etmek için (Amazon S3) olay tetikleyicisi (örneğin, tek bir eğitim veri nesnesi olması durumunda, Amazon S3'e bir tetikleyici dosyası veya yeni eğitim verileri yerleştirildiğinde). Bu işlem hattı, kurumsal model inceleme süreci sırasında onaylanan sabit hiperparametreleri kullandığından modele yapısal veya maddi değişiklikler getirmez.
Eğitim hattı, yeni eğitilen model versiyonunu şuraya kaydeder: Amazon SageMaker Model Kaydı model önceden tanımlanmış bir model performans eşiğini aşarsa (örneğin, regresyon için RMSE ve sınıflandırma için F1 puanı). Modelin yeni bir sürümü model kayıt defterine kaydedildiğinde Amazon SNS aracılığıyla sorumlu veri bilimcisine bir bildirim tetiklenir. Daha sonra veri bilimcinin modelin en son sürümünü incelemesi ve manuel olarak onaylaması gerekir. Amazon SageMaker Stüdyosu Kullanıcı arayüzü veya API çağrısı yoluyla AWS Komut Satırı Arayüzü (AWS CLI) veya AWS SDK for Python (Boto3), modelin yeni sürümünden önce çıkarım için kullanılabilir.
SageMaker eğitim hattı ve destekleyici kaynakları GitLab tarafından oluşturulmuştur model build
GitLab işlem hattının manuel olarak çalıştırılması yoluyla veya kod, GitLab işlem hattına birleştirildiğinde otomatik olarak main
şubesi model build
Git deposu.
Toplu çıkarım
SageMaker toplu çıkarım hattı bir programa göre (EventBridge aracılığıyla) veya bir S3 olay tetikleyicisine dayalı olarak da çalışır. Toplu çıkarım ardışık düzeni, modelin en son onaylanmış sürümünü model kaydından otomatik olarak alır ve bunu çıkarım için kullanır. Toplu çıkarım hattı, veri kalitesini eğitim hattı tarafından oluşturulan bir temel çizgiye göre kontrol etmeye yönelik adımların yanı sıra, kesin doğruluk etiketleri mevcutsa model kalitesini (model performansı) içerir.
Toplu çıkarım hattı veri kalitesi sorunları tespit ederse Amazon SNS aracılığıyla sorumlu veri bilimcisine bildirimde bulunacaktır. Model kalitesi sorunlarını keşfederse (örneğin, RMSE önceden belirlenmiş bir eşikten büyükse), model kalite kontrolüne yönelik işlem hattı adımı başarısız olur ve bu da HPO işlem hattı ile eğitimi başlatmak için bir EventBridge olayını tetikler.
SageMaker toplu çıkarım hattı ve destekleyici kaynakları GitLab tarafından oluşturulur model deploy
GitLab işlem hattının manuel olarak çalıştırılması yoluyla veya kod, GitLab işlem hattına birleştirildiğinde otomatik olarak main
şubesi model deploy
Git deposu.
Model ayarlama ve yeniden ayarlama
HPO işlem hattı ile SageMaker eğitimi, toplu çıkarım hattının model kalite kontrol adımı başarısız olduğunda tetiklenir. Model kalite kontrolü, model tahminlerinin gerçek temel doğruluk etiketleriyle karşılaştırılması yoluyla gerçekleştirilir. Model kalite metriği (örneğin, regresyon için RMSE ve sınıflandırma için F1 puanı) önceden belirlenmiş bir kriteri karşılamıyorsa, model kalite kontrol adımı başarısız olarak işaretlenir. HPO işlem hattı ile SageMaker eğitimi, gerekirse sorumlu veri bilimci tarafından manuel olarak da (SageMaker Studio kullanıcı arayüzünde veya AWS CLI veya SageMaker Python SDK kullanılarak bir API çağrısı aracılığıyla) tetiklenebilir. Model hiperparametreleri değiştiği için sorumlu veri bilimcisinin, yeni model sürümünün model kaydında onaylanabilmesi için kurumsal model inceleme kurulundan onay alması gerekiyor.
HPO işlem hattını içeren SageMaker eğitimi ve destekleyici kaynakları GitLab tarafından oluşturulmuştur. model build
GitLab işlem hattının manuel olarak çalıştırılması yoluyla veya kod, GitLab işlem hattına birleştirildiğinde otomatik olarak main
şubesi model build
Git deposu.
Model izleme
Veri istatistikleri ve kısıtlama temel çizgileri, HPO ardışık düzenleriyle eğitim ve öğretimin bir parçası olarak oluşturulur. Bunlar Amazon S3'e kaydedilir ve ayrıca modelin değerlendirmeyi geçmesi durumunda model kaydında eğitilen modele kaydedilir. Toplu çıkarım hattı kullanımları için önerilen mimari Amazon SageMaker Model Monitörü özel kullanım sırasında veri kalitesi kontrolleri için Amazon SageMaker İşleme model kalite kontrolü için adımlar. Bu tasarım, veri ve model kalite kontrollerini birbirinden ayırır; bu da yalnızca veri kayması tespit edildiğinde bir uyarı bildirimi göndermenize olanak tanır; ve bir model kalitesi ihlali tespit edildiğinde HPO işlem hattı ile eğitimi tetikleyin.
Model onayı
Yeni eğitilen bir model, model kaydına kaydedildikten sonra sorumlu veri bilimcisine bir bildirim gönderilir. Model, eğitim kanalıyla eğitilmişse (hiper parametreler sabitlenirken yeni eğitim verileriyle yeniden kalibrasyon), kurumsal model inceleme kurulundan onay alınmasına gerek yoktur. Veri bilimci, modelin yeni sürümünü bağımsız olarak inceleyebilir ve onaylayabilir. Öte yandan, model HPO işlem hattı (hiperparametreleri değiştirerek yeniden ayarlama) ile eğitilmişse, yeni model versiyonunun üretimde çıkarım için kullanılmadan önce kurumsal inceleme sürecinden geçmesi gerekir. İnceleme süreci tamamlandığında veri bilimci devam edebilir ve model kaydındaki modelin yeni sürümünü onaylayabilir. Model paketinin durumunu şu şekilde değiştirme: Approved
EventBridge aracılığıyla bir Lambda işlevini tetikleyecek ve bu da GitLab'ı tetikleyecek model deploy
bir API çağrısı yoluyla boru hattı. Bu, çıkarım için modelin en son onaylanmış sürümünü kullanmak üzere SageMaker toplu çıkarım hattını otomatik olarak güncelleyecektir.
Model kaydında yeni bir model sürümünü onaylamanın veya reddetmenin iki ana yolu vardır: AWS SDK for Python'u (Boto3) kullanmak veya SageMaker Studio kullanıcı arayüzünden. Varsayılan olarak hem eğitim hattı hem de HPO boru hattı seti ile eğitim ModelApprovalStatus
için PendingManualApproval
. Sorumlu veri bilimci, modeli arayarak onay durumunu güncelleyebilir. update_model_package
Boto3'ten API. Bakınız Bir Modelin Onay Durumunu Güncelleme Bir modelin onay durumunun SageMaker Studio kullanıcı arayüzü aracılığıyla güncellenmesiyle ilgili ayrıntılar için.
Veri G/Ç tasarımı
SageMaker, eğitim ve çıkarım ardışık düzenlerindeki bireysel adımların girdilerini okumak ve çıktılarını depolamak için doğrudan Amazon S3 ile etkileşime girer. Aşağıdaki şema, Python komut dosyalarının, ham ve işlenmiş eğitim verilerinin, ham ve işlenmiş çıkarım verilerinin, çıkarım sonuçlarının ve temel doğruluk etiketlerinin (model kalitesi izleme için mevcutsa), model yapıtlarının, eğitim ve çıkarım değerlendirme ölçümlerinin (model kalitesi izleme) ne kadar farklı olduğunu göstermektedir. veri kalitesi temel çizgileri ve ihlal raporlarının yanı sıra (veri kalitesinin izlenmesi için) bir S3 klasöründe organize edilebilir. Diyagramdaki okların yönü, SageMaker işlem hatlarındaki ilgili adımlardan hangi dosyaların giriş veya çıkış olduğunu gösterir. Oklar, okunmalarını kolaylaştırmak için boru hattı adım türüne göre renk kodludur. İşlem hattı, Python komut dosyalarını GitLab deposundan otomatik olarak yükleyecek ve her adımdaki çıktı dosyalarını veya model yapıtlarını uygun S3 yolunda depolayacaktır.
Veri mühendisi aşağıdakilerden sorumludur:
- Etiketli eğitim verilerini Amazon S3'teki uygun yola yükleme. Bu, eğitim hattının ve HPO hattı ile eğitimin sırasıyla modelin yeniden eğitimi ve yeniden ayarlanması için en son eğitim verilerine erişebilmesini sağlamak için düzenli olarak yeni eğitim verilerinin eklenmesini içerir.
- Çıkarım hattının planlı bir şekilde çalıştırılmasından önce, çıkarım için giriş verilerinin S3 klasöründeki uygun yola yüklenmesi.
- Model kalitesinin izlenmesi için kesin doğruluk etiketlerinin uygun S3 yoluna yüklenmesi.
Veri bilimci aşağıdakilerden sorumludur:
- Kesin doğruluk etiketlerinin hazırlanması ve bunların Amazon S3'e yüklenmesi için veri mühendisliği ekibine sağlanması.
- HPO boru hattı ile eğitimle eğitilen model versiyonlarının kurumsal inceleme sürecinden geçirilmesi ve gerekli onayların alınması.
- Model kayıt defterinde yeni eğitilen model sürümlerini manuel olarak onaylama veya reddetme.
- Çıkarım hattı için üretim kapısının ve üretime yükseltilecek destekleyici kaynakların onaylanması.
Basit kod
Bu bölümde, aşağıdaki mimari şemasında gösterildiği gibi tek hesap kurulumuyla toplu çıkarım işlemleri için örnek bir kod sunuyoruz. Örnek kodu şurada bulabilirsiniz: GitHub deposuve genellikle işletmeler için gerekli olan kalite kapılarını kullanarak model izleme ve otomatik yeniden eğitim ile toplu çıkarım için bir başlangıç noktası olarak hizmet verebilir. Örnek kod, hedef mimariden aşağıdaki yönlerden farklılık gösterir:
- ML modelini ve destekleyici kaynakları oluşturmak ve dağıtmak için tek bir AWS hesabı kullanır. Bakınız AWS Ortamınızı Birden Çok Hesap Kullanarak Düzenleme AWS'de çoklu hesap kurulumu konusunda rehberlik için.
- ML modelini ve destekleyici kaynakları oluşturmak ve dağıtmak için tek bir GitLab CI/CD işlem hattını kullanır.
- Modelin yeni bir sürümü eğitilip onaylandığında GitLab CI/CD işlem hattı otomatik olarak tetiklenmez ve SageMaker toplu çıkarım hattını modelin en son onaylanmış sürümüyle güncellemek için sorumlu veri bilimci tarafından manuel olarak çalıştırılması gerekir.
- Yalnızca SageMaker eğitim ve çıkarım ardışık düzenlerini çalıştırmak için S3 olay tabanlı tetikleyicileri destekler.
Önkoşullar
Bu çözümü dağıtmadan önce aşağıdaki önkoşullara sahip olmanız gerekir:
- Bir AWS hesabı
- Adaçayı Yapıcı Stüdyo
- Amazon S3 okuma/yazma ve SageMaker yürütme rolü AWS Anahtar Yönetim Hizmeti (AWS KMS) şifreleme/şifre çözme izinleri
- Verileri, komut dosyalarını ve model yapıtlarını depolamak için bir S3 grubu
- Terraform sürüm 0.13.5 veya üstü
- İşlem hatlarını çalıştırmak için çalışan bir Docker çalıştırıcısına sahip GitLab
- AWS CLI'si
- jq
- halletmek
- Python3 (Python 3.7 veya üstü) ve aşağıdaki Python paketleri:
- boto3
- sagemaker
- pandalar
- piyaml
depo yapısı
The GitHub deposu aşağıdaki dizinleri ve dosyaları içerir:
/code/lambda_function/
– Bu dizin, SageMaker ardışık düzenlerinin adım durumu değişiklikleri hakkında bildirim mesajları (Amazon SNS aracılığıyla) hazırlayan ve gönderen bir Lambda işlevine yönelik Python dosyasını içerir./data/
– Bu dizin ham veri dosyalarını içerir (eğitim, çıkarım ve temel gerçek verileri)/env_files/
– Bu dizin Terraform giriş değişkenleri dosyasını içerir/pipeline_scripts/
– Bu dizin, HPO SageMaker işlem hatları ile eğitim, çıkarım ve eğitim oluşturmak ve güncellemek için üç Python komut dosyasının yanı sıra her işlem hattının parametrelerini belirtmek için yapılandırma dosyalarını içerir./scripts/
– Bu dizin, HPO ardışık düzenleriyle eğitim, çıkarım ve eğitim tarafından başvurulan ek Python komut dosyalarını (ön işleme ve değerlendirme gibi) içerir.gitlab-ci.yml
– Bu dosya GitLab CI/CD işlem hattı yapılandırmasını belirtir/events.tf
– Bu dosya EventBridge kaynaklarını tanımlar/lambda.tf
– Bu dosya Lambda bildirim fonksiyonunu ve ilgili AWS Kimlik ve Erişim Yönetimi (IAM) kaynakları/main.tf
– Bu dosya Terraform veri kaynaklarını ve yerel değişkenleri tanımlar/sns.tf
– Bu dosya Amazon SNS kaynaklarını tanımlar/tags.json
– Bu JSON dosyası, özel etiket anahtar/değer çiftlerini bildirmenize ve bunları yerel bir değişken kullanarak Terraform kaynaklarınıza eklemenize olanak tanır/variables.tf
– Bu dosya tüm Terraform değişkenlerini bildirir
Değişkenler ve konfigürasyon
Aşağıdaki tabloda bu çözümü parametreleştirmek için kullanılan değişkenler gösterilmektedir. Bakın ./env_files/dev_env.tfvars
Daha fazla ayrıntı için dosya.
Name | Açıklama |
bucket_name |
Verileri, komut dosyalarını ve model yapıtlarını depolamak için kullanılan S3 klasörü |
bucket_prefix |
ML projesi için S3 öneki |
bucket_train_prefix |
Eğitim verileri için S3 öneki |
bucket_inf_prefix |
Çıkarım verileri için S3 öneki |
notification_function_name |
SageMaker işlem hatlarının adım durumu değişiklikleri hakkında bildirim mesajları hazırlayan ve gönderen Lambda fonksiyonunun adı |
custom_notification_config |
Belirli bir ardışık düzen çalıştırma durumu algılandığında belirli SageMaker ardışık düzen adımları için bildirim mesajını özelleştirmeye yönelik yapılandırma |
email_recipient |
SageMaker işlem hatlarının adım durumu değişikliği bildirimlerini almak için e-posta adresi listesi |
pipeline_inf |
SageMaker çıkarım hattının adı |
pipeline_train |
SageMaker eğitim hattının adı |
pipeline_trainwhpo |
HPO işlem hattı ile SageMaker eğitiminin adı |
recreate_pipelines |
Olarak ayarlanmışsa true , mevcut üç SageMaker işlem hattı (eğitim, çıkarım, HPO ile eğitim) silinecek ve GitLab CI/CD çalıştırıldığında yenileri oluşturulacak |
model_package_group_name |
Model paket grubunun adı |
accuracy_mse_threshold |
Modelde güncelleme gerektirmeden önce maksimum MSE değeri |
role_arn |
SageMaker işlem hattı yürütme rolünün IAM rolü ARN'si |
kms_key |
Amazon S3 ve SageMaker şifrelemesi için KMS anahtarı ARN |
subnet_id |
SageMaker ağ yapılandırması için alt ağ kimliği |
sg_id |
SageMaker ağ yapılandırması için güvenlik grubu kimliği |
upload_training_data |
Olarak ayarlanmışsa true , eğitim verileri Amazon S3'e yüklenecek ve bu yükleme işlemi, eğitim hattının çalıştırılmasını tetikleyecek |
upload_inference_data |
Olarak ayarlanmışsa true , çıkarım verileri Amazon S3'e yüklenecek ve bu yükleme işlemi, çıkarım hattının çalıştırılmasını tetikleyecek |
user_id |
SageMaker kaynaklarına etiket olarak eklenen SageMaker kullanıcısının çalışan kimliği |
Çözümü dağıtın
Çözümü AWS hesabınızda dağıtmak için aşağıdaki adımları tamamlayın:
- GitHub deposunu çalışma dizininize kopyalayın.
- GitLab CI/CD işlem hattı yapılandırmasını ortamınıza uyacak şekilde gözden geçirin ve değiştirin. Yapılandırma şu şekilde belirtilmiştir:
./gitlab-ci.yml
dosyası. - Genel çözüm değişkenlerini güncellemek için README dosyasına bakın.
./env_files/dev_env.tfvars
dosya. Bu dosya hem Python betikleri hem de Terraform otomasyonu için değişkenler içerir.- Aşağıdaki YAML dosyalarında tanımlanan ek SageMaker İşlem Hatları parametrelerini kontrol edin:
./batch_scoring_pipeline/pipeline_scripts/
. Gerekirse parametreleri gözden geçirin ve güncelleyin.
- Aşağıdaki YAML dosyalarında tanımlanan ek SageMaker İşlem Hatları parametrelerini kontrol edin:
- SageMaker işlem hattı oluşturma komut dosyalarını inceleyin.
./pipeline_scripts/
ve ayrıca referans olarak kullandıkları komut dosyaları./scripts/
dosya. GitHub deposunda sağlanan örnek komut dosyaları, Abalone veri seti. Farklı bir veri kümesi kullanacaksanız, komut dosyalarını kendi sorununuza uyacak şekilde güncellediğinizden emin olun. - Veri dosyalarınızı şuraya koyun:
./data/
Aşağıdaki adlandırma kuralını kullanarak klasör. Sağlanan örnek komut dosyalarıyla birlikte Abalone veri kümesini kullanıyorsanız, veri dosyalarının başlıksız olduğundan, eğitim verilerinin hem bağımsız hem de hedef değişkenleri içerdiğinden ve orijinal sütun sırası korunduğundan, çıkarım verilerinin yalnızca bağımsız değişkenler içerdiğinden ve temel doğruluktan emin olun. dosya yalnızca hedef değişkeni içerir.training-data.csv
inference-data.csv
ground-truth.csv
- GitLab CI/CD işlem hattı çalıştırmasını (ilk çalıştırma) tetiklemek için kodu kaydedin ve depoya gönderin. İlk işlem hattı çalıştırmasının başarısız olacağını unutmayın.
pipeline
Çünkü çıkarım hattı betiğinin kullanabileceği onaylanmış bir model sürümü henüz mevcut değil. Adım günlüğünü inceleyin ve adlı yeni bir SageMaker işlem hattını doğrulayın.TrainingPipeline
başarıyla oluşturuldu.
-
- SageMaker Studio kullanıcı arayüzünü açın, ardından eğitim hattını inceleyip çalıştırın.
- Eğitim hattının başarılı bir şekilde çalıştırılmasının ardından, model kaydındaki kayıtlı model sürümünü onaylayın ve ardından GitLab CI/CD hattının tamamını yeniden çalıştırın.
- Terraform planı çıktısını gözden geçirin.
build
sahne. Kılavuzu onaylaapply
İşlem hattı çalıştırmasını sürdürmek ve Terraform'a AWS hesabınızda izleme ve bildirim kaynaklarını oluşturma yetkisi vermek için GitLab CI/CD işlem hattındaki aşamayı kullanın. - Son olarak, SageMaker Studio kullanıcı arayüzünde SageMaker işlem hatlarının çalışma durumunu ve çıktısını inceleyin ve aşağıdaki ekran görüntüsünde gösterildiği gibi e-postanızda bildirim mesajları olup olmadığını kontrol edin. Varsayılan ileti gövdesi JSON biçimindedir.
SageMaker boru hatları
Bu bölümde MLOps iş akışındaki üç SageMaker işlem hattını açıklıyoruz.
Eğitim hattı
Eğitim hattı aşağıdaki adımlardan oluşur:
- Özellik dönüşümü ve kodlamayı içeren ön işleme adımı
- Eğitim verilerini kullanarak veri istatistikleri ve kısıtlama temel çizgisi oluşturmak için veri kalitesi kontrol adımı
- Eğitim adımı
- Eğitim değerlendirme adımı
- Eğitilen modelin önceden belirlenmiş bir performans eşiğini karşılayıp karşılamadığını kontrol etmeye yönelik koşul adımı
- Eğitilen model gerekli performans eşiğini karşılıyorsa, yeni eğitilen modeli model kaydına kaydetmek için model kayıt adımı
İkisi de skip_check_data_quality
ve register_new_baseline_data_quality
parametreler şu şekilde ayarlandı: True
eğitim hattında. Bu parametreler, boru hattına veri kalitesi kontrolünü atlaması ve yalnızca eğitim verilerini kullanarak yeni veri istatistikleri veya kısıtlama temel çizgileri oluşturup kaydetmesi talimatını verir. Aşağıdaki şekil eğitim hattının başarılı bir şekilde çalıştırılmasını göstermektedir.
Toplu çıkarım hattı
Toplu çıkarım hattı aşağıdaki adımlardan oluşur:
- Model kaydındaki en son onaylanmış model sürümünden model oluşturma
- Özellik dönüşümü ve kodlamayı içeren ön işleme adımı
- Toplu çıkarım adımı
- Veri kalitesi kontrolü için kullanılacak hem giriş verilerini hem de model tahminlerini içeren yeni bir CSV dosyası oluşturan veri kalitesi kontrolü ön işleme adımı
- Giriş verilerini temel istatistiklere ve kayıtlı modelle ilişkili kısıtlamalara göre kontrol eden veri kalitesi kontrol adımı
- Temel gerçek verilerinin mevcut olup olmadığını kontrol etmek için koşul adımı. Gerçek veriler mevcutsa model kalite kontrol adımı gerçekleştirilecektir
- Model performansını kesin doğruluk etiketlerine göre hesaplayan model kalitesi hesaplama adımı
İkisi de skip_check_data_quality
ve register_new_baseline_data_quality
parametreler şu şekilde ayarlandı: False
çıkarım hattında. Bu parametreler, boru hattına kayıtlı modelle ilişkili veri istatistiklerini veya kısıtlama temel çizgisini kullanarak bir veri kalitesi kontrolü gerçekleştirmesi talimatını verir (supplied_baseline_statistics_data_quality
ve supplied_baseline_constraints_data_quality
) ve çıkarım sırasında yeni veri istatistiklerini ve kısıtlama temellerini oluşturmayı veya kaydetmeyi atlayın. Aşağıdaki şekil, modelin çıkarım verileri üzerindeki zayıf performansı nedeniyle veri kalitesi kontrol adımının başarısız olduğu toplu çıkarım hattının çalışmasını göstermektedir. Bu özel durumda, modele ince ayar yapmak için HPO işlem hattı ile eğitim otomatik olarak tetiklenecektir.
HPO boru hattı ile eğitim
HPO boru hattı ile eğitim aşağıdaki adımlardan oluşur:
- Ön işleme adımı (özellik dönüşümü ve kodlama)
- Eğitim verilerini kullanarak veri istatistikleri ve kısıtlama temel çizgisi oluşturmak için veri kalitesi kontrol adımı
- Hiperparametre ayarlama adımı
- Eğitim değerlendirme adımı
- Eğitilen modelin önceden belirlenmiş bir doğruluk eşiğini karşılayıp karşılamadığını kontrol etmeye yönelik koşul adımı
- En iyi eğitilmiş modelin gerekli doğruluk eşiğini karşılaması durumunda model kayıt adımı
İkisi de skip_check_data_quality
ve register_new_baseline_data_quality
parametreler şu şekilde ayarlandı: True
HPO boru hattı ile eğitimde. Aşağıdaki şekil, HPO işlem hattı ile eğitimin başarılı bir şekilde yürütülmesini göstermektedir.
Temizlemek
Kaynaklarınızı temizlemek için aşağıdaki adımları tamamlayın:
- İstihdam
destroy
Terraform tarafından sağlanan tüm kaynakları ortadan kaldırmak için GitLab CI/CD hattındaki aşama. - AWS CLI'yi kullanarak liste ve Kaldır Python komut dosyaları tarafından oluşturulan kalan işlem hatları.
- İsteğe bağlı olarak, S3 klasörü veya CI/CD hattının dışında oluşturulan IAM rolü gibi diğer AWS kaynaklarını silin.
Sonuç
Bu gönderide işletmelerin Amazon SageMaker, Amazon EventBridge, AWS Lambda, Amazon SNS, HashiCorp Terraform ve GitLab CI/CD'yi kullanarak toplu çıkarım işleri için nasıl MLOps iş akışları oluşturabileceklerini gösterdik. Sunulan iş akışı, veri ve model izlemeyi, model yeniden eğitiminin yanı sıra toplu iş çalıştırmaları, kod sürümü oluşturma ve altyapı sağlamayı otomatikleştirir. Bu, üretimde toplu çıkarım işlerini sürdürmenin karmaşıklıklarında ve maliyetlerinde önemli azalmalara yol açabilir. Uygulama ayrıntıları hakkında daha fazla bilgi için bkz. GitHub repo.
Yazarlar Hakkında
Hasan Şojaei AWS Profesyonel Hizmetlerinde Kıdemli Veri Bilimcisidir ve burada spor, sigorta ve finansal hizmetler gibi farklı sektörlerdeki müşterilerin büyük veri, makine öğrenimi ve bulut teknolojilerini kullanarak iş zorluklarını çözmelerine yardımcı olur. Bu görevinden önce Hasan, önde gelen enerji şirketleri için yeni fizik tabanlı ve veriye dayalı modelleme teknikleri geliştirmeye yönelik birçok girişime liderlik etti. Hasan, iş dışında kitaplara, yürüyüşe, fotoğrafçılığa ve tarihe tutkuyla bağlı.
Wenxin Liu Kıdemli Bulut Altyapı Mimarıdır. Wenxin, kurumsal şirketlere bulutu benimsemeyi nasıl hızlandırabilecekleri konusunda tavsiyelerde bulunur ve buluttaki yeniliklerini destekler. Kendisi bir evcil hayvan aşığıdır ve snowboard ve seyahat konusunda tutkuludur.
Vivek Lakshmanan Amazon'da Makine Öğrenimi Mühendisidir. Yazılım Mühendisliği alanında yüksek lisans derecesine ve Veri Bilimi alanında uzmanlığa ve MLE olarak birkaç yıllık deneyime sahiptir. Vivek, bulut üzerinde müşterilere en son teknolojileri uygulamaktan ve AI/ML çözümlerini geliştirmekten heyecan duyuyor. AI/ML'de İstatistik, NLP ve Model Açıklanabilirliği konusunda tutkulu. Boş zamanlarında kriket oynamaktan ve yol gezilerine çıkmaktan hoşlanıyor.
Andy Cracchiolo Bulut Altyapı Mimarıdır. Andy, BT altyapısında 15 yıldan fazla deneyime sahip, başarılı ve sonuç odaklı bir BT uzmanıdır. Andy, BT altyapısını, operasyonlarını ve otomasyonunu optimize etmenin yanı sıra, BT operasyonlarını analiz etme, tutarsızlıkları belirleme ve verimliliği artıran, maliyetleri düşüren ve karı artıran süreç iyileştirmelerini uygulama konusunda kanıtlanmış bir geçmişe sahiptir.
- SEO Destekli İçerik ve Halkla İlişkiler Dağıtımı. Bugün Gücünüzü Artırın.
- PlatoData.Network Dikey Üretken Yapay Zeka. Kendine güç ver. Buradan Erişin.
- PlatoAiStream. Web3 Zekası. Bilgi Genişletildi. Buradan Erişin.
- PlatoESG. Otomotiv / EV'ler, karbon, temiz teknoloji, Enerji, Çevre, Güneş, Atık Yönetimi. Buradan Erişin.
- PlatoSağlık. Biyoteknoloji ve Klinik Araştırmalar Zekası. Buradan Erişin.
- ChartPrime. Ticaret Oyununuzu ChartPrime ile yükseltin. Buradan Erişin.
- Blok Ofsetleri. Çevre Dengeleme Sahipliğini Modernleştirme. Buradan Erişin.
- Kaynak: https://aws.amazon.com/blogs/machine-learning/mlops-for-batch-inference-with-model-monitoring-and-retraining-using-amazon-sagemaker-hashicorp-terraform-and-gitlab-ci-cd/
- :vardır
- :dır-dir
- :olumsuzluk
- :Neresi
- $UP
- 100
- 125
- 13
- 15 yıl
- %15
- %26
- 29
- 500
- 7
- a
- Hakkımızda
- hızlandırmak
- erişim
- başarılı
- Hesap
- Hesaplar
- doğruluk
- karşısında
- gerçek
- katma
- ekleme
- ilave
- Ek
- adres
- Benimseme
- karşı
- AI / ML
- Türkiye
- veriyor
- boyunca
- Ayrıca
- Amazon
- Amazon Adaçayı Yapıcı
- Amazon Web Servisleri
- an
- analiz
- ve
- ve altyapı
- herhangi
- api
- Uygulama
- Uygulama Geliştirme
- Uygulanması
- yaklaşım
- uygun
- onay
- onayları
- onaylamak
- onaylı
- mimari
- ARE
- AS
- yönleri
- ilişkili
- At
- denetlenebilirlik
- yetki vermek
- Oto
- otomata
- Otomatik
- otomatik olarak
- Otomasyon
- mevcut
- AWS
- AWS Lambda
- AWS Profesyonel Hizmetleri
- merkezli
- Temel
- BE
- Çünkü
- olmuştur
- önce
- yarar
- İYİ
- en iyi uygulamalar
- Büyük
- büyük Veri
- yazı tahtası
- vücut
- Kitaplar
- her ikisi de
- şube
- bina
- yapılı
- iş
- by
- hesaplar
- hesaplama
- çağrı
- çağrı
- CAN
- dava
- merkezi
- zorluklar
- zor
- değişiklik
- değişiklikler
- değiştirme
- Kontrol
- denetleme
- Çekler
- sınıflandırma
- bulut
- bulut benimseme
- bulut altyapısı
- kod
- Sütunlar
- Şirketler
- karşılaştırarak
- tamamlamak
- karmaşıklıklar
- uyma
- oluşan
- kavram
- yapılandırma
- birlikte
- kısıtlamaları
- içeren
- sürekli
- kontrol
- kontroller
- Kongre
- maliyetler
- olabilir
- yaratmak
- çevrimiçi kurslar düzenliyorlar.
- oluşturur
- Oluşturma
- oluşturma
- kriket
- görenek
- Müşteriler
- keskin kenar
- veri
- veri bilimi
- veri bilimcisi
- veri-güdümlü
- beyan
- Varsayılan
- tanımlı
- tanımlar
- derece
- teslim
- göstermek
- gösterdi
- dağıtmak
- konuşlandırılmış
- dağıtma
- tanımlamak
- Dizayn
- ayrıntı
- ayrıntılar
- algılandı
- geliştirmek
- gelişme
- farklı
- yön
- direkt olarak
- dizinleri
- keşfeder
- tartışmak
- liman işçisi
- yok
- Değil
- gereken
- sırasında
- her
- kolay
- etkili bir şekilde
- verim
- verimli
- ya
- gidermek
- E-posta
- Işçi
- enerji
- mühendis
- Mühendislik
- geliştirmeleri
- sağlamak
- sağlanması
- kuruluş
- işletmelerin
- Tüm
- çevre
- hata
- değerlendirme
- Etkinlikler
- örnek
- aşıyor
- uyarılmış
- infaz
- mevcut
- deneyim
- f1
- FAIL
- başarısız
- başarısız
- Özellikler(Hazırlık aşamasında)
- şekil
- fileto
- dosyalar
- mali
- finansal hizmetler
- Ad
- sabit
- takip etme
- İçin
- biçim
- bulundu
- itibaren
- işlev
- fonksiyonlar
- Gates,
- genel
- oluşturulan
- üreten
- Git
- GitHub
- Go
- gidiş
- büyük
- Zemin
- grup
- rehberlik
- el
- kullanma
- Var
- he
- yardımcı olur
- onun
- tarih
- Ne kadar
- Nasıl Yapılır
- HTML
- http
- HTTPS
- Hiperparametre optimizasyonu
- ID
- belirlenmesi
- Kimlik
- if
- göstermektedir
- uygulama
- uygulanması
- in
- dahil
- içerir
- Dahil olmak üzere
- Artırmak
- bağımsız
- bağımsız
- gösterir
- bireysel
- Endüstri
- bilgi
- Altyapı
- girişimler
- yenilikler
- giriş
- girişler
- sigorta
- bütünleşme
- etkileşime
- içine
- tanıtmak
- sorunlar
- IT
- ONUN
- İş
- Mesleki Öğretiler
- jpg
- json
- sadece
- anahtar
- Etiketler
- son
- öncülük etmek
- öğrenme
- Led
- yaşam döngüsü
- çizgi
- Liste
- yerel
- log
- makine
- makine öğrenme
- Ana
- Bakımı
- yapmak
- yönetmek
- yönetim
- yönetme
- Manuel
- el ile
- işaretlenmiş
- yüksek lisans
- malzeme
- Neden
- Toplandı
- mesaj
- mesajları
- metrik
- Metrikleri
- ML
- MLO'lar
- model
- Modelleme
- modelleri
- değiştirmek
- izleme
- Daha
- çoklu
- adlı
- adlandırma
- gerekli
- gerek
- gerekli
- ihtiyaçlar
- ağ
- yeni
- yeni
- nlp
- yok hayır
- tebliğ
- bildirimleri
- roman
- nesne
- elde etmek
- edinme
- of
- teklif
- Teklifler
- sık sık
- on
- olanlar
- bir tek
- operasyon
- Operasyon
- optimizasyon
- optimize
- or
- sipariş
- organizasyonlar
- Düzenlenmiş
- orijinal
- Diğer
- çıktı
- dışında
- paket
- paketler
- çiftleri
- parametreler
- Bölüm
- belirli
- geçer
- tutkulu
- yol
- Yapmak
- performans
- yapılan
- fotoğrafçılık
- boru hattı
- plan
- planlanmış
- Platon
- Plato Veri Zekası
- PlatoVeri
- oynama
- Nokta
- yoksul
- Çivi
- uygulamalar
- Tahminler
- hazırlar
- önkoşullar
- mevcut
- sundu
- Önceki
- Sorun
- devam etmek
- süreç
- İşlenmiş
- üretim
- profesyonel
- kar
- Tanıtılan
- önerilen
- kanıtlanmış
- sağlanan
- sağlar
- sağlama
- Çekiyor
- Itmek
- Python
- kalite
- Çiğ
- Okumak
- Okuma
- alır
- alma
- son
- kayıt
- azaltmak
- azaltarak
- ilişkin
- kayıt olmak
- kayıtlı
- kayıt
- kayıtlar
- kayıtlar
- kayıt
- düzenli
- kalan
- tekrarlanabilir
- Raporlar
- Depo
- temsil
- gereklidir
- Yer Alan Kurallar
- gerektirir
- Kaynaklar
- bu
- sırasıyla
- sorumlu
- Sonuçlar
- devam et
- yeniden kullanılabilir
- yorum
- yol
- Rol
- kurallar
- koşmak
- koşucu
- koşu
- ishal
- sagemaker
- SageMaker Çıkarımı
- SageMaker Boru Hatları
- ölçeklenebilirlik
- program
- çizelgeleme
- Bilim
- bilim adamı
- Gol
- scriptler
- sdk
- Bölüm
- göndermek
- gönderme
- gönderir
- hizmet vermek
- vermektedir
- Hizmetler
- set
- kurulum
- birkaç
- Paylaşılan
- meli
- gösterilen
- Gösteriler
- önemli
- Basit
- tek
- Yazılım
- yazılım Mühendisliği
- çözüm
- Çözümler
- ÇÖZMEK
- kaynaklar
- Kaynak Bulma
- özel
- Belirtilen
- Spor
- Aşama
- sahneleme
- başlama
- XNUMX dakika içinde!
- Eyalet
- istatistik
- Durum
- adım
- Basamaklar
- hafızası
- mağaza
- depolamak
- Stratejileri
- yapısal
- stüdyo
- başarılı
- Başarılı olarak
- böyle
- Takım elbise
- Destek
- Destekler
- tablo
- TAG
- alma
- Hedef
- Görev
- takım
- teknikleri
- Teknolojileri
- şablon
- Terraform
- göre
- o
- The
- ve bazı Asya
- Onları
- sonra
- Orada.
- böylece
- Bunlar
- onlar
- Re-Tweet
- üç
- eşik
- İçinden
- zaman
- için
- araçlar
- üst
- Konular
- iz
- kaydını izlemek
- eğitilmiş
- Eğitim
- Dönüşüm
- şeffaf
- Seyahat
- tetikleyebilir
- tetiklenir
- Hakikat
- DÖNÜŞ
- iki
- tip
- tipik
- ui
- altında
- çizgi
- Güncelleme
- güncellenmesi
- Yüklenen
- Yükleme
- kullanım
- Kullanılmış
- kullanıcı
- kullanım
- kullanma
- kullanmak
- kullanılan
- değer
- değişken
- doğrulamak
- versiyon
- sürümler
- üzerinden
- İHLAL
- uyarı
- Yol..
- yolları
- we
- ağ
- web hizmetleri
- İYİ
- ne zaman
- olup olmadığını
- hangi
- süre
- DSÖ
- irade
- ile
- içinde
- İş
- iş akışı
- iş akışları
- çalışma
- tatlım
- yıl
- henüz
- Sen
- zefirnet