본문 바로가기
공부/AWS

[AWS] 완전관리형 ML서비스 Amazon SageMaker 서비스들 정리

by haejang 2020. 12. 8.
728x90
728x90

 

Amazon SageMaker란?

모든 개발자 및 Data Scientist들이 ML(Machine Learning) 모델을 빠르게 구축, 훈련 및 배포할 수 있도록 하는 모듈식완전 관리형 서비스

 

사용 서비스들

 

출처 : https://aws.amazon.com/ko/sagemaker/

 

출처 : AWS re:Invent 2020 Daily Recap 20.12.09

 

 

# ML 모델 [준비] Part

Amazon SageMaker Ground Truth

  • AI가 예측을 하려면 수많은 데이터에 라벨링 작업을 해야 한다
  • 이는 노가다성이 굉장히 짙고 시간이 오래걸린다 -> Ground Truth로 자동화
  • ML을 위한 고도로 정확한 훈련 데이터 세트를 손쉽게 구축할 수 있게 해주는 완전관리형 데이터 레이블링 서비스

Amazon SageMaker Data Wrangler (NEW)

  • ML 위한 데이터 전처리 시간 단축(데이터 특성 파악, 가공 및 집계)
  • 데이터를 가져오기 전 데이터 원본에 대한 쿼리 작성 가능
  • 300종류 이상의 built-in 데이터변환(data transformation)을 사용해 Code Free 데이터변환이 가능하다
  • SageMaker Studio에서 이런 변환을 보고 의도대로 되었는지 빠르게 미리보고 검사 가능

Amazon SageMaker Feature Store (NEW)

  • ML 기능을 저장, 업데이트, 검색 및 공유하기 위한 완전관리형 전용 레포지토리
  • Feature : 예측을 위해 훈련/추론 중에 사용하는 attributes 또는 properties models

 

# ML 모델 [구축] Part

Amazon SageMaker Studio

  • ML을 위해 완벽하게 통합된 첫 IDE(개발 환경)
  • 모든 ML 개발 단계를 수행할 수 있는 웹 기반의 단일 시각적 인터페이스를 제공함
  • 구축 파트에 넣긴 했지만 모델을 빌드하고 학습하며 배포하는 것까지 여기서 함 - 각 파트에 필요한 액세스 권한, 제어 및 가시성을 단계별로 완벽하게 제공
  • Notebooks/Experiment 관리, 자동 모델 생성 등을 포함한 모든 ML 개발 활동은 통합된 SageMaker Studio의 시각적 인터페이스 내에서 수행 가능

Amazon SageMaker Studio Notebooks

  • 클릭 한 번으로 작동하는 Jupyter Notebook - 빠르게 작업 시작 가능
  • SageMaker에서 클릭 한 번으로 Notebook 공유 가능
  • AWS Marketplace에서 많은 알고리즘과 사전에 학습된 모델이 제공되므로 쉽고 빠른 시작이 가능하다
📌 AWS Marketplace

고객이 솔루션 빌드 및 비즈니스 운영에 필요한 타사 소프트웨어, 데이터 및 서비스를 찾아보고 구입, 배포 및 관리를 쉽게 할 수 잇도록 도와주는 엄선된 디지털 카탈로그

Amazon SageMaker Autopilot

  • 높은 품질의 분류 및 회귀 ML을 자동으로 생성하면서 완벽한 제어 및 가시성을 제공하는 AutoML 서비스
  • ML모델을 자동으로 생성하고, 사용 사례에 가장 적합한 모델을 선택
  • 짧은 시간 동안 배포할 수 있는 최상위 모델이 나옴
  • 모델이 생성된 방식과 포함된 내용을 완벽하게 파악한 후 Sagemaker Studio와 통합됨
  • ML 경험이 없는 사람도 모델을 쉽게 만들 수 있다

 

 

# ML 모델 [학습/튜닝] Part

