Amazon MLA-C01: Model Eğitimi ve Hiperparametre Optimizasyonu — Çalışma kılavuzu

Şunun bir parçası: AWS Machine Learning Engineer Associate MLA-C01 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Amazon sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.

Temel kavram

Amazon SageMaker’de model eğitimi, konteynerize edilmiş eğitim kodunu, işlem kaynaklarını, kalıcı depolamayı ve isteğe bağlı dağıtık iletişim yapılarını birleştiren düzenlenmiş bir süreçtir. Bir SageMaker eğitim işi, bir eğitim imajı veya çerçeve tahmincisi (estimator), S3 konumlarını işaret eden bir girdi verisi belirtimi ve InstanceType, InstanceCount ve VolumeSizeInGB’yi içeren bir kaynak yapılandırması ile tanımlanır. Yönetilen spot eğitimi için EnableManagedSpotTraining’i true olarak ayarlarsınız ve SageMaker’ın yedek kapasite için teklif verebilmesi ve işleri izin verilen pencereniz içinde devam ettirebilmesi veya durdurabilmesi için MaxWaitTimeInSeconds ve MaxRuntimeInSeconds sağlarsınız. Kontrol noktası oluşturma (checkpointing), S3Uri ve LocalPath ile CheckpointConfig aracılığıyla yapılandırılır; yönetilen spot örneklerini kullanırken sık sık kontrol noktası oluşturmalı ve kesintiye uğrayan işlerin yeniden denenebilmesi için MaxWaitTimeInSeconds’i MaxRuntimeInSeconds’den yeterince büyük ayarlamalısınız.

Dağıtık eğitim, veri paralel (data-parallel) veya model paralel (model-parallel) stratejileri olarak uygulanır. SageMaker, PyTorch DistributedDataParallel veya Horovod aracılığıyla yerel dağıtık veri paralel eğitimini destekler ve optimize edilmiş NCCL iletişimi için smdistributed.dataparallel ile smdistributed kütüphanesini sunar. Model paralelliği, smdistributed.modelparallel veya çerçeveye özgü bölümleme yoluyla kullanılabilir. Yüksek verimli düğümler arası iletişim, NVLink ve EFA (Elastic Fabric Adapter) desteğine sahip örnek aileleri gerektirir—verimli gradyan all-reduce işlemi için eğitim betiğinizin gerektirdiği şekilde ml.p4d, ml.p3dn veya diğer EFA özellikli örnek türlerini seçin ve use_mpi veya use_nccL’yi ayarlayın. Büyük ölçekli işler için, işlem-iletişim oranlarını dengelemek amacıyla model parçacık boyutlarınıza göre uyarlanmış GPU belleği ve ağ özelliklerine sahip InstanceTypes sağlayın.

Hiperparametre optimizasyonu, bir hiperparametre uzayında arama yapmak ve bir hedef metriği optimize etmek için birçok eğitim işi başlatan SageMaker Otomatik Model Ayarlama (AMT) tarafından gerçekleştirilir. HyperParameterTuningJobConfig, ParameterRanges’i, MaxNumberOfTrainingJobs ve MaxParallelTrainingJobs ile ResourceLimits’i ve bir Strateji’yi (varsayılan olarak Bayesian; alternatifler arasında kapsamlı veya daha az ilişkili aramalar için Random veya Grid bulunur) içerir. AMT’nin eğitim günlüklerini ayrıştırabilmesi için ObjectiveMetricName ve MetricDefinitions’i tanımlayın; hedefiniz F1 puanı ise, ObjectiveType’ı Maximize olarak ayarlayın ve MetricDefinitions regex’inizin yayılan metrikle eşleştiğinden emin olun. Bütçeyi korurken ayarlamayı hızlandırmak için, önceki ayarlama işlerinin sonuçlarını yeniden kullanmak üzere WarmStartConfig’i kullanın ve umut vermeyen eğitim işlerini sonlandırmak için desteklendiği yerlerde erken durdurma politikalarını (EarlyStoppingType: Auto) etkinleştirin.

Anahtar hizmetler ve yapılandırma

Uçtan uca bir eğitim ve ayarlama iş akışı oluştururken genellikle birkaç AWS hizmetini ve SageMaker yeteneğini birlikte kullanırsınız:

