Docker 컨테이너를 사용하여 모델 구축 - 아마존 SageMaker

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

Docker 컨테이너를 사용하여 모델 구축

SageMaker Amazon은 Docker 컨테이너를 빌드 및 런타임 작업에 광범위하게 사용합니다. SageMaker 내장 알고리즘과 교육 및 추론에 사용되는 지원되는 딥 러닝 프레임워크를 위해 사전 구축된 Docker 이미지를 제공합니다. 컨테이너를 사용하면 기계 학습 알고리즘을 훈련하고 모델을 빠르고 안정적으로 모든 규모로 배포할 수 있습니다. 이 섹션의 주제들은 자체 사용 사례에 맞게 이러한 컨테이너를 배포하는 방법을 다룹니다. Amazon SageMaker Studio Classic에서 사용할 자체 컨테이너를 가져오는 방법에 대한 자세한 내용은 을 참조하십시오자체 SageMaker 이미지를 가져오세요..

스크립트 실행, 알고리즘 교육 또는 모델 배포 시나리오 SageMaker

Amazon은 스크립트 실행, 알고리즘 교육, 모델 배포 시 SageMaker 항상 Docker 컨테이너를 사용합니다. 컨테이너의 사용 수준은 사용 사례에 따라 다릅니다.

사전 빌드된 Docker 컨테이너를 다음과 같이 사용하는 사용 사례 SageMaker

다음과 함께 컨테이너를 사용할 때는 다음 사용 사례를 고려해 보세요. SageMaker

  • 사전 빌드된 SageMaker 알고리즘 — 내장 알고리즘과 함께 제공되는 이미지를 사용합니다. 자세한 내용은 Amazon SageMaker 내장 알고리즘 또는 사전 학습된 모델 사용을 참조하십시오.

  • 사전 구축된 SageMaker 컨테이너가 포함된 사용자 지정 모델 — 사용자 지정 모델을 교육 또는 배포하지만 PyTorch, TensorFlow 및 를 포함하는 사전 빌드된 SageMaker 컨테이너가 있는 프레임워크를 사용하는 경우 다음 옵션 중 하나를 선택하십시오.

    • 사용자 지정 패키지가 필요하지 않고 컨테이너에 필요한 모든 패키지가 이미 포함되어 있는 경우: 프레임워크와 연결된 사전 빌드된 Docker 이미지를 사용하세요. 자세한 설명은 사전 빌드된 Docker 이미지를 사용하세요. SageMaker 섹션을 참조하세요.

    • 사전 빌드된 컨테이너 중 하나에 설치된 사용자 지정 패키지가 필요한 경우: 사전 빌드된 Docker 이미지가 requirements.txt 파일을 허용하는지 확인하거나 다음 사용 사례에 따라 사전 빌드된 컨테이너를 확장하십시오.

사전 빌드된 Docker 컨테이너를 확장하는 사용 사례

다음은 사전 빌드된 Docker 컨테이너를 확장하는 사용 사례입니다.

  • 종속성을 가져올 수 없음 — 프레임워크와 관련된 사전 빌드된 Docker 이미지를 확장하세요. 자세한 정보는 사전 빌드 컨테이너 확장을 참조하세요

  • 사전 빌드된 컨테이너의 종속성은 가져올 수 없으며 사전 빌드된 컨테이너는 requirements.txt을 지원합니다 — requirements.txt 파일의 모든 필수 모든 종속성을 추가합니다.. 다음 프레임워크는 requirements.txt 사용을 지원합니다.

자체 컨테이너 제작 사용 사례

사용자 지정 모델을 빌드하거나 학습하고 사전 빌드된 이미지가 없는 사용자 지정 프레임워크가 필요한 경우 사용자 지정 컨테이너를 빌드하세요.

다음 의사 결정 트리는 이전 세 가지 목록의 정보를 보여줍니다. 사전 빌드된 Docker 컨테이너를 사용하는 사용 사례 SageMaker; 사전 빌드된 Docker 컨테이너를 확장하는 사용 사례; 자체 컨테이너를 구축하는 사용 사례.


                    사용자 지정 컨테이너를 빌드할지, 컨테이너를 확장할지, 사전 빌드된 컨테이너를 사용할지 선택할 수 있는 의사 결정 트리.

