BLOG

관리형 스팟 교육, Amazon SageMaker 교육 비용을 최대 90%까지 절감
작성일: 2019-09-30

Amazon SageMaker는 개발자와 데이터 과학자가 모든 규모의 모델을 쉽게 구축, 교육 및 배포할 수 있도록 하는 완전 관리형 모듈식 기계 학습(ML) 서비스입니다. 내장 알고리즘을 사용하거나 자체 알고리즘을 가져올 수 있고, AWS Marketplace의 사용 가능한 알고리즘 중에서 선택할 수도 있기 때문에 ML 모델을 실험에서 스케일 아웃 프로덕션으로 전환하는 것이 그 무엇보다 훨씬 쉽고 빠릅니다.

Amazon SageMaker의 주요 이점 중 하나는 작업 규모에 관계없이 모든 인프라 관리가 필요 없다는 것입니다. 예를 들어 복잡한 교육 클러스터를 설정하고 관리하는 대신 Amazon SageMake에 사용할 Amazon Elastic Compute Cloud (EC2) 인스턴스 유형과 필요한 수량을 알려주기만 하면 필요한 인스턴스가 생성되고 구성됩니다. 훈련 작업이 완료되면 이는 자동으로 종료됩니다. 사용자들은 이게 무엇을 뜻하는지 알 수 있을 텐데요. 바로 비용을 통제할 수 있는 간단한 방법, idle 교육 인스턴스에 대해 비용을 지불하지 않아도 됨을 의미합니다.

 

관리형 스팟 교육을 소개합니다!
한 단계 더 나아가 AWS는 Amazon SageMaker용 관리형 스팟 교육을 출시하게 되었습니다. 아마존 EC2 스팟 인스턴스를 기반으로 하는 이 새로운 기능은 Amazon SageMaker의 온디맨드 인스턴스를 사용했을 때와 비교 시 최대 90 %까지 절감된 ML 교육 비용으로 사용자들에게 도움을 드릴 예정입니다. 거의 10년 전에 시작된 스팟 인스턴스는 AWS에서 확장이 가능하며 비용 최적화된 IT 플랫폼을 구축하는 초석 중 하나였습니다.  본 서비스의 출시로  Amazon SageMaker 교육 작업은 완전 관리형 인프라에서 실행될 뿐만 아니라 완전히 관리되는 비용 최적화의 이점을 활용하여 동일한 예산으로 훨씬 더 많은 성과를 달성 할 수 있습니다. 고민하지 마시고 어서 사용해 보세요!

 

Managed Spot Training은 모든 교육 구성에서 사용할 수 있습니다.

완전 관리형 서비스로 작업할 때와 같이 설정이 매우 간단합니다.

  • 콘솔을 사용하는 경우 기능을 켜십시오.
  • 아마존 SageMaker SDK로 작업하는 경우 Estimator생성자에 train_use_spot_instances를 true로 설정하십시오.

이게 전부입니다. 이렇게 하면 최대 90 %를 절약 할 수 있습니다. 멋지지 않나요?

 

중단 및 체크 포인트
관리형 스팟 교육을 사용할 때 다른 것과는 다른 중요한 차이점이 있습니다. 교육 작업이 완료 될 때까지 사용할 수 있는 주문형 교육 인스턴스와 달리 용량이 더 필요한 경우 언제든지 Managed Spot Training 인스턴스를 회수할 수 있습니다.

Amazon Elastic Compute Cloud (EC2) 스팟 인스턴스로 사용자는 종료 통지를 2분 전에 받게 되고 이때 직접 적절한 조치를 직접 수행해야 합니다. 하지만 걱정하지 마세요. Amazon SageMaker는 완전 관리형 서비스이므로 이 프로세스를 자동으로 처리하여 교육 작업을 중단하고 적절한 스팟 용량을 다시 확보하여 교육 작업을 다시 시작할 수 있습니다. 이는 작업 시작 시간과 작업 시간이 유연할 때 더 유용하게 사용할 수 있습니다. 이 MaxWaitTimeInSeconds매개 변수를 사용하여 교육 작업의 총 기간(실제 교육 시간 + 대기 시간)을 제어할 수도 있습니다.

