BLOG

Amazon SageMaker 일괄 변환이 이제 Amazon VPC와 AWS KMS 기반의 암호화 기능을 지원합니다.
작성일: 2018-11-12

Amazon SageMakerAmazon VPC (Amazon Virtual Private Cloud)AWS KMS (AWS Key Management Service)를 사용하여 일괄 변환 작업을 실행할 수 있도록 지원합니다. Amazon VPC를 사용하면 ML (Machine Learning) 모델 컨테이너 및 데이터에 대한 액세스를 제어하여 개인적이며 인터넷을 통해 액세스 할 수 없도록 할 수 있습니다. AWS KMS를 사용하면 일괄 변환 작업을 실행하는 ML 컴퓨팅 인스턴스에 연결된 스토리지 볼륨의 데이터를 암호화 할 수 있습니다. 이렇게 하면 일괄 처리 작업에 사용되는 모델 아티팩트, 로그 및 임시 파일이 항상 안전합니다. 이 글에서는 일괄 변환 작업에 이러한 기능을 적용하는 방법을 설명합니다.

 

Amazon SageMaker 일괄 변환은 대규모 데이터 일괄 처리, 교육 데이터 사전 처리 및 변환이 필요하거나 잠시의 대기 시간이 필요하지 않은 시나리오에 이상적입니다. 데이터의 페타 바이트부터 매우 작은 데이터셋까지 다양한 데이터셋에 대해 일괄 변환을 사용할 수 있습니다. 기존의 Machine Learning 모델은 이 새로운 기능으로 변경 없이 원활하게 작동합니다. Amazon SageMaker는 일괄 변환 작업을 시작할 때 자원 프로비저닝을 관리합니다. 그런 다음 작업이 완료되면 작업을 릴리스하므로 작업 실행 중에 사용된 자원에 대해서만 비용을 지불하게 됩니다.

 

VPC를 사용하면 VPC가 개인용이고 인터넷에 연결되지 않도록 구성 할 수 있으므로 데이터 및 모델 아티팩트를 저장하는 Amazon S3 버킷과 같이 액세스하는 모델 컨테이너 및 AWS 리소스를 보호하는 데 도움이 됩니다. VPC를 사용하는 경우 VPC 흐름 로그를 사용하여 모델 컨테이너 안팎으로 나가는 모든 네트워크 트래픽을 모니터링 할 수도 있습니다. VPC를 지정하지 않으면 Amazon SageMaker는 기본적으로 VPC에서 일괄 변환 작업을 실행합니다.

 

Amazon SageMaker 일괄 변환은 이미 Amazon S3 SSE의 입력 및 출력 데이터 암호화를 지원합니다. AWS KMS를 사용하면 일괄 변환 작업 중에 사용되는 스토리지 볼륨을 제어하는 ​​암호화 키로 보호할 수 있습니다. 추론을 실행하거나 일괄 처리 데이터를 변환할 때 중앙 키 관리, 키 사용 감사 로깅 및 마스터 키 순환과 같은 AWS KMS 기능을 활용할 수 있습니다. 데이터 암호화에 사용되는 암호화 키 사용을 생성, 가져오기, 회전, 비활성화, 삭제, 사용 정책 정의 및 감사 할 수 있습니다. AWS KMS는 AWS CloudTrail과 통합되어 모든 주요 사용 로그를 제공하여 규정 준수 요구 사항을 충족시킵니다.

 

일괄 변환 작업을 생성하는 방법

내장 객체 감지 알고리즘을 위해 일괄 변환 작업을 실행하는 방법에 대해 살펴 보겠습니다. 저는 이 예제 노트북을 따라 물건 탐지 모델을 훈련시켰습니다.

 

이제 Amazon SageMaker 콘솔로 가서 모델 페이지를 열어, 모델을 만들고 개인 서브넷과 보안 그룹을 연결합니다.

 

 

이제 우리는 물체 감지 이미지와 트레이닝에서 생성된 모델 아티팩트를 사용하여 모델을 만들 수 있습니다.

 

 

여기서 모델 이름을 지정하고 필요한 사용 권한을 제공하는 IAM 역할을 지정합니다. 여기서도 개인 VPC의 서브넷 및 보안 그룹을 지정하여 컨테이너 및 Amazon S3 데이터에 대한 액세스를 제어합니다. 다음 스크린 샷에서 볼 수 있듯이 VPC를 선택하면 Amazon SageMaker가 해당 VPC의 서브넷과 보안 그룹을 자동으로 채웁니다. 이 예에서 개인 VPC의 여러 서브넷과 보안 그룹을 제공했습니다. Amazon SageMaker 일괄 변환은 단일 서브넷을 선택하여 내 VPC에서 ENI (elastic network interface)를 만들고 이를 모델 컨테이너에 연결합니다. 이러한 ENI는 모델 컨테이너에 네트워크 연결을 제공하여 일괄 변환 작업이 인터넷을 거치지 않고도 개인 VPC의 리소스에 연결할 수 있도록합니다.

 

 

