Amazon SageMaker에서 구축

Amazon SageMaker는 학습 데이터에 레이블을 지정하고 노트북에 액세스하며 이를 공유하고 내장된 알고리즘 및 프레임워크를 사용하는 데 필요한 모든 기능을 제공하므로 손쉽게 ML(기계 학습) 모델을 대규모로 구축하고 학습할 준비를 갖출 수 있습니다.

기능

협업 노트북 경험

Amazon SageMaker Studio 노트북은 클릭 한 번으로 제공하는 Jupyter 노트북으로, 탄력적인 컴퓨팅을 빠르게 가동할 수 있습니다. 노트북은 기계 학습 워크플로를 실행하거나 다시 생성하는 데 필요한 모든 기능을 포함하며, Amazon SageMaker Studio에 통합되어 있습니다. 노트북은 모든 공통 CUDA 및 cuDNN 드라이버, Anaconda 패키지 및 프레임워크 라이브러리에 미리 로드됩니다.

노트북 환경에서는 재사용 가능한 워크플로에서 데이터를 탐색 및 시각화하고 탐지 결과를 문서화할 수 있습니다. 노트북에서 Amazon S3에 저장된 데이터를 직접 가져올 수 있습니다. 또한 AWS Glue를 사용하여 Amazon RDS, Amazon DynamoDB, Amazon Redshift에서 손쉽게 S3로 데이터를 옮겨 분석할 수 있습니다.

탄력적 노트북이 없다면 노트북을 보거나 실행하거나 공유하기 위해 컴퓨팅 인스턴스를 빠르게 시작하여 노트북을 구동해야 합니다. 새 인스턴스를 빠르게 시작하는 데 추가 컴퓨팅 용량이 필요한 경우 노트북을 전송하고 이전 인스턴스를 종료합니다. 일반적으로 노트북은 컴퓨팅 인스턴스와 연결되어 있고 사용자 워크스테이션에 존재하기 때문에 노트북을 공유하고 협업 작업에서 반복하기가 쉽지 않습니다.

SageMaker Studio 노트북은 이러한 과제를 해결해줍니다. 더 이상 이전 인스턴스를 종료하고 새 인스턴스에서 작업을 새로 생성하는 데 시간을 쏟지 않아도 됩니다. 그래서 모델 구축을 훨씬 더 빠르게 시작할 수도 있습니다.

노트북을 작성하거나 가져오거나 여러 사용 사례를 위해 SageMaker에서 제공하는 미리 구축된 많은 노트북 중 하나를 사용할 수 있습니다. 시작한 후에는 중단 없이도 GPU 리소스를 포함하여 컴퓨팅 리소스를 늘리거나 줄일 수 있습니다. 또한 상태가 자동으로 저장되므로 다음에 노트북에 돌아갈 때 중단한 지점을 정확히 선택할 수 있습니다.

SageMaker Studio 노트북을 사용하면 동료와 쉽게 노트북을 공유할 수 있으므로, 결과를 쉽게 시각화하고 재현할 수 있습니다.

노트북

정확한 학습 데이터 세트 구축

Amazon SageMaker Ground Truth를 통해 기계 학습을 사용하여 매우 정확한 학습 데이터 세트를 신속하게 구축하고 데이터 레이블 지정 비용을 최대 70%까지 절감할 수 있습니다. 성공적인 기계 학습 모델은 모델에게 올바른 결정을 내리는 방법을 학습시키기 위해 레이블이 지정된 데이터를 사용하여 학습됩니다. 이 프로세스는 종종 수개월이 걸리고 대규모의 팀이 필요한 경우가 많습니다. SageMaker Ground Truth는 비용과 복잡성을 줄일 수 있는 혁신적인 솔루션을 제공하는 동시에, 능동적 학습인 인간의 기계 학습 프로세스와 수동 레이블 지정 작업을 결합하여 데이터 레이블 지정의 정확도를 향상시킵니다.

작동 방식

대규모 완전관리형 데이터 처리

기계 학습을 위한 데이터 처리 및 분석 워크로드는 비즈니스 요구 사항이 변경됨에 따라 할당과 확장이 어려운 자체 관리형 인프라에서 실행되는 경우가 많습니다. 이를 수행하기 위해 다른 도구를 사용하면 차선의 성능을 얻기도 번잡하고 자본과 운영 비용도 늘어납니다. Amazon SageMaker 처리 작업은 SageMaker의 용이성, 확장성 및 안정성을 데이터 처리 워크로드 실행에 대한 완전관리형 경험으로 대규모로 확장시켜 이 과제를 해결합니다. SageMaker 처리 작업에서는 기존 스토리지나 파일 시스템 데이터 원본에 연결하고, 작업 실행에 필요한 리소스를 빠르게 시작하며, 영구 스토리지에 출력을 저장하고, 로그 및 지표를 제공할 수 있습니다. 또한 원하는 프레임워크를 사용하여 고유한 컨테이너를 가져오고 데이터 처리 및 분석 워크로드 실행의 장점을 활용할 수 있습니다.

내장된 고성능 알고리즘