Bir eğitim işi yapılandırması içinde InstanceType ve InstanceCount’u içeren ResourceConfig’i belirtirsiniz ve HyperParameters aracılığıyla hiperparametreleri geçirirsiniz. Yönetilen spot eğitimi için EnableManagedSpotTraining’i dahil edin ve kesintiye uğrayan işlerin durumlarını kaydedebilmesi için CheckpointConfig.S3Uri’yi ayarlayın. CreateHyperParameterTuningJob aracılığıyla ayarlama işlerini başlatırken, HyperParameterTuningJobConfig.ParameterRanges’i IntegerParameterRange, ContinuousParameterRange ve CategoricalParameterRange girişleriyle doldurun ve ResourceLimits’i MaxNumberOfTrainingJobs ve MaxParallelTrainingJobs ile ayarlayın. Aramayı önceki sonuçlardan başlatmak için ParentHyperParameterTuningJobs ve WarmStartType’ı IDENTICAL_DATA_AND_ALGORITHM veya TRANSFER_LEARNING olarak ayarlanmış WarmStartConfig’i kullanın.

Güvenlik ve operasyonel kontrol için, SageMaker Model Kayıt Defteri’ndeki bir ModelPackageGroup’ta ModelPackage nesnelerini kaydederek model yapıtlarını merkezileştirin; dağıtımdan önce Approved olarak manuel bir değişiklik gerektirmek için ModelApprovalStatus’u PendingManualApproval olarak ayarlayın. ModelPackage.ModelApprovalStatus’u UpdateModelPackage API’si aracılığıyla güncelleyen bir manuel onay eylemi oluşturmak için Model Kayıt Defteri olaylarını AWS CodePipeline veya AWS Step Functions ile birleştirin. Canlı uç noktaları izlemek ve sapmayı (drift) tespit etmek için, uç noktalarda DataCaptureConfig’i etkinleştirin ve dağıtım öncesi istatistikleri CreateMonitoringSchedule ile temel almak için SageMaker Model Monitor’ü kullanın ve daha sonra sürekli değerlendirme için S3 DestinationS3Uri ile BatchTransform veya RealTimeInference veri yakalamayı kullanın.

Tasarım desenleri ve ödünleşimler

Çok sayıda daha küçük parçacıkla veri paralel dağıtık eğitimi seçmek, doğrudan ölçeklendirme sağlar ve modeliniz tek bir GPU’ya sığdığında genellikle en basit desendir. PyTorch DDP veya Horovod kullanan veri paralel yaklaşımlar, ağ yapısı yüksek performanslıysa ve örnekler (instance) EFA ve NCCL’yi destekliyorsa iyi ölçeklenir. Model ağırlıkları tek bir GPU’nun belleğini aştığında, model paralelliği veya pipeline paralelliği gerekir; smdistributed.modelparallel, tensörleri GPU’lar arasında bölümlendirmeye yardımcı olur, ancak bu durum hata ayıklama, checkpoint alma ve hesaplama ile iletişim arasındaki dengeyi kurma konularında karmaşıklığı artırır. Pratik bir tasarım deseni hibrittir: çok büyük katmanlar için model parçalama (sharding) ve çalışan grupları (worker groups) arasında veri paralelliği kullanın.

Hiperparametre ayarlama (tuning) ödünleşimleri öncelikli olarak zaman ve maliyet arasındadır. Geniş kapsamlı bir Rastgele (Random) veya Izgara (Grid) arama basit ama maliyetlidir; Bayesçi optimizasyon (varsayılan AMT stratejisi), aramayı odaklamak için önceki sonuçları kullanır ve iyi bir yapılandırmaya ulaşmak için gereken eğitim işlerinin sayısını azaltabilir. Veri kümesi veya model değişiklikleri artımlı olduğunda, daha önceki ayarlama bilgilerini yeni deneylere aktarmak için WarmStartConfig kullanın. Çok sayıda eğitim işini paralelleştirmek, gerçek zamanlı optimizasyonu hızlandırır ancak anlık maliyeti artırır ve hizmet kotalarına takılabilir; MaxParallelTrainingJobs‘ı ihtiyatlı bir şekilde yapılandırın ve harcamayı azaltmak için ayarlama işlerinde Spot örneklerini (instance) kullanın, ancak kesintilere tolerans göstermek için CheckpointConfig ve MaxWaitTimeInSeconds‘ı daima yapılandırın.

