상명대학교 / 서광규 교수


 

*이 원고는 국제표준문서인 “ITU-T Y.3531 (2020) Cloud computing ? Functional requirements for machine learning as a service”를 토대로 작성되었음

 




 

4-4. 멀티 워커 노드를 사용한 분산 학습

<유즈 케이스: 멀티 워커 노드를 사용한 분산 학습>



?제목멀티 워커 노드를 사용한 분산 학습
설명이 사용 사례에서는 병렬 및 분산 학습을 지원하기 위해 멀티 워커노드를 사용한 모델 학습을 설명한다. CSC:MLSU는 ML 학습을 위해 멀티 워커 노드를 구성할 수 있다. 이 옵션은 워커 노드별 데이터 크기 감소, 데이터를 프라이빗과 퍼블릭으로 분할하는 등 많은 장점이 있다. 다음은 분산 학습의 일반적인 단계이다.

1) CSC:MLSU는 ML 워커 노드의 아키텍처를 설계하거나 구성한다.

2) CSP:MLSP는 CSC:MLSU에 대한 분산 학습을 위한 ML 관리를 제공한다.

3) CSC:MLSU는 ML 모델에 대한 배포 정책이나 리소스 및 ML 매개변수 할당을 위한 데이터 및 일정 정책을 설정한다.

4) CSP:MLSP는 CSC:MLSU에서 구성된 정책을 사용하여 리소스와 매개변수를 할당한다.

5) CSP:MLSP는 각 가상 또는 로컬 워커 노드에 ML 훈련을 요청하고 훈련 결과를 수집한다.

6) CSP:MLSP는 학습이 완료될 때까지 4) 및 5) 단계를 반복한다.
역할/하위역할CSP:MLSP

CSC:MLSU
그림(선택)
전제조건(선택)CSP는 ML 매개변수를 관리하고 분산 학습 정책을 제어하기 위한 가상 서버를 제공한다.

CSP는 다른 클라우드 및 로컬 환경에 있는 여러 작업자 노드와의 네트워크 연결을 제공한다.
사후조건(선택)

 




 

4-5. 하이퍼파라미터 튜닝을 포함한 모델 테스트 및 모델 품질 최적화

<유즈 케이스: 하이퍼파라미터 튜닝을 포함한 모델 테스트 및 모델 품질 최적화>



?제목하이퍼파라미터 튜닝을 포함한 모델 테스트 및 모델 품질 최적화
설명이 사용 사례에서는 클라우드 컴퓨팅의 모델 테스트 절차를 설명한다. 모델 테스트 또는 검증 프로세스는 일반적으로 모델의 성능과 품질을 최적화하거나 일반화하기 위해 수행된다. 테스트에는 일부 모델 관점 리소스 및 하이퍼 파라미터를 조정하기 위한 반복적인 프로세스가 필요할 수 있다. 일반적으로 ML 모델의 저조한 성능은 1) 특성 예측 부족으로 인해 발생한다. 2) 최적이 아닌 하이퍼 파라미터; 3) 비정상적인 학습 데이터. 모델 테스트의 목적은 일반적으로 문제 1)과 2)의 해결과 관련이 있다. 그런 맥락에서 이 사용 사례는 주로 문제 1)과 2)의 실험적 해결을 목표로 한다.

다음은 이 사용 사례에서 모델 테스트를 위한 일반적인 단계이다.

1) CSN:MLMD는 CSP:MLSP로부터 학습 결과를 요청한다.

2) CSP:MLSP는 초기 또는 이전 학습 결과를 CSN:MLMD에 보고한다.

※ 참고 - 모델 테스트 프로세스는 반복적으로 수행될 수 있다.

3) CSN:MLMD는 주어진 데이터 세트를 사용하여 ML 모델을 최적화한다.

a) CSN:MLMD는 ML 모델의 하이퍼파라미터를 조정한다.


b) CSN:MLMD는 ML 데이터에 대한 기능을 추가한다.


4) CSN:MLMD는 ML 모델의 성능이 검증될 때까지 ML 모델을 테스트한다.
역할/하위역할CSN:MLMD

CSP:MLSP

CSC:MLSU

CSN:MLDP
그림(선택)
전제조건(선택)CSP:MLSP는 가상 머신을 설치하고 테스트용 ML 모델을 구축한다.

