View a markdown version of this page

에서 프로덕션 지원 ML 파이프라인 생성 AWS - AWS 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에서 프로덕션 지원 ML 파이프라인 생성 AWS

Josiah Davis, Verdi March, Yin Song, Baichuan Sun, Chen Wu 및 Wei Yih Yap, Amazon Web Services(AWS)

2021년 1월(문서 기록)

기계 학습(ML) 프로젝트에서는 업무 가치를 제공하고 실제 문제를 해결하기 위해 모델링, 구현 및 제작을 포함하는 상당한 다단계 노력이 필요합니다. 각 단계에서 다양한 대안과 사용자 지정 옵션을 사용할 수 있으며, 이로 인해 리소스와 예산의 제약 내에서 프로덕션용 ML 모델을 준비하기가 점점 더 어려워지고 있습니다. Amazon Web Services(AWS)에서 지난 몇 년 동안 데이터 과학 팀은 ML 이니셔티브를 위해 다양한 산업 부문과 협력했습니다. 조직 문제와 기술적 문제 모두에서 비롯된 많은 AWS 고객이 공유하는 문제점을 식별했으며 프로덕션 지원 ML 솔루션을 제공하기 위한 최적의 접근 방식을 개발했습니다.

본 가이드는 ML 파이프라인 구현에 관여하는 데이터 과학자와 ML 엔지니어를 위한 것입니다. 프로덕션 환경에 바로 사용할 수 있는 ML 파이프라인을 제공하기 위한 당사의 접근 방식을 설명합니다. 본 가이드에서는 ML 모델을 대화형 방식으로(개발 중) 실행하는 것에서 ML 사용 사례를 위한 파이프라인의 일부로 배포하는 방법(프로덕션 중)으로 전환하는 방법을 설명합니다. 이를 위해 사용자 지정 ML 솔루션을 프로덕션 환경에 빠르게 제공할 수 있도록 예 템플릿 세트(ML Max 프로젝트 프로젝트 참조)도 개발했습니다. 이를 통해 설계 옵션을 너무 많이 가질 필요 없이 빠르게 시작할 수 있습니다.

개요

프로덕션 환경에서 바로 사용할 수 있는 ML 파이프라인을 생성하는 프로세스는 다음 단계로 구성됩니다.

  • 1단계. EDA 수행 및 초기 모델 개발 – 데이터 과학자는 Amazon Simple Storage Service(Amazon S3)에서 원시 데이터를 제공하고, 탐색적 데이터 분석(EDA)을 수행하고, 초기 ML 모델을 개발하고, 추론 성능을 평가합니다. Jupyter Notebook을 통해 이러한 활동을 대화형 방식으로 수행할 수 있습니다.

  • 2단계. 런타임 스크립트 생성 – 모델을 런타임 Python 스크립트와 통합하여 ML 프레임워크(여기서는 Amazon SageMaker AI)에서 관리하고 프로비저닝할 수 있습니다. 이는 독립형 모델의 대화형 개발에서 벗어나 프로덕션으로 전환하는 첫 번째 단계입니다. 구체적으로 말하자면, 전처리, 평가, 학습 및 추론을 위한 로직을 별도로 정의합니다.

  • 3단계. 파이프라인 정의 – 파이프라인의 각 단계에 대한 입력 및 출력 자리표시자를 정의합니다. 이에 대한 구체적인 값은 나중에 런타임 중에 제공됩니다(5단계). 교육, 추론, 교차 검증 및 백 테스팅을 위한 파이프라인에 중점을 둡니다.

  • 4단계. 파이프라인 생성 -를 사용하여 자동화된(거의 원클릭) 방식으로 AWS Step Functions 상태 시스템 인스턴스를 포함한 기본 인프라를 생성합니다 AWS CloudFormation.

  • 5단계. 파이프라인 실행 – 4단계에서 정의한 파이프라인을 실행합니다. 또한 3단계에서 정의한 입력/출력 자리표시자의 구체적인 값을 채울 메타데이터와 데이터 또는 데이터 위치를 준비합니다. 여기에는 2단계에서 정의한 런타임 스크립트와 모델 하이퍼파라미터가 포함됩니다.

  • 6단계. 파이프라인 확장 – 지속적 통합 및 지속적 배포(CI/CD) 프로세스, 자동화된 재교육, 예약된 추론 및 유사한 파이프라인 확장을 구현합니다.

다음 다이어그램은 이 프로세스의 주요 단계를 보여 줍니다.

프로덕션에 바로 사용할 수 있는 ML 파이프라인을 만드는 프로세스