BLOG

Amazon FSx for Lustre 및 Amazon EFS 파일 시스템을 활용한 Amazon SageMaker 훈련 속도 향상법
작성일: 2019년 10월 8일

Amazon SageMaker 는 데이터 사이언스 및 머신 러닝 워크 플로우를 위해 완벽히 관리되는 서비스를 제공합니다.  이 Amazon SageMaker의 가장 중요한 기능 중 하나는 완전 관리형 교육 작업을 통한 기계 학습 모델 교육 기능입니다.

이제는 Amazon FSx for Luster  또는  Amazon Elastic File System (EFS)에 저장된 데이터에서 머신 러닝 모델을 교육하여 교육 작업 실행 속도를 높일 수 있습니다. Luster 용 Amazon FSx는 Amazon Simple Storage Service (S3)와 기본적으로 통합되어 기계 학습, 분석 및 고성능 컴퓨팅과 같은 워크로드에 최적화된 고성능 파일 시스템을 제공합니다. Amazon EFS는 AWS 클라우드 서비스 및 온프레미스 리소스와 함께 사용할 수 있도록 간단하며 확장 가능한 탄력적 Linux 기반 워크로드 용 파일 시스템을 제공합니다.

머신 러닝 학습 모델은 훈련 데이터 세트를 훈련 작업에 제공해야 합니다. 지금까지 파일 입력 모드에서 Amazon S3를 교육 데이터 소스로 사용하는 경우 모든 교육 데이터는 Amazon S3에서 교육 작업 시작 시 교육 인스턴스에 연결된 EBS 볼륨으로 다운로드해야 했습니다. Amazon FSx for Luster 또는 EFS와 같은 분산 파일 시스템은 이 다운로드 단계가 필요 없으므로 머신 러닝 교육 속도를 높일 수 있습니다.

오늘 테크블로그에서는 파일 시스템을 사용하여 모델을 학습함으로써 얻을 수 있는 이점들을 살펴보고, 파일 시스템을 선택하는 데 도움이 되는 정보와 함께 실행 방법을 설명해 드리겠습니다.

 

Amazon SageMaker에서 모델 훈련을 위한 파일 시스템 선택하기

파일 시스템에서 머신 러닝 모델을 훈련을 할지 말지 고민할 때 가장 먼저 고려해야 할 것은 훈련 데이터가 있는 장소입니다.

교육 데이터가 이미 Amazon S3에 있고 교육 작업에 필요한 교육 시간이 더 빠르지 않은 경우 데이터 이동없이 Amazon SageMaker를 시작할 수 있습니다. 그러나 더 빠른 시작 및 교육 시간이 필요한 경우 기본적으로 Amazon S3와 통합 된 Lustre 용 Amazon FSx 파일 시스템을 사용하는 것이 좋습니다.

Luster 용 Amazon FSx는 Amazon S3 데이터를 Amazon SageMaker에 고속으로 제공하여 교육 작업 속도를 높입니다. 교육 작업을 처음 실행하면 Amazon FSx for Luster가 Amazon S3의 데이터를 자동으로 복사하여 Amazon SageMaker에서 사용할 수 있게 합니다. 또한 동일한 Amazon FSx 파일 시스템을 사용해 Amazon SageMaker에서 후속 훈련 작업을 반복함으로 공통 Amazon S3 객체를 반복적으로 다운로드할 수 없습니다. 이로 인해 Amazon FSx는 Amazon S3에 교육 세트가 있는 교육 작업과 다른 교육 알고리즘 또는 매개 변수를 사용합니다. 즉 훈련 작업을 여러 번 실행해야 하는 워크 플로우에 있어 가장 좋은 결과를 얻을 수 있다는 것이 Amazon FSx의 제일 큰 장점입니다.

 

교육 데이터가 이미 Amazon EFS 파일 시스템에 있는 경우 파일 시스템 데이터 소스로 Amazon EFS를 선택하는 것이 좋습니다. 이 옵션을 선택하면 데이터 이동 없이 Amazon EFS의 데이터에서 교육 작업을 직접 시작할 수 있어 교육 시작 시간이 단축된다는 이점이 있습니다. 이는 데이터 과학자가 Amazon EFS에 홈 디렉토리를 가진 상태에서 새로운 데이터를 가져오고 동료와 데이터를 공유하며 포함할 필드나 레이블을 실험하여 모델을 빠르게 반복하는 환경에 적합합니다. 예를 들어, 데이터 과학자는 Jupyter 노트북을 사용하여 교육 세트에서 초기 청소를 수행하고 SageMaker에서 교육 작업을 시작한 다음 노트북을 사용하여 열을 삭제하고 교육 작업을 다시 시작하여 어떤 모델이 더 잘 작동하는지 결과 모델을 비교할 수 있습니다.

 