Amazon SageMaker는 속도, 규모, 정확도에 최적화된 확장 가능한 고성능 기계 학습 알고리즘을 제공하며, 이를 통해 페타바이트 규모의 데이터 세트 학습을 수행할 수 있습니다. 학습 도중 정답을 알려주는 지도 알고리즘 중에서 선택하여 모델이 실수한 곳을 모델에 알려줄 수 있습니다. SageMaker에는 XGBoost 같은 지도 알고리즘과 선형/로지스틱 회귀 또는 분류가 포함되어 있어 추천 및 시계열 예측 문제를 해결합니다. SageMaker에는 k-평균 클러스터링과 PCA(Principal Component Analysis) 등을 사용하는 비지도 학습(즉, 알고리즘이 스스로 정답을 찾아야 함)에 대한 지원도 포함되어 있어 구매 패턴에 따른 고객 그룹화 식별 등의 문제를 해결합니다.

SageMaker에서는 가장 일반적인 기계 학습 알고리즘을 자동으로 사용할 수 있습니다. 데이터 원본을 지정하기만 하면 데이터 분할을 위한 k-평균 클러스터링, 추천을 위한 인수 분해 머신, 시계열 예측, 선형 회귀, 주 성분 분석 또는 바로 사용할 수 있는 많은 다른 알고리즘을 시작할 수 있습니다.

알고리즘 설명
BlazingText Word2Vec 수많은 문서에서 워드임베딩 생성을 가속화 및 확장하기 위해 Word2Vec 알고리즘의 BlazingText 구현.
DeepAR RNN(순환 신경망)을 사용해 다수의 관련 시계열에서 패턴을 학습하여 정확한 예측을 생성하는 알고리즘.
Factorization Machines 아주 적은 양의 데이터로도 기능 사이의 모든 상호작용을 예측할 수 있는 기능을 갖춘 모델입니다.
Gradient Boosted Trees(XGBoost) "Extreme Gradient Boosting"의 약어인 XGBoost는 최적화된 분산형 경사 부스팅 라이브러리입니다.
이미지 분류(ResNet) 이미지 분류 시스템 개발을 위한 인기 있는 신경망.
IP Insights 악의적인 사용자를 탐지하거나 IP 주소의 사용 패턴을 학습하는 알고리즘입니다.
K-Means Clustering 가장 단순한 ML 알고리즘 중 하나로, 레이블이 지정되지 않은 데이터 내 그룹을 찾는 데 사용됩니다.
k-NN(K-Nearest Neighbor) 분류 및 회귀 기반 문제를 해결하는 인덱스 기반 알고리즘입니다.
LDA(Latent Dirichlet Allocation) 텍스트 파일 세트에 존재하는 기본 주제를 자동으로 검색하는 데 적합한 모델입니다.
Linear Learner(분류) 선형 분류는 객체의 특징을 사용해 객체가 속하는 적절한 그룹을 식별합니다.
Linear Learner(회귀) 선형 회귀는 두 변수 사이의 선형 관계를 예측하는 데 사용됩니다.
NTM(Neural Topic Modeling) 텍스트 및 이미지 데이터 세트의 학습 주제를 위한 신경망 기반 접근 방식입니다.
Object2Vec 가장 인접한 이웃을 계산하고 자연 클러스터를 시각화하는 신경 임베딩 알고리즘입니다.
객체 탐지 이미지의 여러 개체를 탐지 및 분류하고 경계 상자를 배치.
PCA(Principal Component Analysis) 흔히 데이터 사전 처리에 사용되는 이 알고리즘은 많은 기능의 테이블 또는 매트릭스를 가져와 보다 적은 수의 대표적 기능으로 줄입니다.
Random Cut Forest 이상 탐지를 위한 감독되지 않는 기계 학습 알고리즘.
의미 체계 분할(Semantic Segmentation) 이미지의 개별 픽셀에 레이블을 할당하여 관심 위치를 식별하도록 이미지에 파티션을 지정합니다.
Sequence2Sequence 기계 번역, 텍스트 요약 등에서 자주 사용되는 텍스트용 범용 인코더-디코더입니다.

자세히 알아보기 »

또한 도커 컨테이너를 통해 고유한 프레임워크나 알고리즘을 가져오거나 AWS Marketplace에서 사용 가능한 수백 개의 알고리즘 및 미리 학습된 모델 중에서 선택할 수 있습니다. 

다양한 프레임워크 지원

Amazon SageMaker에서는 TensorFlow, Apache MXNet, PyTorch, Chainer 등과 같은 딥 러닝을 위해 널리 사용되는 많은 프레임워크를 지원합니다. 이러한 프레임워크는 고성능을 위해 자동으로 구성 및 최적화됩니다. 이러한 프레임워크를 수동으로 설정하지 않아도 되며, 내장된 컨테이너에서 사용할 수 있습니다. 또한 원하는 프레임워크를 Amazon EC2 Container Registry에 저장할 수 있는 도커 컨테이너에 구축하면 원하는 프레임워크를 SageMaker에 가져올 수 있습니다.

자세히 알아보기 »

로컬에서 테스트 및 프로토타입 제작

