WiseN

[Re2020] AWS AI/ML 주요 업데이트 - Build 편

Jan 05, 2021   |   AWS

작성자_임성균

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

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

주요 서비스는
(이번 업데이트 소식은 NEW입니다)
  •  SageMaker Studio Notebooks
  •  Built-in and Bring-your-own Algorithms
  •  Local Mode
  •  SageMaker AutoPilot
  •  SageMaker JumpStart - NEW

Amazon SageMaker JumpStart

Amazon SageMaker JumpStart의 핵심은 Model-Zoo입니다. Model-Zoo는 많은 연구자와 엔지니어가 모든 종류의 아키텍처와 데이터를 사용하여 다양한 작업을 빠르게 deploy를 위해 TensorFlow, PyTorch, Manet 등에서 model을 모아놓은 프레임 워크입니다. Model-Zoo의 오픈 소스 모델을 이용하여 사전 구축된 솔루션을 사용하여 고객이 기계학습(ML) 애플리케이션을 시장에 쉽고 빠르게 출시할 수 있도록 도와드릴 수 있습니다.
일반적으로 ML 솔루션을 만들기 위해서는 다양한 모델의 학습과 배포를 반복적으로 수행하며 해결책을 찾습니다. 그러나 머신러닝을 처음 접하는 실무자나 ML 개발자의 경우 모델을 구축, 학습 및 배포하고 서로 다른 구성 요소를 연결하는 프로세스가 수개월 이상 걸릴 수 있습니다.
이를 더 쉽게 할 수 있도록 Amazon SageMaker JumpStart는 몇 번의 클릭만으로 쉽게 배포할 수 있는 사기 감지, 예측 유지 관리 및 수요 예측과 같은 가장 일반적인 사용 사례에 대한 솔루션 세트를 제공합니다. 이 솔루션은 완전히 사용자 지정이 가능하며 AWS CloudFormation 템플릿 및 참조 아키텍처 사용을 보여 주므로 ML 여정을 가속화 할 수 있습니다.
Amazon SageMaker JumpStart는 또한 PyTorch Hub 및 TensorFlow Hub을 포함하여 인기 있는 모델 동물원의 150 개 이상의 사전 학습된 모델을 원 클릭 배포 및 미세 조정을 제공합니다. 자연어 처리, 객체 감지 및 이미지 분류 모델에 원 클릭 배포 및 미세 조정 기능을 사용할 수 있으므로 자신의 사용 사례에 맞게 오픈 소스 모델을 배포하는 시간을 최소화할 수 있습니다.

Amazon SageMaker JumpStart 사용사례


Amazon SageMaker JumpStart 주요 용어 & 사용방법
주요 용어
• Solutions - 솔루션을 선택하면 JumpStart는 솔루션에 대한 설명과 시작 버튼을 제공합니다. 구성 옵션이 없습니다. 솔루션은 교육 및 모델 호스팅 인스턴스를 포함하여 솔루션을 실행하는 데 필요한 모든 리소스를 시작합니다. JumpStart가 솔루션을 시작한 후 JumpStart는 솔루션의 기능을 탐색하는 데 사용할 수있는 노트북에 대한 링크를 제공합니다. 솔루션 리소스 삭제 를 선택하여 솔루션의 모든 리소스를 삭제할 수 있습니다 .
• Models - JumpStart에서 직접 빠른 배포를 위해 모델을 사용할 수 있습니다. 이러한 모델 중 일부를 미세 조정할 수도 있습니다. 모델을 탐색 할 때 배포로 스크롤하고 설명 섹션으로 섹션을 미세 조정할 수 있습니다. 설명 섹션에서는 모델에서 수행할 수 있는 작업, 예상되는 입력 및 출력의 유형, 전송 학습을 사용하여 모델을 미세 조정하려는 경우 필요한 데이터 유형 등 모델에 대해 자세히 알아볼 수 있습니다.
• Deploy a model - JumpStart에서 모델을 배포하면 SageMaker는 모델을 호스팅하고 추론에 사용할 수있는 엔드 포인트를 배포합니다. JumpStart는 배포 후 모델에 액세스하는 데 사용할 수있는 예제 노트북도 제공합니다.
• Model Deployment Configuration - 모델을 선택하면 모델 배포 창이 열립니다. 배포 구성을 선택하여 모델 배포를 구성합니다. 배포 구성은 기본 머신 유형의 인스턴스를 설정하는 부분입니다. 주로 학습 작업이 실행되는 하드웨어 선택입니다. 또한 Endpoint Name을 설정할 수 있는 곳입니다. 
• Fine-Tune a Model - 미세 조정은 처음부터 학습하지 않고 새 데이터 세트에서 사전 학습 된 모델을 학습시킵니다. transfer learning이라고도 하는 이 프로세스는 더 작은 데이터 세트와 더 적은 학습 시간으로 정확한 모델을 생성 할 수 있습니다.
• Fine-Tuning Data Source - 모델을 미세 조정할 때 기본 데이터 세트를 사용하거나 S3 버킷에있는 자체 데이터를 선택할 수 있습니다.
• Hyperparameters - 모델을 미세 조정하는데 사용되는 훈련 작업의 하이퍼 파라미터(Epochs, Learning rate, Batch size)를 지정할 수 있습니다. 
• Training Output - 미세 조정 프로세스가 완료되면 JumpStart는 상위 모델, 교육 작업 이름, 교육 작업 Amazon 리소스 이름 (ARN), 교육 시간 및 출력 경로와 같은 모델에 대한 정보를 제공합니다. 출력 경로는 S3 버킷에서 새 모델을 찾을 수있는 위치입니다. 출력 경로는 S3 버킷에서 새 모델을 찾을 수 있는 위치입니다. 폴더 구조는 사용자가 제공한 모델 이름을 사용하며 모델 파일은 /output 하위 폴더에 있으며 항상 model.tar.gz라고 합니다.

Amazon SageMaker JumpStart List



Amazon SageMaker JumpStart 빠른 시작
https://aws.amazon.com/about-aws/whats-new/2020/12/introducing-amazon-sagemaker-jumpstart-easily-and-quickly-bring-machine-learning-applications-to-market/



참고 레퍼런스
https://docs.aws.amazon.com/sagemaker/latest/dg/studio-jumpstart.html