Amazon MLS-C01: Modelowanie — nadzorowane i nienadzorowane (klasyczne ML) — Przewodnik do nauki
Część AWS Machine Learning Specialty MLS-C01 — Przewodnik do nauki. Ćwicz ze zweryfikowanymi odpowiedziami w centrum egzaminów Amazon, albo rozwiąż testy na czas na ExamRoll.io.
Wybór modelu i architektury dla problemów nadzorowanych
Wybór modelu zaczyna się od kształtu danych i ograniczeń produkcyjnych. Dla sygnału liniowego z dużą liczbą przykładów i interpretowalnymi współczynnikami, regularyzowana regresja liniowa lub logistyczna (SageMaker LinearLearner lub scikit-learn ElasticNet) jest szybka i dostarcza współczynników, które można analizować. Gdy dominują nieliniowe interakcje, zespoły drzew, takie jak XGBoost (kontener SageMaker XGBoost) lub LightGBM, wychwytują heterogeniczność bez intensywnego skalowania cech; dostrajaj parametry eta (learning_rate), max_depth, subsample, colsample_bytree oraz regularyzację alpha/lambda, aby kontrolować overfitting. Maszyny wektorów nośnych (SVM) mogą być skuteczne w przypadku małych i średnich, dobrze przeskalowanych zbiorów cech, ale zazwyczaj wymagają niestandardowych kontenerów lub trybu ScriptMode scikit-learn w SageMaker, ponieważ duże zbiory danych są kosztowne; pamiętaj o standaryzacji cech i starannym doborze jądra/regularyzacji (C, gamma). Naiwny klasyfikator Bayesa (Naive Bayes) to szybki model bazowy dla wielowymiarowych, rzadkich danych kategorycznych/tekstowych; zakłada on warunkową niezależność i zawodzi, gdy korelacje są silne. W przypadku tysięcy cech lub bardzo dużych zbiorów danych, użyj redukcji wymiarowości (PCA) lub haszowania cech (feature hashing) i preferuj trenowanie rozproszone na instancjach ml.c5 lub ml.p3, jeśli używasz głębokich sieci neuronowych opartych na GPU. Wdrażaj za pomocą endpointów SageMaker do wnioskowania w czasie rzeczywistym lub Batch Transform do predykcji wsadowych; używaj Multi-Model Endpoints, aby zmniejszyć koszty utrzymania wielu modeli.
Metryki, niezbalansowanie, kalibracja i kompromisy wdrożeniowe
Dokładność (accuracy) jest kusząca, ale myląca w przypadku problemów niezbalansowanych; preferuj metryki wrażliwe na klasy, takie jak precyzja (precision), czułość (recall), F1, ROC AUC dla zrównoważonego nacisku na klasy, oraz PR AUC, gdy klasa pozytywna jest rzadka. Generując prawdopodobieństwa, sprawdzaj kalibrację za pomocą diagramów wiarygodności (reliability diagrams) i Brier score; użyj skalowania Platta lub kalibracji izotonicznej zaimplementowanej offline (scikit-learn CalibratedClassifierCV) lub kalibruj w ramach treningu SageMaker, zwracając surowe wyniki (raw scores) i stosując krok post-processingu. Aby poradzić sobie z niezbalansowaniem klas, preferuj ważenie próbek (wspierane w SageMaker LinearLearner i wielu skryptach treningowych), celowy oversampling (SMOTE) lub undersampling podczas treningu, oraz re-ważenie funkcji straty (loss re-weighting) lub focal loss dla sieci neuronowych. Dla oceny prawdopodobieństwa oszustwa w czasie zbliżonym do rzeczywistego, optymalizuj opóźnienie modelu (latency), używając typu instancji o niskim opóźnieniu wnioskowania (ml.m5.large lub instancje zoptymalizowane pod kątem CPU), utrzymuj modele w kompaktowej formie (przycinaj je lub używaj modeli destylowanych) i korzystaj z multi-model endpoints lub A/B traffic shifting za pośrednictwem endpointów SageMaker, aby bezpiecznie wdrażać aktualizacje. Monitoruj dryft produkcyjny i jakość danych za pomocą SageMaker Model Monitor oraz automatyzuj logowanie metryk do CloudWatch.
Inżynieria cech, współliniowość i regularyzacja
Współliniowość (multicollinearity) zawyża wariancję estymatorów współczynników w modelach liniowych; wykrywaj ją za pomocą współczynnika inflacji wariancji (VIF) i parami liczonej korelacji Pearsona, a łagodź, usuwając zbędne cechy lub stosując redukcję wymiarowości (PCA, SVD). Regularyzacja jest pryncypialnym rozwiązaniem: L2 (Ridge) kurczy współczynniki, L1 (Lasso) wymusza rzadkość (sparsity) w celu selekcji cech, a ElasticNet łączy obie metody — są one dostępne w scikit-learn i SageMaker LinearLearner. Dla silnie skośnych cech numerycznych zastosuj transformację logarytmiczną lub Boxa-Coxa, aby ustabilizować wariancję i poprawić dopasowanie modeli liniowych; pamiętaj, że zespoły drzew są odporne na transformacje monotoniczne, podczas gdy SVM i sieci neuronowe potrzebują standaryzowanych danych wejściowych (StandardScaler) do stabilnego treningu. Cechy kategoryczne o wysokiej liczności (high-cardinality) korzystają z kodowania docelowego (target encoding), osadzeń (embeddings) lub haszowania; przy stosowaniu target encoding unikaj wycieku danych (data leakage), obliczając kodowanie wewnątrz foldów walidacji krzyżowej lub używając oddzielnego zbioru wstrzymanego (holdout). Użyj SageMaker Feature Store do centralizacji i serwowania spójnych transformacji cech zarówno dla treningu, jak i wnioskowania, oraz utrwalaj kod preprocessingu w pakietach modeli lub obrazach Docker, aby transformacje produkcyjne odpowiadały tym z treningu.
Metody nienadzorowane, klasteryzacja, detekcja anomalii i interpretowalność
Klasteryzacja i detekcja anomalii to narzędzia eksploracyjne i etapy wstępnego przetwarzania dla modelowania nadzorowanego. Algorytm k-średnich (SageMaker k-means) jest szybki, ale zakłada sferyczne klastry i wymaga przeskalowanych cech; wybieraj k ostrożnie, używając metryki silhouette score lub wykresów typu elbow plot, ponieważ bezwładność (inertia) może być niejednoznaczna. Metody oparte na gęstości (DBSCAN) i klasteryzacja hierarchiczna wychwytują struktury niesferyczne, ale są bardziej kosztowne obliczeniowo. Do detekcji anomalii na dużą skalę rozważ SageMaker Random Cut Forest dla strumieniowych danych z czujników oraz potoki Kinesis/Lambda do oceny (scoring) w czasie zbliżonym do rzeczywistego; dostrajaj liczbę drzew i rozmiar próbki, aby kontrolować czułość. Narzędzia do interpretowalności są kluczowe: używaj natywnej ważności cech (feature importance) dla modeli drzewiastych oraz wartości SHAP (pakiet SageMaker Clarify lub SHAP) do lokalnych wyjaśnień i globalnych podsumowań wpływu. Uważaj na częste pułapki: wyciek danych czasowych (temporal leakage) przy losowym podziale danych uporządkowanych w czasie, nadmierne poleganie na metryce dokładności (accuracy) w zbiorach niezbalansowanych i zakładanie niezależności dla klasyfikatora Naive Bayes. W przypadku wdrożeń, w razie potrzeby spakuj niestandardowe algorytmy w kontenery Docker, udostępnij punkty końcowe (endpoints) do predykcji i sprawdzania stanu (health check) oraz organizuj wdrożenia typu canary rollout poprzez podział ruchu na punkcie końcowym.
Problem praktyczny: FleetSight Logistics — Eksploracyjne ML na obrazach ciężarówek
Scenariusz: Firma FleetSight gromadzi ~100 GB/dzień obrazów ciężarówek przechowywanych w S3 i używa SageMaker Studio do eksperymentów oraz SageMaker Ground Truth do etykietowania obrazów. Potrzebują lekkich zdolności ML do wykrywania usterek z zamiarem późniejszego skalowania.
Wyzwanie: Zidentyfikowanie wykonalnych przypadków użycia (nadzorowanych/nienadzorowanych) oraz taniego potoku do trenowania początkowych modeli z ograniczoną liczbą etykiet i wnioskowania w czasie zbliżonym do rzeczywistego w celu generowania alertów.
Zalecane podejście:
- Użyj SageMaker Ground Truth z aktywnym uczeniem (active learning), aby oetykietować zbiór początkowy (seed set); przechowuj oetykietowane dane w S3 i zarejestruj cechy w SageMaker Feature Store.
- Rozpocznij od nienadzorowanej detekcji anomalii przy użyciu SageMaker Random Cut Forest na metadanych z czujników pochodzących z obrazów i prostych wektorach osadzeń (image embeddings) (wyodrębnij wektory osadzeń za pomocą wstępnie wytrenowanej sieci CNN w notatniku SageMaker Notebook na instancji GPU ml.p3.2xlarge).
- Wytrenuj lekki klasyfikator nadzorowany, używając uczenia transferowego (transfer learning) (wbudowany kontener SageMaker dla TensorFlow lub PyTorch) na oetykietowanym podzbiorze; w celu uzyskania szybkich modeli bazowych (baselines) wyodrębnij wektory osadzeń i wytrenuj model XGBoost (SageMaker XGBoost) na instancjach CPU.
- Wdróż model XGBoost na punkcie końcowym SageMaker z wnioskowaniem asynchronicznym (async inference) lub na Multi-Model Endpoint w celu optymalizacji kosztów; monitoruj dane wejściowe i predykcje za pomocą SageMaker Model Monitor i iteruj proces etykietowania przez Ground Truth.
Uzasadnienie: Użyj nienadzorowanych wektorów osadzeń (embedding) + Random Cut Forest, aby znaleźć potencjalne anomalie bez dużej liczby etykiet, a następnie uruchom proces tworzenia modeli nadzorowanych (bootstrap) za pomocą uczenia transferowego i XGBoost w celu uzyskania kompaktowego, szybkiego wnioskowania; usługi SageMaker zapewniają zintegrowany, skalowalny przepływ pracy (workflow) w zakresie rozwoju i monitorowania.
← Eksploracyjna analiza danych i wizualizacja · Wszystkie domeny · Uczenie głębokie i widzenie komputerowe →
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 →