고객 사용 사례로 TensorFlow 모델을 학습하고 배포하려면 사용 사례의 이전 섹션을 참조하여 필요한 컨테이너를 결정하십시오. 컨테이너를 선택할 때 고려할 수 있는 사항은 다음과 같습니다.

필요한 컨테이너 유형을 결정한 후 다음 정보는 이전에 나열된 옵션에 대한 세부 정보를 제공합니다.

  • 내장된 SageMaker 알고리즘 또는 프레임워크를 사용하세요. 대부분의 사용 사례에서 컨테이너에 대한 걱정 없이 내장된 알고리즘과 프레임워크를 사용할 수 있습니다. SageMaker 콘솔, AWS Command Line Interface (AWS CLI), Python 노트북 또는 Amazon SageMaker Python SDK에서 이러한 알고리즘을 교육하고 배포할 수 있습니다. Estimator를 생성할 때 알고리즘 또는 프레임워크 버전을 지정하여 이를 수행할 수 있습니다. 사용할 수 있는 내장 알고리즘은 항목화되어 Amazon SageMaker 내장 알고리즘 또는 사전 학습된 모델 사용 주제에 설명되어 있습니다. 사용 가능한 프레임워크에 대한 자세한 내용은 ML 프레임워크 및 언어 섹션을 참조하세요. SageMaker 노트북 인스턴스에서 실행되는 Jupyter 노트북을 사용하여 내장 알고리즘을 학습하고 배포하는 방법에 대한 예는 주제를 참조하십시오. 시작

  • 사전 빌드된 컨테이너 이미지를 SageMaker 사용하세요. 또는 Docker 컨테이너를 사용하여 내장된 알고리즘과 프레임워크를 사용할 수 있습니다. SageMaker Apache, MXnet,, Chainer와 같은 가장 일반적인 기계 학습 프레임워크를 위해 사전 빌드된 Docker 이미지와 내장 알고리즘을 위한 컨테이너를 제공합니다. TensorFlow PyTorch 사용 가능한 SageMaker 이미지의 전체 목록은 사용 가능한 Deep Learning Containers 이미지를 참조하십시오. 또한 scikit-learn 및 SparkML과 같은 기계 학습 라이브러리를 지원합니다. Amazon SageMaker Python SDK를 사용하는 경우 전체 컨테이너 URI를 해당 SageMaker SDK Estimator 클래스에 전달하여 컨테이너를 배포할 수 있습니다. 에서 현재 지원하는 SageMaker 딥 러닝 프레임워크의 전체 목록은 을 참조하십시오. 딥 러닝을 위한 사전 구축된 SageMaker Docker 이미지 scikit-learn 및 SparkML 사전 빌드 컨테이너 이미지에 대한 자세한 내용은 Scikit-learn 및 Spark ML용 사전 구축된 Amazon SageMaker Docker 이미지 단원을 참조하십시오. Amazon SageMaker Python SDK에서 프레임워크를 사용하는 방법에 대한 자세한 내용은 에서 해당 주제를 참조하십시오. 기계 학습 프레임워크 및 언어

  • 사전 빌드된 SageMaker 컨테이너 이미지를 확장하십시오. 사전 빌드된 SageMaker 알고리즘을 확장하거나 Docker 이미지를 모델링하려는 경우 필요에 맞게 SageMaker 이미지를 수정할 수 있습니다. 예를 들어 컨테이너 확장을 참조하십시오. PyTorch

  • 기존 컨테이너 이미지 조정: 기존 컨테이너 이미지를 작업에 맞게 조정하려면 SageMaker Training 또는 Inference 툴킷을 활성화하도록 Docker 컨테이너를 수정해야 합니다. SageMaker 알고리즘을 학습하고 호스트하기 위해 자체 컨테이너를 작성하는 방법을 보여주는 예제는 나만의 R 알고리즘 가져오기를 참조하십시오.