Amazon MLA-C01: Wizja komputerowa, NLP i specjalistyczne ML — Przewodnik do nauki

Część AWS Machine Learning Engineer Associate MLA-C01 — Przewodnik do nauki. Ćwicz ze zweryfikowanymi odpowiedziami w centrum egzaminów Amazon, albo rozwiąż testy na czas na ExamRoll.io.

Kluczowe pojęcia

Rozwiązania z zakresu widzenia komputerowego i NLP w AWS opierają się na trzech warstwowych obszarach: pozyskiwaniu i bezpieczeństwie danych, przygotowaniu cech i etykiet oraz cyklu życia modelu (trenowanie, rejestr, wdrażanie, monitorowanie). W przypadku klasyfikacji obrazów i wykrywania obiektów, procesy treningowe koncentrują się na przechowywaniu zasobów z etykietami w Amazon S3 z silnym szyfrowaniem i kontrolą sieciową, formatach adnotacji takich jak Pascal VOC / COCO do wykrywania obiektów oraz RecordIO lub TFRecord do treningu o wysokiej przepustowości. W przypadku klasyfikacji tekstu i rozpoznawania jednostek nazwanych (NER), dane wejściowe to zazwyczaj ztokenizowane sekwencje (WordPiece/BPE dla modeli transformer) lub obiekty JSON rozdzielone znakiem nowej linii z etykietami; przetwarzanie wstępne musi zachowywać mapowanie tokenów na pozycje znaków w przypadku korzystania z wyników Rekognition Textract lub zakresów etykietowanych przez człowieka, aby zapewnić spójne dopasowanie etykiet NER. Inżynieria cech dla tabelarycznych modeli do wykrywania oszustw koncentruje się na agregacji w oknach czasowych, redukcji kardynalności cech kategorycznych i spójnym kodowaniu między treningiem a serwowaniem; użycie scentralizowanej transformacji (przepływ w Feature Store lub Data Wrangler) zapobiega rozbieżnościom (skew) między treningiem offline a wnioskowaniem online.

Wybory dotyczące budowy modeli przekładają się na wyspecjalizowane usługi AWS: Amazon SageMaker oferuje wbudowane algorytmy (XGBoost, Linear Learner, Random Cut Forest) i zarządzane kontenery dla frameworków (MXNet, TensorFlow, PyTorch) oraz SageMaker Clarify do analizy obciążenia (bias) i wyjaśnialności. Amazon Rekognition obejmuje gotowe API do analizy obrazów do etykietowania, wykrywania twarzy/celebrytów oraz trenowania z niestandardowymi etykietami za pomocą Rekognition Custom Labels, gdy wymagany jest niski narzut operacyjny. Do ekstrakcji tekstu i danych ustrukturyzowanych z dokumentów służy Amazon Textract, który zapewnia OCR oraz ekstrakcję formularzy i tabel; do zadań na poziomie języka, takich jak analiza sentymentu, rozpoznawanie jednostek czy modelowanie tematów, Amazon Comprehend dostarcza zarządzane API oraz Comprehend Medical do klinicznego NER. Kluczowe dla środowiska produkcyjnego jest połączenie tych elementów w spójny potok (pipeline), aby przetwarzanie wstępne, dane wejściowe modelu i monitorowanie były odtwarzalne i audytowalne.

Kluczowe usługi i konfiguracja

Główne usługi AWS i istotne parametry API/konfiguracji, które należy znać, to Amazon SageMaker (TrainingJob, ModelPackage, ModelPackageGroup, ModelRegistry), SageMaker Pipelines (RegisterModel, CallbackStep, ConditionStep), SageMaker Model Monitor i Clarify (BaselineConfig, DataConfig, ModelConfig, bias_config), Amazon Rekognition, Amazon Comprehend, Amazon Textract, AWS Glue i Lake Formation. Aby zapewnić bezpieczną, izolowaną przestrzeń dyskową, skonfiguruj S3 z szyfrowaniem po stronie serwera przy użyciu SSE-KMS (S3.PutBucketEncryption z SSEKMSKeyId), dołącz polityki zasobnika (bucket policies) ograniczające dostęp do roli wykonawczej SageMaker i włącz bramkowy punkt końcowy VPC (Gateway VPC endpoint) dla S3 w celu zapewnienia prywatnych transferów sieciowych. Uruchamiając zadania treningowe, ustaw parametr VpcConfig (SecurityGroupIds i Subnets) w CreateTrainingJob, aby instancje działały w VPC klienta, oraz włącz NetworkIsolation i InstanceMetadataServiceConfiguration, aby ograniczyć dostęp.