CSP는 ML 모델 테스트를 위한 ML 프레임워크 또는 /플랫폼 도구를 제공한다.
사후조건(선택)CSN:MLDP는 학습 및 테스트를 위한 ML 데이터 세트를 제공한다.

CSP:MLSP는 ML 디버깅을 위한 ML 모델의 테스트 기록을 저장한다.

CSN:MLMD가 ML 모델을 최적화하지 못하면 CSN:MLMD는 CSN:MLDP에서 ML 데이터 테스트를 요청한다.

 




 

4-6. 비정상적이거나 예상치 못한 학습 과정에 대한 경고를 발행하는 모델 모니터링

<유즈 케이스: 비정상적이거나 예상치 못한 학습 과정에 대한 경고를 발행하는 모델 모니터링>



?제목비정상적이거나 예상치 못한 학습 과정에 대한 경고를 발행하는 모델 모니터링
설명이 사용 사례에서는 MLaaS의 모니터링 서비스 기능을 설명한다. 학습 중 이상은 학습 실패로 이어질 수 있는 여러 측면에서 발생할 수 있으므로 CSC:MLSU 또는 CSN:MLMD는 시스템을 모니터링하여 학습의 비정상적인 상태를 인식할 수 있어야 한다. 학습 과정 중 이상 현상은 CPU, GPU 등 하드웨어의 리소스 과부하, 예측 결과의 과도한 비정상, 매개변수의 동기화 오류 등을 통해 감지할 수 있다.

다음은 이 사용 사례에서 모델 테스트를 위한 일반적인 단계이다.

1) CSC:MLSU 또는 CSN:MLMD는 학습 프로세스를 위한 작업 세부정보를 요청한다.

2) CSP:MLSP는 현재 작업 상태를 보여주는 작업 세부 정보를 보고한다.

※ 참고 ? 작업 상태에는 CPU 또는 GPU 활용도, 메모리 사용량, 매개변수 업데이트 또는 동기화 상태가 포함된다.

3) CSC:MLSU는 학습 절차를 중지하라는 요청을 CSP:MLSP에 보낸다.

CSN:MLMD는 학습 이상이 명확하게 감지되면 자동 중지를 설정할 수도 있다. 이 경우 CSN:MLMD는 CSP:MLSP에서 제공되거나 CSN:MLMD에서 사용자 정의된 값을 설정할 수 있다.
역할/하위역할CSN:MLMD

CSP:MLSP

CSC:MLSU

CSN:MLDP
그림(선택)
전제조건(선택)CSP:MLSP는 가상 머신을 설치하고 테스트용 ML 모델을 구축한다.
사후조건(선택)CSP:MLSP는 테스트 결과를 CSN:MLMD에 보고하기 위한 인터페이스를 제공한다.

CSN:MLDP는 학습 및 테스트를 위한 ML 데이터 세트를 제공한다.

CSP:MLSP는 ML 디버깅을 위한 ML 모델의 테스트 기록을 저장한다.

CSN:MLMD가 ML 모델을 최적화하지 못하면 CSN:MLMD는 ML 데이터 테스트를 CSN:MLDP에 요청한다.

 




 

4-7. 모델 배포 및 모니터링

<유즈 케이스: 모델 배포 및 모니터링>



?제목모델 배포 및 모니터링
설명이 사용 사례에서는 클라우드 컴퓨팅 환경의 모델 배포 및 모니터링 절차를 설명한다. 모델이 훈련되면 프로덕션에 배포된다. 배포된 모델의 성능을 유지하려면 모델 모니터링 프로세스도 필요한다. 넓은 의미에서 이 사용 사례의 모델 배포 및 모니터링에는 클라우드 컴퓨팅 환경의 등록, 관리 및 모니터링 단계가 포함된다.

다음은 이 사용 사례에 설명된 모델 배포 및 모니터링을 위한 일반적인 단계이다.

1) CSP:MLSP는 훈련 단계 후에 훈련된 모델을 등록한다.

2) CSP:MLSP는 CSP:MLSP가 애플리케이션 서비스 개발에 사용하는 훈련된 모델에 대한 정보를 제공한다.

3) CSP:MLSP는 배포된 모델을 활용하여 애플리케이션 서비스를 제공하고, 성능을 지속적으로 모니터링한다.

4) CSP:MLSP는 측정된 모델 성능과 사전 정의된 정책에 따라 모델 재훈련 또는 리엔지니어링을 요청한다.

5) CSP:MLSP는 요청 시 모델을 재학습하거나 리엔지니어링한다.