Checkpoint sıklığı ve depolama seçimi hem dayanıklılığı hem de maliyeti etkiler. Sık checkpoint’ler kesintilerde kaybedilen hesaplamayı azaltır ancak S3 iş çıkarma (throughput) ve gecikme (latency) ek yükü getirir; container içinde artımlı checkpoint’ler kullanın (LocalPath) ve kalıcı kurtarma için S3 ile eşzamansız olarak senkronize edin. Yönetilen spot örneklerinde (managed spot instances) eğitim yaparken, sağlam bir checkpoint aralığı belirleyin ve tipik kesinti pencereleri içinde tamamlanabilecek eğitim işleri için daha az sayıda örnek (instance) kullanın veya tutarlı checkpoint’leri başa ve sona eklemek için SageMaker tarafından sağlanan SIGTERM kancalarını (hooks) kullanarak eğitim döngüsünü ön alıma (preemption) tolerans gösterecek şekilde tasarlayın.

Yaygın tuzaklar ve karar kriterleri

Yaygın bir operasyonel tuzak, performans testi yapmadan özel container imajlarına güvenmektir; çerçeve tarafından sağlanan imajlar (SageMaker önceden oluşturulmuş PyTorch, TensorFlow, XGBoost imajları) daha hızlı başlar, otomatik metrik yayımı entegrasyonu içerir ve soğuk başlangıç gecikmesini en aza indirir. HPO’da sıkça yapılan bir diğer hata, AMT’nin doğru sinyali bulmasını ve optimize etmesini engelleyen yanlış yapılandırılmış MetricDefinitions veya ObjectiveMetricName’dir; bir ayarlama işini ölçeklendirmeden önce loglardan metrikleri çıkarmak için kullanılan regex’i her zaman doğrulayın. Yönetilen spot eğitimi kullanırken CheckpointConfig’i etkinleştirmeyi ihmal etmek, kesinti durumunda iş ilerlemesinin kaybolmasına neden olur ve daha uzun kümülatif çalışma süresine ve daha yüksek maliyete yol açabilir.

Güvenlik ve yönetişim kararları, en az ayrıcalık ve model yaşam döngüsü kontrolünü merkeze almalıdır. Yalnızca yetkilendirilmiş ModelPackage sürümlerinin üretime ulaşmasını sağlamak için SageMaker Model Registry’yi ModelPackage onay iş akışı ve IAM politikalarıyla birlikte kullanın. S3’teki eğitim verilerini şifreleme (SSE-S3 veya SSE-KMS) ile koruyun ve erişimi, eğitim işi tarafından üstlenilen IAM rolleri (CreateTrainingJob’daki RoleArn parametresi) ve merkezi veri erişim politikalarının gerekli olduğu yerlerde Lake Formation aracılığıyla kontrol edin. Sürüklenme tespiti ve kök neden analizi için, hangi artifact sürümlerinin performansının düştüğünü izlemek ve yeniden dağıtımdan önce insan müdahalesi gerektiren onay akışlarını tetiklemek amacıyla SageMaker Model Monitor’ü Model Registry artifact’leriyle birleştirin.

Pratik Problem: Kullanım Senaryosu