Amazon SageMaker에서 사용하는 오픈 소스 Apache MXNetTensorflow 도커 컨테이너는 Github에서 제공합니다. 이러한 컨테이너를 로컬 환경에 다운로드하고 SageMaker 학습 또는 호스팅 환경에 배포하기 전에 SageMaker Python SDK를 사용하여 스크립트를 테스트할 수 있습니다. 로컬 테스트에서 프로덕션 학습 및 호스팅으로 전환할 준비가 되면, 코드 한 줄만 바꾸면 됩니다. 

강화 학습

Amazon SageMaker는 기존의 지도 학습 및 비지도 학습뿐 아니라 강화 학습을 지원합니다. SageMaker는 학술 문헌에 언급되는 몇 가지 최신 최고 성능 알고리즘을 비롯하여 완전 관리형 강화 학습 알고리즘을 내장하고 있습니다. SageMaker는 TensorFlow와 MXNet을 비롯한 여러 프레임워크에서 RL을 지원하고, Intel Coach, Ray RL과 같은 강화 학습을 위해 처음부터 철저히 설계된 최신 프레임워크를 지원합니다. 오픈 소스 OpenGym 인터페이스에 기반을 둔 환경을 비롯하여 여러 2D 및 3D 물리 시뮬레이션 환경이 지원됩니다. 이외에도 SageMaker RL을 사용하면 Amazon Sumerian 및 Amazon RoboMaker에 구축된 가상 3D 환경을 사용하여 학습할 수 있습니다. 사용자의 시작을 지원하기 위해 SageMaker는 다양한 종류의 노트북과 자습서를 제공합니다.

대부분의 기계 학습은 지도 학습이라는 범주에 속합니다. 이 방법은 레이블이 지정된 많은 학습 데이터가 필요하지만, 이 모델을 구축하면 정교한 의사 결정을 내릴 수 있습니다. 이것은 컴퓨터 비전, 음성, 언어 모델의 일반적인 접근 방식입니다. 머신러닝의 또 다른 공통점은 비지도 학습입니다. 여기서 알고리즘은 레이블이 지정되지 않은 데이터에서 숨겨진 구조를 식별하려고 시도합니다. 비지도 모델 학습에 대한 장벽은 훨씬 더 낮지만 의사 결정의 정교성이 떨어집니다. 비지도 모델은 종종 비정상적인 온도 변화나 네트워크 침입 징후와 같은 데이터의 이상 징후를 식별하는 데 사용됩니다.

강화 학습(RL)은 머신러닝에 대한 세 번째 보완 접근법으로 출현했습니다. RL은 학습 모델에 대해 매우 다른 접근법을 사용합니다. 사실상 레이블이 지정된 학습 데이터가 필요하지 않지만, 인간의 정교함 수준을 충족할 수 있으며 경우에 따라서는 그 이상으로 정교할 때도 있습니다. RL의 가장 좋은 점은 단순히 한 가지 결정을 내리는 것이 아니라 원하는 결과에 도달하기 위해 복잡한 일련의 행동을 모델링하는 방법을 학습할 수 있다는 것입니다. 오늘날 RL의 가장 일반적인 애플리케이션 중 하나는 목적지까지 찾아가도록 자율 차량을 학습시키는 것입니다.

RL이 어떻게 작동하는지 쉽게 이해하려면, 캐릭터가 깃발을 모으고 적을 피하면서 미로를 찾아가는 간단한 비디오 게임을 생각하면 됩니다. 인간이 게임을 플레이하는 대신 알고리즘이 캐릭터를 제어하고 수백만 개의 게임을 플레이합니다. 시작하기 전에 알아야 할 것은 캐릭터가 위, 아래, 왼쪽, 오른쪽으로 움직일 수 있고 점수 매김으로 보상을 받는다는 것입니다. 그런 다음 알고리즘은 최대한 가장 높은 점수를 얻기 위해 플레이하는 방법을 학습합니다. 득점(예: 깃발 줍기, 이중 득점 활용)을 높이고, 벌칙(예: 적의 타격)을 최소화하는 행동을 학습합니다. 시간이 흐르면서, RL 알고리즘은 미로의 아래 부분 먼저 통과, 파워업 사용 방법 및 시점, 적의 행동을 이용하는 방법 등을 포함하여 게임을 마스터하기 위한 고급 전략을 학습할 수 있습니다.

RL은 기존의 머신러닝 기술에 대한 전력 승수가 될 수 있습니다. 예를 들어, RL과 지도 학습을 결합하여, 의료 서비스에서 개인화된 치료 요법을 생성하고, 제조 공급망을 최적화하고, 풍력 터빈의 성능을 개선하며, 자율 자동차를 운전하고, 로봇을 안전하게 작동하고, 학생들을 위한 개인별 맞춤 수업과 학습 계획까지 만들고 있습니다.

리소스

ML 모델 구축을 위한 단계별 안내서

Amazon SageMaker에서 ML 모델 구축에 대해 학습합니다.

Amazon SageMaker 샘플 노트북

GitHub에서 풍부한 Amazon SageMaker 노트북 샘플 리포지토리에 액세스하십시오.

안전한 기계 환경 구축
 
Amazon SageMaker 보안 기능 알아보기