교육 작업이 중단될 때 처음부터 다시 시작하지 않도록 하려면 모델을 주기적으로 훈련에 저장하는 기술인 검사 점을 구현하는 것이 좋습니다. 덕분에 가장 최근에 부분적으로 훈련된 모델부터 잘 정의된 시점에서 교육 작업을 재개 할 수 있습니다.

  • 기본 제공 프레임 워크 및 사용자 지정 모델: 교육 코드를 완전히 제어할 수 있습니다. CheckpointConfig 파라미터에 정의하여 SageMaker Estimator 에 전달한 위치를 사용하여 적절한 API를 통해 모델 체크 포인트를 Amazon Simple Storage Service (S3)에 정기적으로 저장하십시오. TensorFlow는 기본적으로 체크 포인트를 사용합니다. 다른 프레임 워크의 경우 샘플 노트북과 설명서에서 예제를 찾을 수 있습니다
  • .
  • 내장 알고리즘: 컴퓨터 비전 알고리즘은 검사 점(객체 감지의미 론적 분류, 곧 이미지 분류)을 지원합니다. 대용량 데이터 세트를 학습하고 다른 알고리즘보다 오래 실행하는 경향이 있으므로 중단될 가능성이 높습니다. 다른 내장 알고리즘은 현재 검사 점을 지원하지 않습니다.

자, 이제 충분히 설명을 드린 것 같으니 데모를 시작해 보겠습니다.

 

Managed Spot Training으로 내장 객체 감지 모델 교육
 샘플 노트북의 설명처럼 AWS 콘솔을 사용하여 주문형 교육 대신 Managed Spot Training으로 동일한 작업을 교육해 보겠습니다. 앞에서 설명한 것처럼 두 가지만 처리하면 됩니다.

  • Managed Spot Training을 활성화하십시오
  • MaxWaitTimeInSeconds를 설정하십시오 .

먼저 교육 작업의 이름을 지정하고 적절한 AWS 자격 증명 및 액세스 관리(IAM) 권한이 있는지 확인하십시오(변경 없음).

 

그런 다음 객체 감지를 위해 내장 알고리즘을 선택합니다.

 

그 후 훈련 작업에 대한 인스턴스 수와 인스턴스 유형을 선택하여 체크 포인트를 위한 충분한 스토리지가 있는지 확인합니다.

 

다음 단계는 하이퍼 매개 변수를 설정 하는 것입니다. 노트북에서와 동일한 매개 변수를 사용하겠습니다. 그런 다음 훈련 데이터 세트의 위치와 속성을 정의합니다.

 

유효성 검사 데이터 세트에 대해서도 동일하게 수행합니다.

 

또한 모델 검사 점을 저장할 위치를 정의합니다. 여기에서 Amazon SageMaker가 훈련 작업이 중단 된 경우 이를 다시 시작하기 위해 선택합니다.

 

여기서 최종 모델 아티팩트를 저장해야 합니다.

 

여기서는 최대 48 시간의 최대 대기 시간을 구성하여 Managed Spot Training을 활성화합니다.

 

자, 끝났습니다. 이제 모델을 훈련시켜 봅니다. 교육이 완료되면 콘솔에서 비용 절감 효과를 명확하게 확인할 수 있습니다.

보시다시피, 교육 작업은 2423초 동안 실행되었지만 837초만 청구되었습니다. Managed Spot Training 덕분에 65%가 절약된 것입니다!  다음으로는 가격 책정 방법에 대해 설명해 드리겠습니다.

 

가격
관리형 스팟 교육 작업은 완료되기 전 또는 종료되기 전까지의 기간 동안 가격이 책정됩니다.

체크 포인트를 사용하지 않는 내장 알고리즘 및 AWS Marketplace 알고리즘의 경우 최대 훈련 시간은 60분( MaxWaitTimeInSeconds파라미터)입니다.

마지막으로, 교육 작업이 몇 번이나 다시 시작되더라도 데이터 다운로드 시간에 대한 비용은 한 번만 청구됩니다.

 

정식 출시
이 새로운 기능은 Amazon SageMaker 를 사용할 수 있는 모든 리전에서 사용할 수 있습니다. 주저하지 말고 지금 사용해 보세요!

 

본 서비스에 대한 의견이 있으신 경우 Amazon SageMaker 용 AWS 포럼 남겨주십시오.

 

원문 URL: https://aws.amazon.com/ko/blogs/aws/managed-spot-training-save-up-to-90-on-your-amazon-sagemaker-training-jobs/

 

 

** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.