6) CSP:MLSP는 애플리케이션 서비스가 재학습되거나 리엔지니어링될 때 해당 모델을 사용하여 CSP:MLSP에 알린다.

7) CSC:MLSU는 배포된 모델을 사용하여 애플리케이션 서비스를 사용한다.
역할/하위역할CSP:MLSP

CSC:MLSU
그림(선택)
전제조건(선택)CSP:MLSP는 애플리케이션 서비스 개발을 위해 배포할 훈련된 모델을 제공한다.
사후조건(선택)CSC:MLSU는 CSP:MLSP에서 제공하는 ML 애플리케이션 서비스를 사용한다.

 




 

4-8. 클라우드 컴퓨팅의 자동화된 기계 학습

<유즈 케이스: 클라우드 컴퓨팅의 자동화된 기계 학습>



?제목ML 데이터 어노테이션 및 라벨링 관리
설명이 사용 사례에서는 클라우드 컴퓨팅 환경의 자동화된 기계 학습 절차를 설명한다. 자동화된 기계 학습은 자동화된 기능 엔지니어링, ML 모델 검색 및 하이퍼파라미터 최적화라는 알고리즘의 세 가지 주요 기능을 지원한다. 자동화된 기계 학습을 실행하기 위해 CSC:MLSU는 학습 작업과 입력 데이터만 구성한다. 그런 다음 자동화된 기능 엔지니어링 알고리즘은 자동 ML 모델 학습을 위해 ML 데이터의 기능을 구성한다. 기능 구성 후 ML 모델 카탈로그를 탐색하여 ML 모델 디자인을 찾기 위해 ML 모델 검색 알고리즘이 구현된다. 마지막으로 하이퍼파라미터 최적화 알고리즘은 하이퍼파라미터 값을 조정하여 ML 모델 성능을 극대화한다.

다음은 이 사용 사례의 모델 배포에 대한 일반적인 단계이다.

1) CSC:MLSU는 학습 과제와 입력 데이터를 설정한다.

2) CSP:MLSP는 입력 데이터를 사용하여 기능 엔지니어링 알고리즘을 실행한다.

3) CSP:MLSP는 ML 모델 검색 및 하이퍼파라미터 최적화 알고리즘을 반복적으로 실행한다.

※ 참고 1 ? ML 모델 검색과 하이퍼파라미터 최적화 알고리즘을 결합할 수 있다.

※ 참고 2 - ML 모델의 검증은 3단계에서 수행된다.

4) CSP:MLSP는 3단계의 ML 모델 출력을 테스트한다.

a) 테스트 성능이 목표 성능으로 평가된 경우 3) 단계를 반복한다.


b) 그렇지 않으면 학습된 ML 모델을 내보낸다.


역할/하위역할CSP:MLSP

CSC:MLSU
그림(선택)
전제조건(선택) 
사후조건(선택) 

 




 

4-9. 클라우드 컴퓨팅 환경에서의 객체 인식 모델 개발

<유즈 케이스: 클라우드 컴퓨팅 환경에서의 객체 인식 모델 개발>



?제목클라우드 컴퓨팅 환경에서의 객체 인식 모델 개발
설명AI 소프트웨어 엔지니어가 객체 인식을 위한 ML 모델 개발 및 테스트에 집중하고 싶어한다. 그러나 레이블이 지정된 데이터 세트의 크기는 모델을 개발하고 테스트하기에 충분하지 않다. 클라우드 컴퓨팅 환경에서 엔지니어는 다른 엔지니어나 회사의 객체 인식을 위해 검증된 ML 데이터 세트에 액세스할 수 있다. 엔지니어는 클라우드의 데이터를 사용하여 모델 성능을 테스트하여 자체 인식 모델을 구축, 학습 및 관리할 수 있다.

이 사용 사례에서 CSN:MLMD로 표시되는 엔지니어는 CSN:MLDP의 검증된 데이터를 사용하여 클라우드 컴퓨팅 시스템에서 ML 모델을 개발할 수 있다. 다음 단계에서는 ML 모델을 개발하는 프로세스를 보여준다.

1) CSN:MLMD는 ML 모델을 CSP:MLSP에 등록한다.

2) CSN:MLDP는 데이터 라벨링이 포함된 ML 데이터 세트를 준비한다.

2-1) CSN:MLDP는 CSN:DP로부터 원시 데이터를 요청한다.


