CloudML 기반 AI 분석 환경 구성
CloudML 기반 AI 분석 환경 구성
개요
Machine Learning(이하 ML)을 산업에 적용하는 사례가 증가하고 있습니다. 과거에는 데이터 분석가가 모델 개발/학습부터 모델 배포에 이르기까지 모든 과정을 수작업으로 수행했지만 개발 및 운영하는 모델의 수가 많아질수록 모델을 관리하고 운영하는 부분에 많은 비용과 노력이 필요하게 되었습니다. 이를 위해서는 만들어진 모델 라이프사이클 전반에 걸쳐 관리를 자동화하고 손쉽게 운영할 수 있는 기능이 필요합니다.
CloudML은 자동화 된 모델 라이프사이클 관리를 위해 Kubernetes 기반으로 모듈화된 서비스를 제공하는 Samsung Cloud Platform 상품의 명칭입니다. 주요 모듈별 기능입니다.
- Notebook: 오픈소스 Jupyter Notebook을 Samsung Cloud Platform 환경에서 손쉽게 구성 및 사용할 수 있는 서비스를 제공합니다.
- Studio: No-code기반 ML모델 개발 플랫폼으로 누구나 쉽게 시각화된 분석환경에서 Drag and Drop으로 모델을 개발할 수 있고 개발 과정을 시각화된 UI로 확인 할 수 있습니다.
- Experiments: 오픈소스 MLFlow를 기반으로 모델 학습 실험 관리 서비스를 제공합니다. 실험 관리와 더불어 Model Registry 및 Model Verification 기능도 제공합니다.
- Pipeline: 모델 개발부터 학습까지의 전 과정을 자동화해서 관리 할 수 있습니다. 각 수행 단계별로 유동적인 자원 및 이미지 할당이 가능하고 순차적 수행 및 스케줄링 기능을 제공합니다.
이 문서는 CloudML을 Samsung Cloud Platform에 구성하고 활용하는 방법을 설명합니다.
아키텍처 다이어그램
CloudML은 Kubernetes 기반으로 배포가 됩니다. 사용자는 Kubernetes Engine 상품을 먼저 생성하고 이 때 Kubernetes Cluster의 Persistent Volume (PV)은 File Storage 상품에서 생성합니다.
사용자의 VPC에 Kubernetes Cluster를 구성하고 CloudML을 같은 Cluster에 배포합니다. CloudML 설치가 완료되면 사용자 View에 접속하여 기능을 사용할 수 있습니다.
Kubernetes Cluster에 컨테이너 이미지 저장소인 Container Registry를 이용하여 사용자 Container Image를 Pull/Push 합니다.
CloudML 상품에서 분석 데이터 셋, 모델 파일 활용 및 저장 용도로 Object Storage 혹은 Cloud Hadoop을 연계할 수 있습니다.
인프라 구성 예시
App Node Pool(24-Core)은 반드시 구성되어야 하며 분석을 위한 Node Pool은 분석 환경에 맞게 CPU 혹은 GPU로 구성할 수 있습니다.
Copilot 서비스를 위해서는 추가적인 16 core CPU 혹은 GPU 1 장으로 구성된 GPU Node Pool이 필요합니다.
CPU Node Pool만으로 구성
CPU/GPU Node Pool로 구성 (Copilot을 위한 GPU 환경 구성)
사용 사례
A. No-Code AI 기반 시각화된 협업 분석 시스템 구축
CloudML은 No-Code 기반 시각화된 분석 환경을 제공합니다. 시각화된 함수들을 Drag & Drop으로 배치하여 비전문가도 손쉽게 모델을 개발 할 수 있습니다. 개발된 모델을 Pipeline을 통해 Python 코드와 결합할 수 있습니다. 이를 통해 전문 분석가와 비전문가가 협업하며 서비스를 개발 할 수 있습니다.
B. 분석 플랫폼 도입을 통한 모델 최적화 자동화
Pipeline은 분석 프로세스 자동화 기능을 제공합니다. 과거에 Excel 기반 수작업으로 분석 및 시뮬레이션 작업을 진행했습니다. 하지만 CloudML을 도입하여 상품들을 조합해서 사용하면 데이터 자동 I/F, 분석 모델 시뮬레이션을 통한 최적의 성능을 보이는 모델을 도출 할 수 있습니다. 자동화 전환을 통해 업무 시간을 수 일에서 수 시간으로 단축 할 수 있습니다.
선결 사항
CloudML 각 상품 설치를 위해 각 상품에서 제공하는 최소 사양 이상의 Kubernetes Cluster, File Storage가 필요합니다.
제약 사항
CloudML 각 상품을 연동하기 위해서는 동일한 Kubernetes Worker Node에 배포되어야 합니다.
고려 사항
데이터 셋, 모델 활용 및 저장을 위해 Object Storage 서비스 구성을 고려할 수 있습니다. Custom 이미지 활용을 위해 Container Registry 서비스 구성을 고려할 수 있습니다.
관련 상품
본 가이드에서 설명하는 기능 또는 구성과 연결되는 Samsung Cloud Platform의 서비스 목록입니다. 서비스 선택 및 설계 시에 참고하세요.
| 서비스군 | 서비스 | 상세 설명 |
|---|---|---|
| Storage | File Storage | 네트워크 연결을 통하여 다수의 클라이언트 서버가 파일을 공유하는 스토리지 |
| Storage | Object Storage | 데이터 저장 및 검색에 용이한 객체 스토리지 |
| Container | Kubernetes Engine | Kubernetes 컨테이너 오케스트레이션 서비스 |
| Container | Container Registry | 컨테이너 이미지를 손쉽게 저장, 관리, 공유하는 서비스 |
| Networking | VPC | 클라우드 환경에서 독립된 가상 네트워크를 제공하는 서비스 |
| Networking | Security Group | 서버의 트래픽을 제어하는 가상 방화벽 |
| Networking | Load Balancer | 서버 트래픽 부하를 자동으로 분산하는 서비스 |


