WiseN

[Re2020] AWS AI/ML 주요 업데이트 - Deploy & Manage 편

Jan 05, 2021   |   AWS

작성자_임성균

페이스북 공유하기 트위터 공유하기
Blog thumbnail

안녕하세요. 2020 AWS RE:invent AI/ML 서비스인 Amazon SageMaker 업데이트 4번째입니다. 머신러닝 파이프라인(Data Collect & Pre-processing → Build → Train&Tune → Deploy & Manage) 중 이번 내용은 Deploy & Manage에 해당되는 소개됩니다. 전체구조를 보기 위해서 첫번째 리뷰를 참고해주세요:)

 

주요 서비스는

(이번 업데이트 소식은 NEW입니다)

  •  One-click Deployment

  •  Kubernetes & Kuberflow Integration

  •  Multi-Model Endpoints

  •  Model Monitor - NEW

  •  SageMaker Edge Manager - NEW

  •  Amazon SageMaker Pipelines - NEW

 

 

Model Monitor

 

Amazon SageMaker Model Monitor는 기계 학습 모델에 대한 개념 변화(즉, 시간에 따른 데이터 분포 및 특성 변화)를 지속적으로 모니터링하고 편차가 있을 경우 사용자에게 경고하여 수정 조치를 취할 수 있습니다. Model Quality, Bias, Feature 중요도를 확인하고 현재 모델을 교육하는 데 사용된 데이터와 점수를 매기기 위해 제공되는 데이터 간의 차이를 추적하고 데이터 감사 또는 재교육 모델과 같은 시기 적절한 조치를 취할 수 있도록 편차를 알림으로써 데이터 품질 드리프트를 감지하는 기능을 지원합니다. 

Model quality monitoring을 통해 ML 모델의 모델 특성(정밀, 정확도, 리콜 등)을 실시간으로 모니터링할 수 있습니다. SageMaker 모델 모니터는 모델 예측을 실제 데이터와 비교하여 ML 모델이 결과를 얼마나 잘 예측하는지 보고합니다. 모델을 모니터링하면 Amazon S3, Amazon SageMaker Studio 및 SageMaker 노트북 인스턴스에서 모델 품질을 자세히 설명하는 내보내기 가능한 보고서 및 그래프를 볼 수 있습니다. 또한 모델 품질이 저하될 경우 알림을 받도록 Amazon CloudWatch를 구성할 수도 있습니다.

Bias monitoring은 ML 모델에서 정기적으로 치우침을 탐지하는 데 도움이 됩니다. SageMaker 모델 모니터는 치우침 메트릭이 사전 설정된 임계값을 통계적으로 초과하는 수준으로 이동하는 시기를 주기적으로 결정합니다. Model Monitor의 바이어스 모니터링 기능을 사용하면 SageMaker Studio에서 메트릭을 보고 결과를 시각화할 수 있습니다. 또한 모델이 설정한 치우침 메트릭 임계값을 초과하는 시기를 즉시 알 수 있도록 자동 알림을 구성할 수도 있습니다.


 

 

Amazon SageMaker Model Monitor 시작하기

• Monitor Data Quality - Monitor drift in data quality.

• Monitor Model Quality - 정확도와 같은 모델 품질 메트릭의 드리프트를 모니터링 합니다.

• Monitor Bias Drift for Models in Production - 모델 예측의 Bias를 모니터링 합니다.

• Monitor Feature Attribution Drift for Models in Production - feature attribution의 드리프트를 모니터링 합니다.

Amazon SageMaker Model Monitor는 프로덕션에서 기계 학습 (ML) 모델을 자동으로 모니터링하고 품질 문제가 발생하면 알려줍니다. 모델 모니터는 규칙을 사용하여 모델의 드리프트를 감지하고 발생시 경고합니다. 다음 그림은이 프로세스의 작동 방식을 보여줍니다.


https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html

 

참고 레퍼런스

https://aws.amazon.com/about-aws/whats-new/2020/12/amazon-sagemaker-model-monitor-supports-capabilities-to-maintain-model-quality-production/

 

 

Management for Edge Devices

 

Amazon SageMaker Edge Manager는 개발자가 스마트 카메라, 로봇, 개인용 컴퓨터 및 모바일 장치와 같은 에지 장치에서 기계 학습 모델을 최적화, 보안, 모니터링 및 유지 관리할 수 있도록 하는 Amazon SageMaker의 새로운 기능입니다.