Aby centralnie zarządzać modelami przy minimalnym narzucie operacyjnym, użyj SageMaker Model Registry, tworząc ModelPackageGroup i dodając wersje ModelPackage z ModelApprovalStatus ustawionym na ‘PendingManualApproval’ za pomocą CreateModelPackage. Zautomatyzuj bramkę ręcznego zatwierdzania, dodając CallbackStep lub dedykowany krok „ManualApproval” w SageMaker Pipelines; potok czeka na sygnał zewnętrzny, a następnie wywołujesz UpdateModelPackage, aby ustawić ModelApprovalStatus=‘Approved’ w celu wdrożenia. Do przeprowadzania na żądanie ocen obciążenia (bias) lub dryftu wdrożonych punktów końcowych czasu rzeczywistego, użyj SageMaker Clarify do metryk obciążenia i SageMaker Model Monitor do dryftu danych i predykcji: przechwytuj dane wejściowe i wyjściowe wnioskowania (payloads), włączając DataCaptureConfig w CreateEndpoint (EnableCapture, CaptureOptions, DestinationS3Uri), a następnie uruchom zadanie przetwarzania Clarify za pomocą CreateProcessingJob z parametrami SDK Clarify DataConfig, ModelConfig i bias_config, aby natychmiast obliczyć metryki dryftu.

Istotne usługi to:

Wzorce projektowe i kompromisy

W przypadku klasyfikacji tabelarycznej, takiej jak wykrywanie oszustw, praktycznym wzorcem projektowym jest centralizacja surowych źródeł w bezpiecznym data lake na S3 przy użyciu AWS Glue lub DMS dla tabel relacyjnych, skatalogowanie ich w Glue Data Catalog i egzekwowanie dostępu za pomocą Lake Formation. Transformacje są definiowane jednorazowo w przepływach SageMaker Data Wrangler lub jako zadania Glue ETL i utrwalane w SageMaker Feature Store, dzięki czemu te same transformacje są uruchamiane zarówno podczas trenowania, jak i wnioskowania. Wybór Feature Store dodaje początkowo kroków operacyjnych, ale redukuje problem niezgodności danych (skew) i czas debugowania; bezpośrednie transformacje w zadaniu mają niższy początkowy narzut, ale utrudniają powtarzalność i obliczanie cech w czasie rzeczywistym (online). Jeśli chodzi o algorytmy treningowe, XGBoost (kontener dostarczany przez SageMaker) jest dobrym domyślnym wyborem do wykrywania oszustw ze względu na jego wydajność na danych tabelarycznych i obsługę kolumn z wagami; skonfiguruj hiperparametry za pomocą HyperParameters w CreateTrainingJob i przekaż kolumnę z wagami lub ustaw scale_pos_weight, aby przeciwdziałać niezrównoważeniu klas, co pozwala uniknąć bardziej złożonych potoków próbkowania (resamplingu).

W przypadku computer vision, jeśli potrzebujesz szybkich iteracji, a liczba oznaczonych danych jest ograniczona, Rekognition Custom Labels zapewnia najszybszą ścieżkę przy minimalnym wysiłku operacyjnym; aby uzyskać maksymalną kontrolę i niestandardowe architektury, użyj treningu w SageMaker z MXNet/PyTorch i przechowuj zbiory danych w formacie RecordIO lub ImageFolder na S3. Do wykrywania obiektów preferuj trenowanie z frameworkami, które generują format COCO i wykorzystuj trenowanie rozproszone SageMaker, określając InstanceType=ml.p3.2xlarge lub wyższy i ustawiając konfigurację MPI lub horovod w AlgorithmSpecification i TrainingInputMode zadania TrainingJob. Kompromisy obejmują przepustowość w stosunku do kosztów: zadania wsadowe (batch jobs) wykorzystujące zarządzane instancje spot obniżają koszty, ale wprowadzają opóźnienia i ryzyko przerwania; buforowanie potoku (pipeline caching) w SageMaker Pipelines redukuje ponowne uruchamianie kroków, gdy dane wejściowe są niezmienione, co minimalizuje niepotrzebny czas uruchamiania zasobów obliczeniowych.