2-2) CSN:MLDP는 객체 감지 알고리즘을 사용하여 데이터에 레이블을 지정한다.


※ 참고 1 ? 다른 탐지 알고리즘이 채택될 수 있다. 감지 알고리즘의 예로는 직사각형 감지와 얼굴 랜드마크를 사용한 얼굴 감지가 있다.

3) CSP:MLSP는 채택된 탐지 알고리즘의 정보로 ML 데이터를 요청한다.

4) CSP:MLSP는 최적화될 때까지 ML 데이터 세트를 사용하여 ML 모델을 반복적으로 학습한다.

4-1) CSP:MLSP는 기본 매개변수가 있는 ML 데이터 세트를 사용하여 ML 모델을 학습한다.


4-2) CSP:MLSP는 검증 데이터 세트를 사용하여 훈련된 ML 모델을 평가한다.


4-3) CSP:MLSP는 모델 매개변수를 변경하고 모델이 최적화될 때까지 a)와 b)를 반복한다.


※ 참고 2 ? ML 모델 매개변수는 ML 모델마다 다를 수 있다. ML 모델 매개변수의 예로는 레이블이 지정된 데이터와 검증 데이터 사이의 유클리드 거리가 있다.

5) CSP:MLSP는 CSN:MLMD에 성능 평가를 보고한다.
역할/하위역할CSN:MLMD

CSN:DP

CSN:MLDP

CSP:MLSP
그림(선택)
전제조건(선택)CSN:MLDP는 CSN:DP에서 데이터를 검색하고 데이터를 요청한다.
사후조건(선택)CSP:MLSP는 훈련되거나 최적화된 ML 모델을 저장하여 ML 애플리케이션을 개발한다.

 




 

4-10. 교통속도 예측 및 모니터링 서비스

<유즈 케이스: 교통속도 예측 및 모니터링 서비스>



?제목교통속도 예측 및 모니터링 서비스
설명시내 도로의 교통 속도 정보는 센서를 통해 수집된다. 일정 시간(예: 15분) 이후 각 도로의 교통 속도를 예측하고, 이를 예측하여 시내 교통 혼잡을 해결한다. 다음은 이 Use Case의 절차이다.

1) 도시 도로의 교통 속도와 같은 원시 데이터는 CSN:DP에서 수집된다.

2) 수집된 원시 데이터는 CSP:MLSP에 의해 특성화되고 전처리되며, 데이터는 모델 학습 및 검증에 사용된다.

3) CSN:MLMD에서 개발한 일부 기계 학습 모델이 제공되며, 해당 모델은 CSP:MLSP에서 모델을 학습하는 데 사용된다.

4) 훈련 데이터 세트를 사용하여 예측 모델을 훈련하고 검증한다.

5) 훈련된 모델이 배포되어 애플리케이션 개발에 사용된다.

6) 예측을 위한 데이터는 훈련된 모델이나 애플리케이션에 입력되고 예측은 서비스 사용자에게 반환된다. 서비스 이용자는 도로별 교통속도 예측 등의 예측을 활용하여 교통신호를 제어함으로써 교통혼잡을 해결할 수 있다.
역할/하위역할CSN:DP

CSN:MLMD

CSP:MLSP

CSU:MLSU
그림(선택)
전제조건(선택)SN:MLSP는 교통 속도 예측에 사용되는 원시 데이터를 변환할 수 있다. 변환된 데이터는 훈련된 예측 모델에 입력된다.

교통관측용 센서는 시내 도로 또는 각 차량에 설치되어 도로를 이용하는 교통량으로부터 속도 및 위치 데이터를 수집한다.
사후조건(선택)

 




 

5. 결언

인공지능(AI) 기업이 클라우드를 도입하는 중요한 이유 중 하나는 MLaaS에 있다. 클라우드 서비스 일부인 MLaaS는 머신러닝(ML) 개발을 효율화하는 도구를 서비스형 소프트웨어(SaaS) 방식으로 제공한다. 구독 기반 모델에서 ML 학습 솔루션을 제공하고, 사용한 만큼 지불할 수 있는 유연성을 갖췄다.

MLaaS의 특장점은 ML 솔루션 구축을 위해 필수적인 서버와 스토리지, 네트워크 확장에 드는 비용을 줄이는 것으로 예를 들어 AI 서비스 개발 역량이 부족한 기업은 클라우드에서 제공하는 완성된 AI 모델의 API를 사용해 데이터 학습만으로 AI 솔루션을 개발할 수 있다. AI 시스템 확장 또는 축소 시에도 유동적인 대응이 가능해 기존 장비나 인력 구성 변경에 따른 비용을 줄인다.