Şirket: FinGuard Inc. — Zorluk: S3’te depolanan işlem logları ve şirket içi MySQL müşteri profilleri üzerinde eğitilmiş bir dolandırıcılık tespit modeli oluşturmak, maliyeti en aza indirmek, spot kesintilerini tolere etmek, otomatik hiperparametre optimizasyonu çalıştırmak, üretim dağıtımından önce manuel onayı zorunlu kılmak ve dağıtım sonrası yanlılığı veya sürüklenmeyi tespit etmek.

  1. Veri toplama ve hazırlama: S3 işlem loglarını doğrudan alın ve şirket içi MySQL veritabanına bir JDBC bağlantısı ile AWS Glue kullanarak müşteri profili tablolarını tarayın ve kataloglayın. Düşük gecikmeli erişim ve şema tutarlılığını zorunlu kılmak için derlenmiş özellikleri SageMaker Feature Store FeatureGroup’a kaydedin; OfflineStore S3’ü SSE-KMS ile şifreleyin ve erişimi IAM ve Lake Formation politikaları aracılığıyla kontrol edin.

  2. Eğitim ve dağıtık yapılandırma: Başlangıç modeli için yerleşik bir XGBoost container’ı ile bir SageMaker Estimator kullanın; temel için ResourceConfig’i InstanceType ml.m5.4xlarge ile yapılandırın ve GPU hızlandırmalı deneyler için ml.p3.2xlarge’a ölçeklendirin. Büyük deneyler için EFA özellikli instancelarda (ml.p3dn.24xlarge veya ml.p4d.24xlarge) smdistributed.dataparallel kullanın ve CheckpointConfig.S3Uri’yi s3://finguard-checkpoints/{job-name} ve LocalPath’i /opt/ml/checkpoints olarak ayarlayın. EnableManagedSpotTraining’i true olarak ayarlayarak ve MaxWaitTimeInSeconds’i yeniden denemelere izin vermek için en az 2× MaxRuntimeInSeconds olarak belirleyerek yönetilen spot eğitimini etkinleştirin.

  3. Hiperparametre optimizasyonu: eta, max_depth ve scale_pos_weight (ağır ön işleme olmadan sınıf dengesizliğini ele almak için) için HyperParameterTuningJobConfig.ParameterRanges ile SageMaker Automatic Model Tuning’i başlatın. ObjectiveMetricName’i validation:F1 olarak ayarlayın ve F1 değerini çıkaran bir MetricDefinitions regex’i sağlayın. Strategy Bayesian, MaxNumberOfTrainingJobs 50 ve MaxParallelTrainingJobs 5 ile ResourceLimits ve önceki ayarlama sonuçlarından yineleme yapılıyorsa WarmStartConfig kullanın. Maliyeti düşürmek için ayarlama işlerini yönetilen spot instancelarda çalıştırın ve her eğitim işi için CheckpointConfig’in aktif olduğundan emin olun.

  4. Model yönetişimi ve dağıtımı: En iyi model artifact’lerini SageMaker Model Registry’de bir ModelPackageGroup içinde bir ModelPackage olarak kaydedin ve ModelApprovalStatus’ü PendingManualApproval olarak ayarlayın. İnsan onayı adımı (manuel görev) alan bir AWS Step Functions pipeline’ı uygulayın ve onay üzerine ModelApprovalStatus’ü Approved olarak ayarlamak için UpdateModelPackage’ı çağırın, ardından dağıtım için CreateModel ve CreateEndpointConfig/CreateEndpoint’i tetikleyin. Model Monitor için çıkarım isteklerini ve yanıtlarını s3://finguard-capture’a yakalamak için Endpoint DataCaptureConfig’i kullanın.

AWS gerekçesi: AWS Glue, hibrit veri kaynaklarını merkezileştirir, kataloglar ve SageMaker ile entegre olur; SageMaker Feature Store, özellikleri standartlaştırır ve bunları eğitim ve çıkarım için güvence altına alır; yönetilen spot eğitimi artı CheckpointConfig, ön alımlar arasında ilerlemeyi korurken işlem maliyetini düşürür; MetricDefinitions ve WarmStartConfig ile SageMaker Automatic Model Tuning, bütçeyi kontrol ederken sağlam hiperparametreleri bulmayı hızlandırır; PendingManualApproval ile Model Registry artı Step Functions veya CodePipeline, modellerin üretime en az ayrıcalıkla yükseltilmesini ve yönetişimi zorunlu kılar; SageMaker Model Monitor ve DataCaptureConfig, devam eden model sağlık kontrolleri için otomatik sürüklenme ve yanlılık tespiti sağlar.


Veri Mühendisliği ve Özellik Mühendisliği · Tüm alanlar · Model Değerlendirmesi ve Seçimi

Bu soruları çözün → · ExamRoll.io’da süreli pratik →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Sınavınızı geçin →

Amazon'a göz atın →

Related guides

Hepsi bir arada erişim

Tek abonelik. Her sınav.

Her plan, sınırsız cevap aramayı, pratik testlerini, AI açıklamalarını ve tam kaynak kütüphanesini — 20'den fazla dilde — açar.

Aylık
24.87
Just €0.83/day
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

En iyi değer
12 ay
179.87
Just €0.49/daySave 40%
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

✓ Ücretsiz plan dahil · ✓ İstediğiniz zaman iptal edin · ✓ Tüm planlar tam ürünü açar