SageMaker 프로젝트란 무엇인가요? - 아마존 SageMaker

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

SageMaker 프로젝트란 무엇인가요?

SageMaker 조직은 프로젝트를 통해 데이터 과학자를 위한 개발자 환경과 엔지니어를 위한 CI/CD 시스템을 설정하고 표준화할 수 있습니다. MLOps 또한 프로젝트는 조직이 종속성 관리, 코드 리포지토리 관리, 빌드 재현성 및 아티팩트 공유를 설정하는 데 도움이 됩니다.

사용자 지정 템플릿 또는 SageMaker 제공된 템플릿을 사용하여 AWS Service Catalog에서 SageMaker 프로젝트를 프로비전할 수 있습니다. 서비스 카탈로그에 대한 자세한 내용은 AWS 서비스 카탈로그란 AWS ? 을 참조하십시오. SageMaker 프로젝트를 사용하면 MLOps 엔지니어와 조직 관리자가 자체 템플릿을 정의하거나 SageMaker 제공된 템플릿을 사용할 수 있습니다. SageMaker제공된 템플릿은 소스 버전 제어, 자동화된 ML 파이프라인, ML 사용 사례에서 빠르게 반복을 시작할 수 있는 코드 세트를 통해 ML 워크플로를 부트스트랩합니다.

프로젝트를 언제 사용해야 할까요? SageMaker

노트북은 모델 구축 및 실험에 유용하지만 코드를 공유하는 데이터 사이언티스트와 ML 엔지니어 팀은 코드 일관성과 엄격한 버전 관리를 유지하기 위해 보다 확장 가능한 방법이 필요합니다.

모든 조직에는 AWS 환경에 대한 보안 및 거버넌스를 제공하는 고유한 표준 및 관행이 있습니다. SageMaker ML 워크플로우 및 CI/CD를 빠르게 시작하려는 조직을 위해 퍼스트 파티 템플릿 세트를 제공합니다. 템플릿에는 CI/CD용 AWS네이티브 서비스 (예:, 및) 를 사용하는 프로젝트가 포함됩니다. AWS CodeBuild AWS CodePipeline AWS CodeCommit템플릿은 Jenkins 및 같은 타사 도구를 사용하는 프로젝트를 만들 수 있는 옵션도 제공합니다. GitHub SageMaker 제공하는 프로젝트 템플릿 목록은 을 참조하십시오사용 SageMaker - 제공된 프로젝트 템플릿.

조직은 프로비저닝하고 관리하는 MLOps 리소스를 엄격하게 제어해야 하는 경우가 많습니다. 이러한 책임에는 IAM 역할 및 정책 구성, 리소스 태그 적용, 암호화 적용, 여러 계정의 리소스 분리 등의 특정 작업이 포함됩니다. SageMaker 프로젝트는 조직에서 템플릿을 사용하여 AWS CloudFormation ML 워크플로에 필요한 리소스를 정의하는 사용자 지정 템플릿 제공을 통해 이러한 모든 작업을 지원할 수 있습니다. 데이터 사이언티스트는 템플릿을 선택하여 ML 워크플로를 부트스트랩하고 사전 구성할 수 있습니다. 이러한 사용자 지정 템플릿은 Service Catalog 제품으로 생성되며 조직 템플릿의 Studio 또는 Studio Classic UI에서 제공할 수 있습니다. Service Catalog는 조직에서 사용이 승인된 제품 카탈로그를 만들고 관리할 수 있도록 지원하는 서비스입니다. AWS사용자 지정 템플릿을 만드는 방법에 대한 자세한 내용은 사용자 지정 SageMaker 프로젝트 템플릿 작성 — 모범 사례를 참조하십시오.