Częste pułapki i kryteria decyzyjne

Częstą pułapką jest brak centralizacji artefaktów preprocessingu. Jeśli tokenizacja, mapowanie etykiet dla NER lub kodery kategoryczne są stosowane inaczej podczas treningu i inferencji, wprowadza to trudne do wyśledzenia błędy predykcji. Użyj Feature Store lub utrwalaj artefakt preprocessingu (tokenizer, vocab.json, label_map) razem z pakietem modelu w Model Registry, aby wdrożony kontener pobierał i stosował dokładnie te same transformacje. Innym częstym błędem jest niewystarczające przechwytywanie danych do monitorowania: bez włączenia DataCaptureConfig na punkcie końcowym i odpowiedniego przepływu pracy etykietowania danych referencyjnych (ground-truth), Model Monitor nie może obliczyć metryk dryfu lub jakości, a wyjaśnienie spadków metryki F1 staje się zgadywanką. W przypadku nierównowagi klas, najmniej intensywnym operacyjnie rozwiązaniem jest użycie ważenia wspieranego przez algorytm (na przykład hiperparametru scale_pos_weight w XGBoost lub dostarczenie kolumny z wagami w danych treningowych) zamiast ślepego upsamplingu/downsamplingu, który może wprowadzić błąd próbkowania.

Problem praktyczny: Scenariusz użycia

Nazwa firmy: MeridianPay. MeridianPay musi zbudować potok do wykrywania oszustw w czasie rzeczywistym, łączący logi transakcji w S3 i profile klientów w lokalnej (on-prem) bazie danych MySQL. Wymagania obejmują bezpieczną, izolowaną przestrzeń dyskową, centralne repozytorium modeli z ręcznym zatwierdzaniem, minimalne opóźnienie startowe przy kolejnych uruchomieniach treningu, zautomatyzowane wykrywanie anomalii i wizualizację po agregacji, obsługę mieszanych cech kategorycznych i numerycznych przy minimalnym nakładzie operacyjnym, obsługę nierównowagi klas oraz produkcyjny model, który może być monitorowany pod kątem dryfu i stronniczości (bias) na żądanie.

  1. Agregacja i zabezpieczanie danych: użyj AWS DMS do ciągłej replikacji tabel z lokalnej bazy MySQL do zaszyfrowanej strefy docelowej (landing zone) w S3, uruchom crawlery AWS Glue i zarejestruj wynikowe tabele w AWS Glue Data Catalog. Wymuszaj dostęp za pomocą AWS Lake Formation i polityk bucketów S3; włącz Gateway VPC Endpoint dla S3 i skonfiguruj rolę wykonawczą SageMaker z najmniejszymi wymaganymi uprawnieniami (least-privilege) IAM. Użyj SSE-KMS na S3 z kluczem KMS zarządzanym przez klienta i ustaw BucketEncryption z KmsMasterKeyId.

  2. Transformacja i przechowywanie cech: twórz transformacje w SageMaker Data Wrangler lub zadaniu Glue ETL, utrwalaj pochodne cechy w Amazon SageMaker Feature Store w magazynie online (online store) dla odczytu o niskim opóźnieniu podczas inferencji oraz w magazynie offline (offline store) do celów treningowych. Przechowuj artefakty tokenizera/kodera razem z artefaktami modelu. Użyj API FeatureGroup do tworzenia grup cech i skonfiguruj RecordIdentifierFeatureName oraz EventTimeFeatureName, aby zapewnić poprawność w punkcie czasu (point-in-time).

  3. Trening przy minimalnym narzucie operacyjnym: użyj wbudowanego kontenera SageMaker XGBoost, tworząc CreateTrainingJob z AlgorithmSpecification wskazującym na URI kontenera XGBoost, określ VpcConfig, aby uruchomić zadanie w VPC, przekaż HyperParameters, w tym “objective”:“binary:logistic” i ustaw “scale_pos_weight” na stosunek przykładów negatywnych do pozytywnych, aby zaradzić nierównowadze klas. Aby zmniejszyć powtarzalne opóźnienia startowe, zaimplementuj SageMaker Pipelines i włącz buforowanie (caching) dla kroków przygotowania danych, aby kolejne uruchomienia potoku pomijały niezmienione kroki; używaj odczytów z trwałego feature store zamiast ponownego przetwarzania, gdy tylko jest to możliwe.

  4. Rejestr modeli i ręczne zatwierdzanie: rejestruj wytrenowane modele w ModelPackageGroup za pomocą CreateModelPackage z ModelApprovalStatus=‘PendingManualApproval’. Zintegruj krok SageMaker Pipelines CallbackStep, który pauzuje po kroku RegisterModel; recenzenci następnie wywołują UpdateModelPackage, aby ustawić ModelApprovalStatus=‘Approved’. Użyj tego zatwierdzonego pakietu do konfiguracji CreateModel i CreateEndpoint.

  5. Wykrywanie anomalii i wizualizacja: po agregacji użyj Amazon Lookout for Metrics do automatycznego wykrywania anomalii na zagregowanych szeregach czasowych transakcji i skonfiguruj integracje z S3/Glue. Do wizualizacji połącz wyniki z Lookout i dane w dashboardach QuickSight lub użyj notatników SageMaker Studio do wizualizacji dryfu cech. Aby przeprowadzić ocenę stronniczości/dryfu modelu na żądanie dla wdrożonych punktów końcowych, włącz DataCaptureConfig w CreateEndpoint i uruchom na żądanie zadanie przetwarzania SageMaker Clarify (CreateProcessingJob) z DataConfig i ModelConfig wskazującymi na przechwycone dane; użyj Model Monitor/CreateMonitoringSchedule do planowania cyklicznych kontroli oraz do uruchomienia jednorazowej analizy za pomocą StartMonitoringSchedule.