SageMaker Edge Manager는 대상 장치에서 더 빨리 실행되도록 모델을 최적화하고 에지 장치에 대한 모델 관리를 제공하므로 고객은 에지의 여러 장치에서 배포된 머신 러닝 모델을 준비, 실행, 모니터링 및 업데이트할 수 있습니다. 이를 통해 고객은 모델을 암호화 방식으로 서명하고, 장치의 예측 데이터를 Amazon SageMaker로 업로드하여 모니터링 및 분석하고, Amazon SageMaker 콘솔에서 배포된 모델의 작동을 추적하고 시각적으로 보고하는 대시보드를 볼 수 있습니다. 

Edge 디바이스에서 모델의 입출력 데이터를 샘플링하여 클라우드로 전송함으로써 이전에는 클라우드에서만 사용 가능했던 기능을 확장하므로 개발자는 Amazon SageMaker Model Monitor를 사용하여 드리프트 탐지에 사용한 다음 데이터 레이블을 다시 지정하고 모델을 재교육하여 모델 품질을 지속적으로 개선할 수 있습니다.

 

참고 레퍼런스

https://aws.amazon.com/about-aws/whats-new/2020/12/aws-introduces-amazon-sagemaker-edge-manager-model-management-edge-devices/ 

 

 

Amazon SageMaker Pipelines

 

Amazon SageMaker Pipeline은 Build, Manage, 자동화 및 확장할 수 있도록 제공되는 End-To-End 학습러닝 서비스입니다. ML Workflow에 자동화 및 조정을 제공하여 프로젝트를 가속화하고 프로덕션 단계에서 최대 수천 개의 모델을 확장할 수 있도록 지원합니다.

머신 러닝은 반복적인 프로세스이며 data engineers, data scientists, ML engineers, and DevOps engineers 등 다양한 협력이 필요합니다. 데이터 준비부터 Feature Engineering, 교육 및 모델 평가 전반에 걸친 단계가 많아져 데이터 의존성 관리의 복잡성이 증가할 수 있기 때문에 모델을 구축하는 확장 가능한 프로세스를 구축하는 것은 어렵습니다. 

모델 수가 증가함에 따라 모델 버전 관리하고 프로덕션 환경에 배치하려면 쉽고 확장 가능한 방식으로 자동화가 필요합니다. 또한, End-To-End Pipeline 사이에서 데이터 및 모델 아티팩트와 작업을 추적하기 위한 Custom tooling을 제공합니다. Amazon SageMaker SDK는 Amazon SageMaker Data Langler, Processing, Training, Batch Transform, 조건부 평가 및 중앙 모델 레지스트리에 모델을 등록하는 매개 변수와 단계를 정의하여 모델 구축이 용이합니다. 파이프라인이 구축되면 Amazon SageMaker Studio에서 파이프라인 실행을 관리하고 각 단계에 대한 파이프라인 실행 및 실시간 메트릭과 로그를 볼 수 있습니다. 

새로운 Amazon SageMaker 모델 레지스트리에 등록되는 모델은 파이프라인에서 생성된 새 모델을 자동으로 버전하고 기본 제공 승인 워크플로우를 제공하여 프로덕션에 배포할 모델을 선택합니다.


 

Amazon SageMaker Pipelines 시작하기

Amazon SageMaker Pipeline은 머신러닝(MLOps)에 적용된 DevOps의 모범 사례인 CI/CD(Continuous Integration and Continuous Delivery)를 제공하여 ML 모델 구축 및 구축 파이프라인을 자동화하고 확장합니다. Amazon SageMaker Pipeline은 ML 프로젝트용 CI/CD를 시작할 수 있도록 MLOps 템플릿을 내장하고 있으며 사용자 지정 MLOps 템플릿을 사용할 수도 있습니다. 그 결과 수동 프로세스에 의존하지 않고 ML Pipeline을 빠르고 쉽게 확장할 수 있으며, 코드 일관성, 통합 및 단위 테스트, 생산 시 신뢰할 수 있는 모델 업데이트를 보다 효과적으로 보장할 수 있습니다. 마지막으로, Amazon SageMaker Pipeline은 사용자 정의 도구를 구축할 필요 없이 ML 파이프라인의 각 단계에 대한 계보를 자동으로 추적합니다.


 

https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-projects.html

 

참고 레퍼런스

https://aws.amazon.com/about-aws/whats-new/2020/12/introducing-amazon-sagemaker-pipelines-first-purpose-built-ci-cd-service-machine-learning/