또한 Amazon SageMaker는 제공한 모든 보안 그룹을 개인용 VPC에서 만든 네트워크 인터페이스와 연결합니다.

 

이와 별도로 인터넷 액세스가 비활성화 된 경우에도 모델 컨테이너가 내 입력 데이터가 저장되는 Amazon S3 버킷에 액세스 할 수 있게 해주는 S3 VPC 엔드포인트를 만들었습니다. 개인용 VPC의 요청만 S3 버킷에 액세스 할 수 있도록 하는 사용자 지정 정책을 만드는 것이 좋습니다. 자세한 내용은 Amazon S3를 위한 엔드포인트 를 참조하십시오.

 

이제 추론 컨테이너 이미지 Amazon Elastic Container Registry (Amazon ECR 위치)와 객체 검색 작업에서 내 모델 아티팩트 위치를 지정합니다.

 

 

그렇게 하면 끝입니다! 이제 VPC 내에서 안전하게 실행되도록 구성된 모델을 보유하게 되었습니다.

 

이제 Selfies Dataset에서 이전에 훈련된 개체 검색 모델을 사용하여 새로운 일괄 변환 작업을 만듭니다. Amazon SageMaker 콘솔의 일괄 변환 페이지로 이동하십시오.

 

 

일괄 변환 작업 구성창에서 다음 예제와 같이 양식을 작성하십시오. 이 양식을 작성하는 방법에 대한 자세한 내용은 일괄 변환 (콘솔) 사용을 참조하십시오.

 

 

새로운 AWS KMS 기능을 사용하여 암호화 키를 지정했습니다. Amazon SageMaker는이를 사용하여 일괄 변환 작업을 실행하는 ML 컴퓨팅 인스턴스에 연결된 스토리지 볼륨의 데이터를 암호화합니다.

 

그런 다음 입력 위치를 지정하십시오. 매니페스트 파일을 사용하거나 S3 위치의 모든 파일을 로드 할 수 있습니다. 이미지를 다루므로 입력 내용 유형을 지정했습니다.

 

 

또한 모델 컨테이너가 제 입력 데이터가 저장되는 Amazon S3 버킷에 오프라인으로 액세스 할 수있게 해주는 VPC 엔드포인트를 만들었습니다. 또한 개인 VPC의 요청으로만 S3 버킷에 액세스 할 수 있도록 하는 사용자 지정 정책을 만드는 것이 좋습니다. 자세한 내용은 Amazon S3를 위한 엔드포인트를 참조하십시오.

 

마지막으로, 다음 예제와 같이 출력 위치를 구성하고 작업을 시작합니다. 앞서 언급했듯이 출력용 KMS 암호화 키를 지정할 수 있으므로 일괄 변환 출력이 S3 KMS SSE를 사용하여 서버 쪽에서 암호화됩니다.

 

 

변환 작업을 시작하면 작업 세부 정보 페이지를 열고 Amazon CloudWatch의 메트릭 및 로그에 대한 링크를 따라갈 수 있습니다.

 

 

Amazon CloudWatch를 사용하면 변환 작업이 실행 중임을 알 수 있습니다. Amazon S3에서 결과를 보면 다음 예제와 같이 각 이미지의 예상 레이블을 볼 수 있습니다.

 

 

변환 작업은 감지된 물체가 들어있는 각 입력 파일에 대한 JSON 파일을 작성합니다.

S3 버킷에서 AWS Glue의 버킷에 대한 테이블을 만드는 것이 효율적입니다. 그런 다음 Amazon Athena로 결과를 쿼리하거나 Amazon QuickSight를 사용하여 시각화하십시오.

 

 

또한 상위 수준의 Python 라이브러리 또는 하위 수준 SDK (boto3)를 사용하여 프로그래밍 방식으로 변환 작업을 시작할 수도 있습니다. 자체 컨테이너를 사용하여 일괄 변환을 사용하는 방법에 대한 자세한 내용은 Amazon SageMaker 일괄 변환을 사용하여 추측하기를 참조하세요.

 

일괄 변환은 예측이 필요한 데이터의 대규모 일괄 처리, 1 초 미만의 대기 시간이 필요하지 않거나 교육 데이터를 사전 처리 및 변환해야하는 경우에 이상적입니다. 이 글에서는 Amazon VPCAWS KMS를 사용하여 일괄 변환 작업의 보안을 향상시키는 방법에 대해 설명했습니다. 일괄 변환을 위한 Amazon VPC 및 AWS KMS는 Amazon SageMaker를 사용할 수 있는 모든 AWS 리전에서 사용할 수 있습니다. 자세한 내용은 Amazon SageMaker 개발자 안내서를 참조하십시오.

 

원문 URL: https://aws.amazon.com/ko/blogs/machine-learning/amazon-sagemaker-batch-transform-now-supports-amazon-vpc-and-aws-kms-based-encryption/

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