SageMaker 프로젝트는 Git 리포지토리를 관리하는 데 도움이 되므로 팀 간에 더 효율적으로 협업하고, 코드 일관성을 보장하고, CI/CD를 지원할 수 있습니다. SageMaker 프로젝트는 다음 작업에 도움이 될 수 있습니다.

  • ML 수명 주기의 모든 엔터티를 하나의 프로젝트로 구성합니다.

  • 모범 사례를 통합한 모델 훈련 및 배포를 위한 표준 ML 인프라를 설정하는 원클릭 접근 방식을 설정합니다.

  • ML 인프라용 템플릿을 만들고 공유하여 여러 사용 사례를 지원합니다.

  • 미리 작성된 템플릿을 활용하여 SageMaker 모델 구축에 빠르게 집중하거나 조직별 리소스 및 지침이 포함된 사용자 지정 템플릿을 만들 수 있습니다.

  • 프로젝트 템플릿을 확장하여 원하는 도구와 통합합니다. 예제는 통합할 SageMaker 프로젝트 만들기 및 파이프라인을 참조하십시오. GitLab GitLab

  • ML 수명 주기의 모든 엔터티를 하나의 프로젝트로 구성합니다.

SageMaker 프로젝트에는 무엇이 있나요?

고객은 자신의 사용 사례에 가장 적합한 리소스로 프로젝트를 유연하게 설정할 수 있습니다. 아래 예제는 모델 교육 및 배포를 포함한 ML 워크플로의 MLOps 설정을 보여줍니다.

모델 학습 및 배포 단계가 포함된 파이프라인의 ML 워크플로 다이어그램.

SageMaker제공된 템플릿이 있는 일반적인 프로젝트에는 다음이 포함될 수 있습니다.

  • ML 솔루션을 빌드하고 배포하기 위한 샘플 코드가 있는 하나 이상의 리포지토리. 다음은 필요에 맞게 수정할 수 있는 실제 예제입니다. 이 코드를 소유하고 있으며 버전 관리 리포지토리를 작업에 활용할 수 있습니다.

  • 다음 다이어그램과 같이 데이터 준비, 교육, 모델 평가, 모델 배포를 위한 단계를 정의하는 SageMaker 파이프라인입니다.

    데이터 준비, 교육, 모델 평가, 모델 배포 단계가 포함된 SageMaker 파이프라인.
  • 새 버전의 코드를 체크인할 때마다 SageMaker 파이프라인을 실행하는 A CodePipeline 또는 Jenkins 파이프라인. 에 대한 자세한 내용은 CodePipeline AWS CodePipelineWhatis를 참조하십시오. Jenkins에 대한 자세한 내용은 Jenkins 사용자 설명서를 참조하세요.

  • 모델 버전이 포함된 모델 그룹. SageMaker 파이프라인 실행의 결과 모델 버전을 승인할 때마다 이를 SageMaker 엔드포인트에 배포할 수 있습니다.

각 SageMaker 프로젝트에는 고유한 이름과 ID가 있으며, 이 이름과 ID는 프로젝트에서 생성된 모든 SageMaker 및 AWS 리소스에 태그로 적용됩니다. 이름과 ID를 사용하여 프로젝트와 관련된 모든 엔터티를 볼 수 있습니다. 다음이 포함됩니다.

  • 파이프라인

  • 등록된 모델

  • 배포된 모델(엔드포인트)

  • 데이터세트

  • 서비스 카탈로그 제품

  • CodePipeline 및 Jenkins 파이프라인

  • CodeCommit 및 타사 Git 리포지토리

파이프라인을 사용하려면 프로젝트를 만들어야 하나요? SageMaker

아니요. SageMaker 파이프라인은 교육 작업, 처리 작업, 기타 SageMaker 작업과 마찬가지로 독립형 개체입니다. SageMaker 프로젝트를 사용하지 SDK 않고 SageMaker Python을 사용하여 노트북 내에서 직접 파이프라인을 생성, 업데이트 및 실행할 수 있습니다.

프로젝트는 코드를 구성하고 프로덕션 품질 시스템에 필요한 운영 모범 사례를 채택하는 데 도움이 되는 추가 계층을 제공합니다.