AWS SageMaker는 머신러닝 모델을 쉽게 구축, 훈련 및 배포할 수 있게 해주는 완전 관리형 기계 학습 플랫폼입니다. 이 튜토리얼에서는 SageMaker 노트북 인스턴스를 생성하고 사용하는 방법을 단계별로 안내합니다.

#1. SageMaker 노트북 인스턴스 생성하기

1) AWS Management Console에 로그인하고 SageMaker 서비스로 이동합니다.

2) 왼쪽 메뉴에서 "Notebooks"을 선택합니다.

3) "노트북 인스턴스 생성" 버튼을 클릭합니다.

4) 노트북 인스턴스의 이름을 입력합니다. 인스턴스 타입을 선택합니다. 시작하는 경우 `ml.t2.medium`이 적당합니다. IAM 역할을 선택하거나 새로 생성합니다. 이 역할은 SageMaker가 다른 AWS 서비스에 접근할 수 있게 해줍니다.

더보기

ml.t2.medium 인스턴스 상세 정보

"ml.t2.medium" 인스턴스는 SageMaker에서 제공하는 가장 경제적인 인스턴스 유형 중 하나입니다.

  • vCPU: 2개
  • 메모리: 4 GiB
  • 네트워크 성능: 낮음에서 중간
  • EBS 대역폭: 최대 450 Mbps

주의사항:

  • 대규모 데이터 처리나 복잡한 모델 훈련에는 적합하지 않을 수 있습니다.
  • 리소스 집약적인 작업을 수행할 때는 성능 제한이 있을 수 있습니다.
  • GPU를 지원하지 않습니다. 딥러닝이나 GPU 가속이 필요한 작업에는 적합하지 않습니다.

GPU가 필요한 경우:

  • 딥러닝 모델 훈련이나 GPU 가속이 필요한 작업을 위해서는 P2, P3, G4dn 등의 GPU 지원 인스턴스를 선택해야 합니다.
  • 예를 들어, ml.p3.2xlarge는 1개의 NVIDIA V100 GPU를 제공하며, 딥러닝 작업에 적합합니다.
  • GPU 인스턴스는 비용이 더 높지만, 복잡한 연산을 훨씬 빠르게 처리할 수 있습니다.

인스턴스 선택 팁:

  • 프로젝트의 요구사항을 명확히 파악하세요. (데이터 크기, 모델 복잡성, GPU 필요 여부 등)
  • 초기 개발 및 테스트에는 ml.t2.medium과 같은 저비용 인스턴스로 시작하세요.
  • 성능이 중요해지거나 GPU가 필요해지면, 적절한 고성능 인스턴스로 전환하세요.
  • 비용과 성능 사이의 균형을 고려하세요. 필요 이상의 고성능 인스턴스는 불필요한 비용을 발생시킬 수 있습니다.5) (선택사항)
  • 고급 옵션에서 추가 설정을 구성할 수 있습니다. "노트북 인스턴스 생성" 버튼을 클릭하여 인스턴스를 생성합니다.

#2. 노트북 인스턴스 접속하기

1) 노트북 인스턴스가 "InService" 상태가 되면 "열기" 버튼을 클릭합니다. Jupyter 또는 JupyterLab 인터페이스를 선택하여 노트북 환경에 접속합니다.

2) Jupyter 인터페이스에서 "New" 버튼을 클릭합니다. 원하는 커널(예: conda_python3)을 선택합니다. 새로운 노트북이 생성되며, 이제 코드를 작성하고 실행할 수 있습니다.

#3. 노트북 인스턴스 중지하기

작업이 끝난 후에는 비용을 절약하기 위해 노트북 인스턴스를 중지하는 것이 중요합니다. 다음 단계를 따라 인스턴스를 중지할 수 있습니다.

1) AWS Management Console에서 SageMaker 서비스로 이동합니다. 왼쪽 메뉴에서 "노트북 인스턴스"를 선택합니다. 중지하려는 노트북 인스턴스를 찾습니다. 인스턴스 이름 옆의 체크박스를 선택합니다. "작업" 드롭다운 메뉴에서 "중지"를 선택합니다. 확인 메시지가 나타나면 "중지"를 클릭합니다.

인스턴스가 중지되는 데 몇 분 정도 걸릴 수 있습니다. 상태가 "Stopped"로 변경되면 인스턴스가 성공적으로 중지된 것입니다. (참고: 인스턴스를 중지해도 노트북의 내용은 보존됩니다. 다음에 인스턴스를 시작할 때 작업을 계속할 수 있습니다.)

#4. SageMaker의 주요 기능

  • 내장 알고리즘: SageMaker는 많은 내장 머신러닝 알고리즘을 제공합니다.
  • 사용자 정의 모델: 자체 모델을 가져와 SageMaker에서 훈련하고 배포할 수 있습니다.
  • 자동화된 모델 튜닝: 하이퍼파라미터 최적화를 자동으로 수행합니다.
  • 완전 관리형 환경: 인프라 관리 없이 ML 워크플로우에 집중할 수 있습니다.

#5. 모범 사례

  • 작업이 끝나면 노트북 인스턴스를 중지하여 비용을 절약하세요.
  • 중요한 데이터는 S3에 저장하고, 노트북은 임시 저장소로 사용하세요.
  • Git 통합을 활용하여 노트북 버전을 관리하세요.
  • 큰 데이터셋을 다룰 때는 SageMaker의 분산 처리 기능을 활용하세요.

이제 SageMaker 노트북 인스턴스를 생성하고 기본적인 사용법을 익혔습니다. 이를 통해 머신러닝 프로젝트를 효율적으로 수행할 수 있습니다.

반응형