Amazon MLA-C01: Veri Mühendisliği ve Özellik Mühendisliği — Ç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
ML için veri mühendisliği, sızıntıyı ve operasyonel yükü en aza indirirken model eğitimi ve çıkarım için tekrarlanabilir, denetlenebilir girdiler üretmekle ilgilidir. Temelinde tutarlı veri alım semantikleri (olay zamanı, kayıt tanımlayıcısı, şema), standart bir meta veri kataloğu ve hem model eğitimi için çevrimdışı hem de gerçek zamanlı çıkarım için çevrimiçi olarak yürütülebilen iyi tanımlanmış dönüşümler bulunur. İş akışlarınızı (pipeline), aynı dönüşüm kodunun (veya aynı Feature Store kayıt tanımlarının) hem eğitim veri kümelerini hem de çıkarım anında döndürülen çevrimiçi özellikleri destekleyeceği şekilde tasarlayın; bu, eğitim/sunum sapmasını (train/serve skew) önler. Zamansal problemler için, her kaydın olay zamanını koruyun ve etiket sızıntısını (label leakage) önlemek için zaman duyarlı birleştirmeler ve bölmeler uygulayın; SageMaker Feature Store kullanırken, CreateFeatureGroup içinde bir RecordIdentifierFeatureName ve bir EventTimeFeatureName belirleyin, böylece sonraki eğitim ve çıkarım adımları aynı anahtarları kullanır.
Özellik mühendisliği, deterministik, tekrarlanabilir dönüşümler ve keşif amaçlı dönüşümler olarak ikiye ayrılır. Deterministik dönüşümler arasında eksik veri doldurma (imputation), ölçeklendirme, kategorik kodlama ve türetilmiş agregasyonlar (hareketli sayımlar, zaman pencereli özellikler) bulunur. Bunları Glue ETL, SageMaker Processing veya SageMaker Data Wrangler’da çalışabilen ve bir çevrimdışı depoya kaydedilebilen (checkpointed) kod olarak yürütün. Yüksek kardinaliteye sahip kategorik özellikler için, kombinatoryal patlamayı önlemek amacıyla basit one-hot kodlama yerine çapraz doğrulama katmanları ile hedef kodlama (target encoding) veya frekans/gömme (embedding) tabanlı temsilleri tercih edin. Sayısal özellikler için, üretimdeki normalizasyonun eğitimdekiyle eşleşmesi amacıyla, bir model yapıtında (artifact) parametre olarak saklanan iş akışına uygun standardizasyonu (ortalama/varyans) veya kuantil dönüşümlerini tercih edin.
Anahtar hizmetler ve yapılandırma
AWS Glue, birçok ML iş akışı için standart ETL ve meta veri katmanını sağlar. S3 ve JDBC kaynakları için Glue Data Catalog’u doldurmak üzere Glue Crawlers’ı kullanın, ardından verileri temizlemek ve dönüştürmek için Spark tabanlı Glue ETL işleri veya Glue Studio görsel işleri oluşturun. Glue işlerini GlueVersion (örneğin 3.0), WorkerType (G.1X, G.2X), NumberOfWorkers, artımlı işleme için JobBookmarks ve awswrangler veya pydeequ gibi kütüphaneleri dahil etmek için "--additional-python-modules" gibi DefaultArguments ile yapılandırın. Şirket içi (on-prem) MySQL’den veri alımı için, JDBC URL’si ile bir Glue bağlantısı kurun ve CDC’yi bir S3 hazırlık alanına (landing zone) yakalamak için Glue işlerini veya AWS DMS’i kullanın; DMS kullanırken, önce tam yükleme (full-load) sonra CDC seçeneğini belirleyin ve verimli çevrimdışı özellikler için hedef olarak S3 parquet formatını seçin.
SageMaker Feature Store, ölçekte düşük operasyonel yük için merkezi özellik yönetimi seçeneğidir. CreateFeatureGroup işlemi FeatureDefinitions, RecordIdentifierFeatureName, EventTimeFeatureName, OnlineStoreConfig (DynamoDB destekli düşük gecikmeli bir depoyu etkinleştirmek için EnableOnlineStore=True) ve çevrimdışı özellikleri Athena/Glue aracılığıyla erişilebilir kılmak için S3Uri ve DataCatalogConfig içeren OfflineStoreConfig gerektirir. Veri hacmine (throughput) bağlı olarak BatchPutRecord veya PutRecord ile veri alın; servise PutRecord izinlerini veren FeatureGroupArn ve RoleArn‘i dahil edin. Çevrimdışı depo, Parquet dosyalarını S3’te kalıcı olarak saklar ve Glue Data Catalog ile otomatik olarak entegre olarak tekrarlanabilir eğitim sorgularını mümkün kılar. Gerçek zamanlı özellikler için çevrimiçi depoya karşı GetRecord kullanın; toplu eğitim birleştirmeleri için çevrimdışı S3 Parquet yolunu tercih edin.
Model yönetişimi ve dağıtım iş akışları için SageMaker Model Registry ve SageMaker Pipelines’ı kullanın. Eğitilmiş modelleri CreateModelPackage veya Pipelines’ın RegisterModel adımıyla kaydedin ve manuel bir onay kapısı zorunlu kılmak için ModelApprovalStatus‘ü "PendingManualApproval" olarak ayarlayın. Pipelines’ı AWS CodePipeline ile entegre edin veya yetkilendirildiğinde UpdateModelPackage aracılığıyla model_package sürümlerinin durumunu "Approved" olarak değiştiren özel bir Lambda ekleyin. Sapma (drift) ve yanlılık (bias) izleme için, yanlılık/temel çizgi (baseline) analizi amacıyla SageMaker Clarify’ı ve sürekli veri/etiket sapması tespiti için SageMaker Model Monitor’ü birleştirin. İsteğe bağlı yanlılık değerlendirmesi için ClarifyProcessor‘ı (sagemaker.processing.ProcessingJob) kullanarak onu çevrimdışı depodaki Parquet yapıtlarına veya Model Monitor tarafından toplanan akış halindeki örneklere yönlendirin.
Tasarım desenleri ve ödünleşimler
Eğitim verimi (throughput) ve karmaşık birleştirmeler (join) önemli olduğunda çevrimdışı öncelikli (offline-first) mimarileri seçin: büyük pencereli özellikleri (windowed features) S3 Parquet’e (Glue/EMR/Glue Spark işleri ile) toplayın ve kalıcı hale getirin, bunları Glue Data Catalog’da kataloglayın ve veri kümelerini S3 önekleri (prefix) ve nesne sürümleme (object-versioning) ile sürümleyin. Bu yaklaşım, yeniden üretilebilirliği ve uygun maliyetli depolamayı destekler ancak yeni özelliklerin (fresh features) sunulmasındaki gecikmeyi artırır. Düşük gecikmeli özellikler gerektiğinde, bir alt kümeyi Feature Store Online’a (DynamoDB) veya bir önbelleğe alma katmanına (caching layer) yansıtın; buradaki ödünleşim, çevrimiçi ve çevrimdışı depoları tutarlı tutmak için gereken operasyonel yüktür. Çevrimdışı kanonik bir görünümü korurken neredeyse gerçek zamanlı güncellemeler elde etmek için Feature Store’un yerleşik BatchPutRecord işlem hatlarını veya Feature Store’a yazan Kinesis Data Streams + Lambda aracılığıyla akış alımını (stream ingestion) kullanın.
İteratif deneme (iterative experimentation) ile üretim verimi (production throughput) karşılaştırmasında, önbelleğe alma özelliğine sahip SageMaker Pipelines önemli bir avantaj sağlar: işlem hattı adımlarında CacheConfig‘i etkinleştirerek, girdileri (parametreler, veri sağlama toplamları/checksums) değişmediğinde işlem gücü yoğun dönüşümlerin ve hatta eğitim adımlarının atlanmasını sağlayın. Bu, aynı işlem gücünü tekrar tekrar sağlamaya (provisioning) kıyasla ardışık çalıştırmalar için başlangıç gecikmesini azaltır. Son derece düşük gecikmeli çıkarım (inference) için maliyet ve karmaşıklıktan ödün verirsiniz: çok modelli uç noktalar (multi-model endpoints) veya sağlanan eşzamanlılık (provisioned concurrency), soğuk başlatma (cold-start) değişkenliğini azaltır ancak maliyeti artırır; Feature Store online ile birlikte hafif bir model konteyneri kullanmak, istek başına orkestrasyonu en aza indirir.
Algoritma ve ön işleme seçimleri de ödünleşimler sunar: yerleşik XGBoost, tablosal dolandırıcılık tespiti (tabular fraud) görevlerinde mükemmeldir ve operasyonel olarak hafif bir çözüm olan yeniden örnekleme (resampling) yapmadan sınıf dengesizliğini (class imbalance) ele almak için scale_pos_weight sağlar. Ancak, gömme (embedding) içeren derin modeller, yüksek kardinaliteye sahip kategorik değişkenleri daha zarif bir şekilde ele alır, fakat daha fazla altyapı ve özellik işlem hattı (feature pipeline) gerektirir. Mümkün olan yerlerde otomatikleştirilmiş dönüşümleri kullanın: SageMaker Data Wrangler ve Glue DataBrew, görsel ve tekrarlanabilir dönüşümler (değer atama/imputation, normalleştirme, yeniden örnekleme/resampling) sağlar ve akışları betiklere (script) veya Feature Store’a aktararak mühendislik süresini azaltabilir.
Tüm alanlar · Model Eğitimi ve Hiperparametre Optimizasyonu →
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 →