SageMaker Immersion Day 실습
Last updated
Last updated
주의사항
해당 실습 자료는 가장 최신 버전의 AWS console UI를 포함하지 않고 있습니다. 특히나 SageMaker Studio UI가 최근에 많이 변경이 되었기 때문에 UI가 다른 부분이 있을 수 있습니다.
그 외에도 라이브러리 버전 등이 다른 부분이 있을 수 있습니다.
AWS에서 공식적으로 진행하는 교육에 참석하셨다면, EventEngine을 통해서 AWS console에 접속합니다.
EventEngine과 관련된 내용은 를 참고해 주세요.
Instructor가 허용하는 범위 내에서 AWS의 다양한 서비스를 활용할 수 있습니다.
자체 보유 계정에서 진행하는 경우, 실습 자료의 가이드를 참고해서 진행하면 됩니다.
GPU instance 등을 활용하는 경우, 미리 사용 가능한 지 Service quota를 확인해 보고 필요하다면 요청을 진행합니다.
Service quota와 관련된 내용은 를 참고해 주세요.
실습 방법
실습을 위한 Git repository
SageMaker studio의 terminal 을 열어서, 위의 명령어를 활용하여 실습 예시 자료를 가져온 후 진행할 수 있습니다.
실습 자료는 총 10개의 Lab으로 이루어져 있습니다.
Lab1. Feature Engineering
ML 학습을 위한 데이터를 준비하는 과정입니다. 세 가지 옵션이 있습니다.
SageMaker Data Wrangler 활용 : 데이터 프로세싱을 위한 Low-code tool 입니다.
Local notebook 에서 코드 활용 : Numpy, Pandas 등을 활용하여 그냥 Local jupyter notebook (여기서 로컬이라 함은 사용자가 작업하는 Jupyter notebook을 의미합니다) 에서 코드를 작성하여 전처리하는 방법입니다. 가장 일반적인 방법이라고 볼 수 있습니다.
SageMaker Processing 활용 : 현재 작업하는 jupyter notebook이 아닌 별도의 EC2 인스턴스를 할당 받아서 데이터 프로세싱을 하도록 하는 방식입니다. 데이터 규모가 크거나 production level 까지 고려하는 경우 좋은 방법입니다.
Lab2. Train, Tune and deploy XGBoost
앞에서 준비한 데이터를 XGBoost를 활용해 training을 해 보고, HPO (hyperparameter optimization) 도 진행해 보고 배포까지 해 보는 과정입니다.
XGBoost는 SageMaker built-in algorithm에 포함이 되어 있어서 쉽게 사용이 가능합니다.
Lab3. Bring your own Model
SageMaker 의 강점 중 하나인 Managed training 과 학습된 모델을 배포까지 해 보는 과정입니다.
코드만 작성하면 되는 Bring your own script 방법과 Container image 까지 customization 할 수 있는 Bring your own container 방법을 실습합니다.
앞의 Lab2 에서는 built-in algorithm을 활용하여 데이터만 포맷에 맞추어 넣으면 학습이 되는 구조였고, 여기서는 커스텀하게 코드를 작성하는 구조입니다.
Lab4. Autopilot, Debugger and Model Monitor
AutoML기능인 Autopilot 기능과 학습 시 디버깅을 편리하게 해 주는 Debugger, 배포된 모델을 모니터링하는 Model Monitor에 관한 실습입니다.
Lab5. Bias and Explainability
최근 Responsible AI에 대한 관심이 높아지고 있습니다. SageMaker Clarify를 활용해서 모델이 bias 되지 않았는지, explainability 가 어느정도 되는지를 확인하는 실습입니다.
Lab6. SageMaker Pipelines
MLOps의 전 과정을 파이프라인을 구성해 보는 실습입니다.
각 환경 (dev, stage, prod) 에 맞추어서 데이터 준비, 학습, 평가, 배포를 위한 파이프라인을 SageMaker pipeline을 활용하여 쉽게 구성할 수 있습니다.
Lab7. Real time ML inference on streaming data
Kinesis datastream, Kinesis data analytics를 활용하여 들어오는 real-time streaming data에 대해서 ML모델이 동작하는 실습입니다.
Lab8. Build ML Model with No code using SageMaker Canvas
SageMaker Canvas는 코드작성이 필요없는 No-code ML 툴 입니다. Canvas 사용에 관한 실습입니다.
Lab9. Amazon SageMaker JumpStart
Jumpstart 는 미리 준비된 모델을 쉽게 활용할 수 있는 기능입니다. 코드 작성 없이도 활용할 수 있는 Low-code 서비스입니다.
Lab10. SageMaker notebook instances
SageMaker studio 대신 SageMaker notebook을 사용해 보는 실습입니다.
SageMaker studio 나 notebook은 준비된 환경이기 때문에 customization을 어떻게 할 수 있는지를 실습합니다.
위의 에 있는 내용을 따라서 진행합니다.
XGBoost외에 다양한 SageMaker의 Built-in algorithm에 대해서는 를 참고해 주세요.
최근에는 Foundation model 을 쉽게 사용할 수 있는 서비스로 변화해 가고 있습니다. ()