학습 모델을 튜닝하고 변수를 설정하는 작업, 사용자의 요구에 맞게 시스템 자원을 할당하고 배포하는 프로비저닝 작업까지. 기존엔 일일이 코드로 설정해줘야 했던 작업들을 시스템이 책임진다. 기업의 개발자 고용 부담을 덜고 전문 인력이 보다 중요한 일을 맡을 수 있게 지원 가능하다.

본 고에서 살펴본 MLaaS는 ML 서비스 개발 비용을 낮추면서 접근성과 활용성을 높여 누구나 ML 혜택을 누릴 수 있도록 도울 도구가 되고 있으며 이는 인공지능 기술의 확대로 AIaaS가 활발하게 출시되고 있는데 대표적인 서비스로 마이크로소프트(MS)가 세계적 열풍을 일으킨 '오픈AI'사의 인공지능(AI) 챗봇 '챗GPT'를 자사 클라우드 플랫폼 '애저'에 추가하여 서비스하고 있는데, 이 서비스가 최신 AI 기술을 빌려주는 서비스인 '서비스형 AI(AIaaS·AI-as-a-service)'이다. 전술한 바와 같이 ML을 자체 개발해 도입하는 것은 고도의 기술력과 막대한 선행 투자가 필요한 자본·기술집약적 사업으로, 방대한 양질의 데이터 축적과 고성능 컴퓨팅(HPC) 인프라 구축 등이 필수적이기 때문이다. 인력과 자본, 전문성이 부족한 중소기업이나 스타트업에는 특히 ML을 포함한 인공지능의 진입 장벽이 높았는데, MLaaS나 AIaaS를 통해 기존에 일부 기업의 전유물로 여겨지던 인공지능 기술을 필요한 만큼 쓸 수 있게 되면서 누구나 접근이 가능해지게 된 것이다.

본 고에서 살펴본 ITU-T Y.3531; Cloud computing ? Functional requirements for machine learning as a service는 사용 사례의 요구 사항을 해결하는 MLaaS에 대한 클라우드 컴퓨팅 요구 사항을 제공하고 있다. 유즈 케이스의 요구 사항을 해결하는 MLaaS를 위한 클라우드 컴퓨팅 요구 사항을 제공한다. MLaaS는 클라우드 서비스 고객에게 제공되는 기능이 ML 데이터 프로비저닝 및 ML 모델의 학습, 배포 및 관리를 위한 일련의 기능인 ML(Machine Learning) 프레임워크의 제공 및 사용인 클라우드 서비스 범주이다. 클라우드 컴퓨팅 서비스 제공의 관점에서 ITU-T Y.3531은 ML 데이터 사전 처리, ML 모델 학습 및 ML 모델 테스트와 같은 기능을 식별하기 위한 MLaaS에 대한 기능 요구 사항을 제공하는데, 이는 클라우드 컴퓨팅 참조 아키텍처와 일치한다. MLaaS는 클라우드 컴퓨팅 기반으로 서비스를 제공하는 것이므로 클라우드 컴퓨팅 참고 아키텍처 기반으로 MLaaS의 기능적 요구사항이 정의되고 유즈 케이스를 통해 구체적으로 어떻게 사용되는지를 보여주었다는 것에서 큰 의미를 갖는다.

 

 



참 고 문 헌




  1. ITU-T Y.3531 (2020) Cloud computing ? Functional requirements for machine learning as a service
  2. ITU-T Y.3600 (2015) Big data ? Cloud computing based requirements and capabilities
  3. ITU-T Y.3502 (2014) Information technology ? Cloud computing ? Reference architecture
  4. ITU-T X.1601 (2015) Security framework for cloud computing




저작권 정책


K-ICT 클라우드혁신센터의 저작물인 『국제표준문서에서 MLaaS(Machine Learning as a Service)를 위한 기능 요구사항』은 K-ICT 클라우드혁신센터에서 상명대학교 서광규 교수에게 집필 자문을 받아 발행한 전문정보 브리프로, K-ICT 클라우드혁신센터의 저작권정책에 따라 이용할 수 있습니다.
다만 사진, 이미지, 인용자료 등 제3자에게 저작권이 있는 경우 원저작권자가 정한 바에 따릅니다.