Amazon SageMaker Experiments

  • 반복적인 ML 모델 버전을 구성, 추적, 비교 및 평가하는데 사용
  • 입력 파라미터, 구성 및 결과를 자동으로 캡쳐하고 이를 Experiment로 저장 -> 반복을 관리하도록 도움
  • SageMaker Studio의 시각적 인터페이스에서 작업해, 활성 Experiment를 탐색하고 특성별로 검색해 이전 Experiment를 검토하고 시각적으로 결과를 비교할 수 있다
  • 핵심 개념
    • Trial(시행)
      • 단일 학습 작업과 관련된 학습 단계의 모음
      • 학습 단계엔 일반적으로 전처리, 학습, 모델 평가 등이 포함
      • Trial은 입력(알고리즘, 파라미터, 데이터 set 등)과 출력(모델, 체크포인트, 지표 등)에 대한 메타데이터로 보강됨
    • Experiment(실험)
      • Trial을 모아놓은 것
      • 즉 관련된 학습 작업을 그룹화한 것

Amazon SageMaker Debugger

  • ML 훈련 작업 중 발생하는 복잡한 문제를 자동으로 식별해주는 기능
  • TensorFlow, Keras, Apache MXNet, PyTorch, XGBoost의 기존 학습 코드에서 SageMaker Debugger SDK를 사용해 내부 모델 상태를 주기전인 간격으로 저장 가능
  • 개별 모델 상태는 S3에 저장된다

Amazon SageMaker Automatic Model Tuning

  • 모델의 정확성을 높이기 위한 하이퍼파라미터를 조정하는 힘든 작업을 단순화
  • Bayesian 최적화를 기반으로 메타 ML 모델을 훈련해 훈련 작업의 하이퍼파라미터 조합을 유추함
  • ML 모델 튜닝 프로세스 : 탐색적 데이터 분석 - 모델 설계 - 모델 훈련 - 모델 평가

Amazon SageMaker Distributed Training (NEW)

  • 분할 알고리즘을 사용해 AWS GPU 인스턴스에서 대규모 딥 러닝 모델과 training datasets를 자동으로 빠르게 분할
  • 분산 training 작업 최적화 -> 수동 구현보다 훨씬 빠르게 training 완료 가능

 

# ML 모델 [배포] Part

Amazon SageMaker

  • 클릭 한 번으로 프로덕션 환경에 학습된 모델을 배포하여, 실시간 또는 batch 데이터에 대한 예측 생성 시작 가능
  • 높은 중복성을 위해 모델을 여러 AZ에 걸쳐 Auto Scaling Amazon ML 인스턴스에 쉽게 배포할 수 있다

 

# ML 모델 "관리" Part

Amazon SageMaker Model Monitor

  • 정식 서비스 환경에서 ML 모델을 모니터링하고, 데이터 품질 문제가 발생했을 시 이를 알려주는 서비스
  • 기준 데이터 분포를 벗어나거나 잘못된 입출력값 등을 감지할 수있다
  • 기능별 지표를 CloudWatch로 보내며 대시보드 및 경고를 설정하는데 사용 가능 - 해당 지표는 SageMaker Studio에서도 보고 추가로 분석할 수 있음
  • concept/data drift 감지 및 해결 가능
📌 concept drift
시간이 지남에 따라 모델링 대상의 통계적 특성이 바뀌는 현상
ex) 경제 상황이 달라져 주택 구매 예측에 영향을 주는 새로운 금리가 형성

📌 data drift
수신하는 데이터의 점진적인 변화 (최댓값, 최솟값 등의 통계에 영향)

Amazon SageMaker Neo

  • 한 번 학습한 ML 모델을 클라우드와 엣지 어디에서나 실행할 수 있게 해줌

Amazon Augmented AI (A2I)

  • ML 예측의 인적 검토에 필요한 워크플로우 쉽게 구축

Amazon SageMaker Pipelines (NEW)

  • ML을 위한 최초의 CI/CD 서비스
  • 대규모 ML 워크플로를 생성, 자동화 및 관리 가능

 

 

728x90
728x90

댓글