(한국어) AWS Certified AI Practitioner (36) - SageMaker (AI)
Amazon SageMaker (AI)
1. SageMaker 개요
- Amazon SageMaker는 개발자와 데이터 과학자를 위한 완전 관리형 머신러닝 서비스입니다.
- 머신러닝의 모든 과정을 한 곳에서 처리할 수 있도록 지원합니다:
- 데이터 수집 및 준비
- 모델 학습 및 튜닝
- 모델 배포 및 성능 모니터링
- 원래는 머신러닝을 하기 위해 직접 서버를 세팅하고, 환경을 구성해야 하지만 SageMaker는 이런 과정을 크게 단순화합니다.
- 예시: AWS 시험 점수를 예측하는 모델을 SageMaker로 쉽게 만들어볼 수 있습니다.
👉 시험 포인트: SageMaker는 머신러닝 end-to-end 플랫폼이며, 관리형 서비스임을 기억하세요.
2. SageMaker 주요 기능
(1) End-to-End ML Service
- 데이터 준비 → 모델 학습/튜닝 → 배포 및 모니터링
- 데이터 파이프라인 전체 과정을 지원.
(2) 내장 알고리즘 (Built-in Algorithms)
- 지도 학습 (Supervised)
- 선형 회귀, 분류 (Classification)
- KNN (최근접 이웃) 분류
- 비지도 학습 (Unsupervised)
- PCA (차원 축소, 특징 수 줄이기)
- K-means (데이터 군집화)
- 이상치 탐지 (Anomaly Detection → 사기 탐지 등)
- 텍스트 처리 (NLP): 요약, 감정 분석 등
- 이미지 처리: 이미지 분류, 객체 탐지
👉 시험에선 “SageMaker에서 제공하는 알고리즘”이 나올 수 있으니 지도/비지도/NLP/이미지 처리 정도는 기억해두면 좋습니다.
3. Automatic Model Tuning (AMT)
- 하이퍼파라미터 튜닝을 자동으로 실행.
- Objective Metric을 정의하면 SageMaker가 알아서:
- 하이퍼파라미터 범위 설정
- 탐색 전략 (Search Strategy) 선택
- 최대 실행 시간 설정
- 성능이 안 나오면 Early Stopping 적용
- 결과: 시간과 비용 절감, 불필요한 자원 낭비 방지
👉 시험 포인트: “AMT는 자동으로 하이퍼파라미터 튜닝을 수행하여 시간과 비용을 절약한다.”
4. 모델 배포 & 추론 (Inference)
(1) 실시간 (Real-time)
- 한 건씩 빠른 추론 (예: 웹 애플리케이션에서 즉각 응답 필요할 때)
- Auto Scaling 지원, 서버 관리 불필요
(2) 서버리스 (Serverless)
- 서버 관리 없이 메모리만 선택
- 트래픽이 없을 때 비용 발생 안 함
- 단점: Cold Start로 인해 첫 요청 시 지연 발생
(3) 비동기 (Asynchronous)
- 대용량 입력 (최대 1GB) 처리 가능
- 오래 걸리는 작업에 적합
- 요청/응답은 Amazon S3를 통해 처리
- 응답은 즉시가 아니라 “Near Real-time”
(4) 배치 (Batch Transform)
- 대량 데이터셋에 대해 한 번에 예측
- 여러 레코드를 동시에 처리
- 결과는 Amazon S3에 저장
- 고지연 (minutes~hours)
👉 시험 포인트 키워드: - Real-time: 빠른 응답, 작은 요청
- Serverless: Cold Start 가능, 서버 관리 X
- Asynchronous: 1GB 대용량, 긴 처리 시간, Near Real-time
- Batch: 여러 데이터셋 동시 예측, 고지연
5. SageMaker Studio
- 머신러닝 개발 통합 환경 (IDE)
- 주요 기능:
- 팀 협업
- 모델 튜닝 & 디버깅
- 모델 배포
- 자동화된 워크플로우
- 또한 JumpStart를 통해 Hugging Face, PyTorch, TensorFlow 등 다양한 모델을 바로 가져다 쓸 수 있음.
👉 시험 포인트: SageMaker Studio는 엔드투엔드 머신러닝 개발 환경이다.
6. 시험 대비 요약
- EC2 대신 SageMaker를 사용하는 이유 → 완전 관리형, 빠른 배포, 자동 튜닝 지원
- AMT = Automatic Model Tuning
- Inference 방식 → Real-time, Serverless, Asynchronous, Batch (키워드로 구분)
- Studio = 협업 & 통합 개발 환경
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.