Amazon FSx 시작하기

  1. 교육 데이터 Amazon S3 버킷 및 경로를 참고하십시오.
  2. 원하는 크기의 Amazon FSx 파일 시스템을 만듭니다. 데이터 저장소 통합을 펼치십시오 데이터 저장소 유형으로 Amazon S3 를  선택하고  Amazon S3 교육 데이터에 해당하는 Import bucket  및  Import 접두사를  지정하십시오  .
  3. 작성되면 파일 시스템 ID를 기록하십시오.
  4. 이제 Amazon SageMaker 콘솔로 이동하여 교육 작업 페이지를 열어 교육 작업을 생성하고 VPC 서브넷, 보안 그룹을 연결하고 파일 시스템을 교육용 데이터 소스로 제공하십시오.
  5. 훈련 직업을 만드십시오:
    1. IAM 역할에 대한 ARN에 필요한 액세스 제어 및 권한 정책을 제공하십시오. 자세한 내용은  AmazonSageMakerFullAccess 를 참고하십시오.
    2. 교육 작업 및 파일 시스템이 액세스 할 수있는 VPC를 지정하십시오. 또한 보안 그룹에서 포트 988을 통한 Luster 트래픽이 파일 시스템에 저장된 교육 데이터 세트에 대한 액세스를 제어 할 수 있는지 확인하십시오. 자세한 내용은 Amazon FSx 시작하기를 참고하십시오.
    3. 파일 시스템을 데이터 소스로 선택하고 파일 시스템 ID, 경로 및 형식을 올바르게 참조하십시오.
  6. 훈련 작업을 시작하십시오.

 

Amazon EFS 시작하기

  1. 교육 데이터를 Amazon EFS의 자체 디렉토리에 넣습니다.
  2. 이제 Amazon SageMaker 콘솔로 이동하여 교육 작업 페이지를 열어 교육 작업을 생성하고 VPC 서브넷, 보안 그룹을 연결하고 파일 시스템을 교육용 데이터 소스로 제공하십시오.
  3. 훈련 직업을 만드십시오 :
    1. 필요한 액세스 제어 및 권한 정책으로 IAM 역할에 대한 IAM 역할 ARN 제공
    2. 교육 작업 및 파일 시스템이 액세스 할 수있는 VPC를 지정하십시오. 또한 보안 그룹에서 포트 2049를 통한 NFS 트래픽이 파일 시스템에 저장된 교육 데이터 세트에 대한 액세스를 제어 할 수 있는지 확인하십시오.
    3. 파일 시스템을 데이터 소스로 선택하고 파일 시스템 ID, 경로 및 형식을 올바르게 참조하십시오.
  4. 훈련 작업을 시작하십시오.

교육 작업이 완료된 후 파일 시스템 데이터 소스를 사용할 때 빠른 다운로드 시간을 관찰하기 위해 교육 작업의 상태 기록을 볼 수 있습니다.

 

글을 마치며

Amazon SageMaker의 머신 러닝 모델 학습을 위한 데이터 소스로 Luster 용 Amazon FSx 및 Amazon EFS를 추가됨으로써 사용자들이 자신의 목적에 맞는 데이터 소스를 선택할 수 있는 유연성이 향상되었습니다. 오늘은 파일 시스템 데이터 소스를 사용하여 기계 학습 모델을 교육하며, 데이터 다운로드 단계를 생략하여 교육 시작 시간을 단축해보았습니다.

 

Amazon SageMaker에 기계 학습 모델 교육을 직접 시작해 보시려면 여기를 클릭하시거나 AWS의 샘플 노트북, 파일 시스템 데이터 소스를 사용한 선형 학습자 모델을 훈련법을 참고해 주시기 바랍니다.

 

원문 URL: https://aws.amazon.com/ko/blogs/machine-learning/speed-up-training-on-amazon-sagemaker-using-amazon-efs-or-amazon-fsx-for-lustre-file-systems/

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