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에 구성하고 활용하는 방법을 설명합니다.

아키텍처 다이어그램

구성도
Figure 1. Kubernetes기반 CloudML 환경 구성
  1. CloudML은 Kubernetes 기반으로 배포가 됩니다. 사용자는 Kubernetes Engine 상품을 먼저 생성하고 이 때 Kubernetes Cluster의 Persistent Volume (PV)은 File Storage 상품에서 생성합니다.

  2. 사용자의 VPC에 Kubernetes Cluster를 구성하고 CloudML을 같은 Cluster에 배포합니다. CloudML 설치가 완료되면 사용자 View에 접속하여 기능을 사용할 수 있습니다.

  3. Kubernetes Cluster에 컨테이너 이미지 저장소인 Container Registry를 이용하여 사용자 Container Image를 Pull/Push 합니다.

  4. 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의 서비스 목록입니다. 서비스 선택 및 설계 시에 참고하세요.

서비스군서비스상세 설명
StorageFile Storage네트워크 연결을 통하여 다수의 클라이언트 서버가 파일을 공유하는 스토리지
StorageObject Storage데이터 저장 및 검색에 용이한 객체 스토리지
ContainerKubernetes EngineKubernetes 컨테이너 오케스트레이션 서비스
ContainerContainer Registry컨테이너 이미지를 손쉽게 저장, 관리, 공유하는 서비스
NetworkingVPC클라우드 환경에서 독립된 가상 네트워크를 제공하는 서비스
NetworkingSecurity Group서버의 트래픽을 제어하는 가상 방화벽
NetworkingLoad Balancer서버 트래픽 부하를 자동으로 분산하는 서비스
표. 관련 서비스 목록