3단계. 파이프라인 정의 - AWS규범적 지침

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

3단계. 파이프라인 정의


   ML 파이프라인 정의.

이 단계에서는 파이프라인이 수행할 작업의 순서와 논리가 정의됩니다. 여기에는 개별 단계뿐만 아니라 논리적 입력 및 출력도 포함됩니다. 예를 들어 파이프라인 시작 시점의 데이터 상태는 어떻게 됩니까? 서로 다른 수준의 세분화 된 여러 파일이나 단일 플랫 파일에서 가져온 것입니까? 데이터가 여러 파일에서 가져온 경우 모든 파일에 대해 한 단계 또는 각 파일에 대해 별도의 단계가 필요합니까? 전처리 로직을 정의하려면? 결정은 데이터 원본의 복잡성과 선행 처리 정도에 따라 달라집니다.

참조 구현에서는 다음을 사용합니다.AWS Step Functions워크플로우 단계를 정의하는 서버리스 함수 오케스트레이터입니다. 그러나,ML 최대 프레임워크Apache AirFlow와 같은 다른 파이프라인 또는 상태 머신 시스템도 지원합니다 (파이프라인 오케스트레이션을 위한 다양한 엔진섹션) 은 ML 파이프라인의 개발 및 배포를 촉진합니다.

Step Functions SDK 사용

ML 파이프라인을 정의하려면 먼저AWS Step FunctionsData Science SDK(Step Functions SDK): 파이프라인의 두 가지 주요 구성 요소를 정의합니다.단계데이터. 파이프라인을 DAG (방향성 비순환 그래프) 라고 생각하면 단계는 그래프의 노드를 나타내며 데이터는 한 노드 (단계) 를 다음 노드 (단계) 에 연결하는 방향 간선으로 표시됩니다. ML 단계의 일반적인 예로는 전처리, 교육 및 평가가 있습니다. Step Functions SDK는 여러 기본 제공 단계를 제공합니다 (예:트레이닝스텝) 를 사용할 수 있습니다. 데이터의 예로는 입력, 출력 및 파이프라인의 일부 단계에 의해 생성되는 많은 중간 데이터셋이 있습니다. ML 파이프라인을 설계할 때는 데이터 항목의 구체적인 값을 알 수 없습니다. 정의할 수 있습니다.데이터 자리 표시자템플릿 (함수 매개 변수와 유사) 역할을 하며 데이터 항목 및 기본 데이터 유형의 이름만 포함합니다. 이렇게 하면 그래프에서 이동하는 데이터의 구체적인 값을 미리 알지 못해도 완전한 파이프라인 청사진을 설계할 수 있습니다. 이를 위해 Step Functions SDK의 자리 표시자 클래스를 사용하여 이러한 데이터 템플릿을 명시적으로 모델링할 수 있습니다.

ML 파이프라인에는 각 ML 단계의 동작을 세부적으로 제어할 수 있도록 구성 매개 변수가 필요합니다. 이러한 특수 데이터 자리 표시자가 호출됩니다.매개변수 자리 표시자. 파이프라인을 정의할 때 많은 값을 알 수 없습니다. 파라미터 자리 표시자의 예로는 파이프라인 설계 중에 정의한 인프라 관련 파라미터 (예: AWS 리전 또는 컨테이너 이미지 URL) 와 파이프라인을 실행할 때 정의하는 ML 모델링 관련 파라미터 (예: 하이퍼파라미터) 가 있습니다.

Step Functions SDK 확장

참조 구현에서 한 가지 요구 사항은 특정 매개 변수 설정을 사용하여 ML 파이프라인 정의를 구체적인 ML 파이프라인 생성 및 배포와 분리하는 것이었습니다. 그러나 Step Functions SDK의 기본 제공 단계 중 일부는 이러한 자리 표시자 매개 변수를 모두 전달할 수 없었습니다. 대신 매개 변수 값은 파이프라인 설계 시간 동안 SageMaker 구성 API 호출을 통해 직접 얻어질 것으로 예상되었습니다. SageMaker 디자인 타임 환경이 SageMaker 런타임 환경과 동일한 경우 정상적으로 작동하지만 실제 설정에서는 거의 발생하지 않습니다. 파이프 라인 설계 시간과 런타임 간의 긴밀한 결합과 ML 플랫폼 인프라가 일정하게 유지된다는 가정은 설계된 파이프 라인의 적용 가능성을 크게 방해합니다. 실제로 ML 파이프라인은 기본 배포 플랫폼이 조금이라도 변경되면 즉시 중단됩니다.

이러한 문제를 극복하고 강력한 ML 파이프라인 (한 번 설계하고 어디서나 실행하고자 함) 을 생성하기 위해 다음과 같은 기본 제공 단계를 확장하여 자체 사용자 지정 단계를 구현했습니다.트레이닝스텝,모델스텝, 및트랜스포머스텝. 이러한 확장은 에서 제공됩니다.ML 최대 프로젝트. 이러한 사용자 정의 단계의 인터페이스는 파이프라인 생성 중 또는 파이프라인이 실행 중일 때 구체적인 값으로 채울 수 있는 훨씬 더 많은 매개변수 자리 표시자를 지원합니다.