Uzasadnienie: to podejście centralizuje dane i transformacje, wykorzystuje usługi zarządzane tam, gdzie zmniejszają one obciążenie operacyjne (Glue/DMS/Lookout/Comprehend/Textract w swoich dziedzinach), korzysta z SageMaker Model Registry i Pipelines do wersjonowania i ręcznego zatwierdzania przy minimalnej niestandardowej infrastrukturze, rozwiązuje problem nierównowagi klas za pomocą parametrów algorytmu, unikając kosztownego resamplingu, oraz zapewnia zarówno zaplanowane, jak i dostępne na żądanie oceny stronniczości/dryfu za pomocą Model Monitor i Clarify, utrzymując dane zaszyfrowane i izolowane sieciowo.


Optymalizacja kosztów dla obciążeń ML · Wszystkie domeny

Przećwicz te pytania → · Testy na czas na ExamRoll.io →

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.

Zdaj egzamin →

Przeglądaj Amazon →

Related guides

Dostęp all-in-one

Jedna subskrypcja. Każdy egzamin.

Każdy plan odblokowuje nieograniczone wyszukiwanie odpowiedzi, testy praktyczne, wyjaśnienia AI i pełną bibliotekę zasobów — w ponad 20 językach.

Miesięczny
24.87
Just €0.83/day
Wszystko w cenie:
  • Nieograniczone wyszukiwanie odpowiedzi
  • Nieograniczone testy praktyczne
  • Wyjaśnienia wspomagane AI
  • Pełna biblioteka zasobów
  • Ponad 20 języków
  • Cotygodniowe aktualizacje treści
  • Nagrody i polecenia
  • Priorytetowe wsparcie
Rozpocznij bezpłatny okres próbny

Karta kredytowa nie jest wymagana*

Najlepsza wartość
12 miesięcy
179.87
Just €0.49/daySave 40%
Wszystko w cenie:
  • Nieograniczone wyszukiwanie odpowiedzi
  • Nieograniczone testy praktyczne
  • Wyjaśnienia wspomagane AI
  • Pełna biblioteka zasobów
  • Ponad 20 języków
  • Cotygodniowe aktualizacje treści
  • Nagrody i polecenia
  • Priorytetowe wsparcie
Rozpocznij bezpłatny okres próbny

Karta kredytowa nie jest wymagana*

✓ Plan darmowy w zestawie · ✓ Anuluj w dowolnym momencie · ✓ Wszystkie plany odblokowują pełny produkt