클라우드 전문정보

제목 [1부] 국제표준문서에서 MLaaS(Machine Learning as a Service)를 위한 기능 요구사항
등록일 2024-03-11 조회수 2087

상명대학교 / 서광규 교수

 

 

기계학습 기반의 인공지능 기술은 1950년대부터 시작되었는데, 대량의 데이터를 입력값으로 투입하면 컴퓨터가 스스로 경험적인 알고리즘을 만들어내는 이 기술은 결국 막대한 양의 데이터를 학습할 수 있는 컴퓨터 환경이 매우 중요하다. 인공지능 개념이나 이론인 오래전에 완성되었다고 볼 수 있으나 초창기의 컴퓨터 환경으로는 지금과 같은 결과물은 만들어 내지는 못했다. 그러나 인공지능 기술에 대한 가능성 자체는 분명했기 때문에 많은 사람들이 머신러닝 기술에 관심을 가져왔으나 컴퓨터의 지속적인 발전에도 불구하고 여전히 머신러닝을 학습하기에는 인프라는 늘 부족했으며 비용도 많이 들어서 현실적으로 상용화하기에는 많은 어려움이 있었다.

그라나 반도체 기술은 꾸준히 성장했고, 인터넷의 보급으로 전 세계가 연결되면서 이전에 경험하지 못한 막대한 트래픽 처리에 대한 수요가 생겨났는데 이러한 요구사항을 만족시키기 위해 등장한 것이 클라우드 컴퓨팅이고 클라우드에서는 IT자원을 클러스터링하여 대용량의 자원을 원활하게 사용하게 되었다. 현재 머신러닝 처리 과정은 클라우드 컴퓨팅을 통해 이뤄지는 것이 당연한 일이 되었고, 그 중에서도 막대한 자원과 편리한 개발 환경을 제공하는 퍼블릭 클라우드는 새로운 IT 패러다임으로 자리 잡으며 인공지능 기술의 대중화를 앞당기게 되었다. 그럼에도 불구하고 인공지능을 처리하기 위한 시스템 인프라는 개인 뿐 아니라 기업에도 큰 부담이고 적지 않은 비용을 드는 것이 현실이며 시스템을 구축하는 과정도 쉽지 않은 것이 사실이다.

기업들이 인공지능 분야에 대해서는 일찌감치 퍼블릭 클라우드를 도입하기 시작한 가장 큰 이유가 바로 이런한 이유이며 IT자원을 구입하는 데에 들어가는 시간과 비용 없이 곧바로 필요한 인공지능 서비스를 바로 만들어낼 수 있는 것이 클라우드의 강점이고, 그게 인공지능 분야의 다양한 활용이 가능해지게 되었다.

글로벌 CSP는 텐서플로우, 파이토치 등 머신러닝 개발 환경으로 특별히 인프라에 대한 고민을 하지 않아도 곧바로 모델을 만들고 학습을 시작할 수 있도록 기본 환경을 제공하고 있으며 GPU나 머신러닝 학습에 최적화된 전용 프로세서들이 클라우드에 적용되면서 기업들이 필요에 따라 선택할 수 있는 인프라의 다양화게 제공하고 있다.

클라우드 기반 인공지능 서비스들의 성장은 ‘인공지능의 대중화’와도 연결되고 있는데, AWS, 마이크로소프트 애저, 구글 클라우드 플랫폼 등이 제공하는 오토ML도 OCR, TTS, 번역 등에 대해 손쉽게 쓸 수 있는 API를 제공하고 있고, 국내의 네이버 클라우드플랫폼 역시 음성 합성, 챗봇, 사물인식처럼 일반적으로 쓰이는 AI 기술을 서비스하고 있다.

 

인공지능(AI) 기업이 클라우드를 도입하는 중요한 이유 중 하나는 단연 서비스형 머신러닝(MLaaS, Machine Learning As A Service)에 있다.

클라우드 서비스 일부인 MLaaS는 머신러닝(ML) 개발을 효율화하는 도구를 서비스형 소프트웨어(SaaS) 방식으로 제공한다. 구독 기반 모델에서 ML 학습 솔루션을 제공하고, 사용한 만큼 지불할 수 있는 유연성을 갖췄다. 예를 들어 AI 서비스 개발 역량이 부족한 기업은 클라우드에서 제공하는 완성된 AI 모델의 API를 사용해 데이터 학습만으로 AI 솔루션을 개발할 수 있으며 AI 시스템 확장 또는 축소 시에도 유동적인 대응이 가능해 기존 장비나 인력 구성 변경에 따른 비용을 줄인다. 학습 모델을 튜닝하고 변수를 설정하는 작업, 사용자의 요구에 맞게 시스템 자원을 할당하고 배포하는 프로비저닝 작업까지 제공하는데, 기업의 경우 개발자 고용 부담을 덜고 전문인력이 보다 중요한 일을 맡을 수 있게 지원 가능하다.

가장 대표적인 서비스는 세계적으로 가장 높은 클라우드 시장 점유율을 보이는 AWS의 아마존 세이지메이커(Amazon SageMaker)다. 전통적인 소프트웨어 업체 MS는 애저 ML(Azure ML)을, 하드웨어 시장에서의 AI 개발을 이끈 IBM은 왓슨 스튜디오(Watson Studio)를 서비스 중이며 구글은 구글 클라우드 기반 ML 개발·배포·운영 플랫폼을 통합하는 인공지능 서비스를 제공하고 있으며 국내 CSP도 관련 서비스를 제공하고 있다.

본 고에서는 국제 표준화 문서인 ITU-T Y.3531; Cloud computing – Functional requirements for machine learning as a service에서 제시하고 있는 서비스형 머신러닝(MLaaS)의 개념과 MLaaS의 기능적 요구 사항에 대하여 기술하기로 한다.

 

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

 



 

1. 머신러닝(Machine Learning; ML) 개요

1-1. 머신러닝 소개

머신 러닝(ML)은 기계나 컴퓨터가 명시적으로 프로그래밍하지 않고도 작업을 수행하는 방법을 학습할 수 있도록 하는 컴퓨터 과학 기술이다. 정의에 따르면 ML의 메커니즘은 if-then 문을 적용하여 결정을 내리는 명시적 프로그래밍과 다르다. ML의 목표는 데이터를 통해 자동으로 작업을 해결하는 능력을 향상시키는 것이다.

ML 개발에는 ML 모델, 학습 알고리즘 및 학습 데이터가 포함된다. ML 모델은 입력 데이터로 작업을 수행하기 위한 수학적 표현으로 구성된다. 학습 알고리즘은 작업에 대한 훈련 데이터를 사용하여 ML 모델을 훈련한다.

ML 개발자는 ML 모델 및 학습 알고리즘을 구성하고 설정 작업을 기반으로 학습 데이터를 수집한다. 작업은 계산 방법을 기반으로 한 성능 평가 지표를 통해 문제를 해결하도록 설계되었다. 평가 지표는 ML 모델의 성능을 측정하는 기준이다. ML의 일반적인 작업 예로는 예측, 분류, 클러스터링, 샘플 생성 등이 있다.

ML 작업은 학습 데이터의 필요성이나 피드백의 필요성 등 학습 알고리즘의 특성에 따라 분류된다.

ML 작업의 범주는 지도 학습, 비지도 학습, 준지도 학습, 그리고 강화 학습으로 구분할 수 있다.
  • 지도 학습: 입력 데이터를 원하는 출력 데이터에 매핑하는 레이블이 지정된 데이터를 사용하는 학습 작업이다.
  • 비지도 학습: 레이블이 지정되지 않은 데이터를 사용하여 데이터에서 구조나 패턴을 찾는 학습 작업이다.
  • 준지도 학습(Semi-supervised learning): 라벨이 있는 데이터와 라벨이 없는 데이터를 모두 사용하여 학습하는 작업으로, 라벨이 붙은 데이터의 양이 적다.
  • 강화 학습: 에이전트가 환경 데이터를 사용하여 작업을 수행한 후 피드백을 제공하는 학습 작업이다.
 



 

1-2. 머신러닝의 일반적인 프로세스

머신러닝 프로세스는 ML 데이터 수집, ML 데이터 처리, ML 모델 개발 및 ML 모델 배포를 통해 구현된다. 그림 1은 ML의 일반적인 프로세스를 보여준다.


[그림1. 기계 학습의 일반적인 프로세스]

 

ML 데이터 수집은 훈련을 위한 데이터를 수집한다. 수집된 데이터는 ML 모델 개발 전 훈련, 검증, 테스트를 위해 데이터 세트로 그룹화된다.
  • 데이터 수집은 정형, 비정형, 반정형 데이터를 포함한 원시 데이터를 수집한다. 모든 유형 내에서 데이터는 텍스트, 스프레드시트, 비디오, 오디오, 이미지, 지도 등의 형식으로 존재할 수 있는데 자세한 내용은 [ITU-T Y.3600 Big data – Cloud computing based requirements and capabilities]를 참고하며 된다.
  • 데이터 레이블링은 지도 학습 또는 준지도 학습을 위해 선택적으로 레이블이 지정된 데이터를 생성한다. 데이터에 주석을 추가하려면 인적 자원과 라벨링 도구가 필요하다. 도구는 태깅 단위를 사용한다. 예를 들어 이미지 데이터는 경계 상자의 태깅 단위를 사용하여 대상 개체를 나타내고 비디오 데이터는 레이블 지정을 위해 5초 비디오의 태깅 단위를 사용한다.
 

ML 데이터 처리는 데이터를 처리하여 학습 성과를 향상하거나 데이터에서 의미 있는 정보를 생성한다.
  • 데이터 전처리는 데이터를 변환하여 부정확하거나 불완전하거나 이상치인 데이터를 해결한다. 훈련 데이터에서는 원시 데이터의 노이즈와 편향이 제거되거나 완화된다.
  • 기능 엔지니어링은 데이터에서 ML 모델에 유용한 기능을 찾아 결정한다. ML을 구현하기 위한 기능 엔지니어링 알고리즘은 특징 선택, 스케일링, 그리고 추출을 포함한다.
․ 특징 선택은 동일하거나 유사한 분석 결과를 가진 원래 특징의 하위 집합을 얻다. 특징 선택의 예는 다음과 같다: 유전 알고리즘, 탐욕스러운 전진 선택(greedy forward selection) 및 상관 특성 선택

․ 기능 스케일링은 원래 기능의 데이터 범위를 정규화한다. 특징 스케일링의 예는 다음과 같다: 평균 정규화; 및 최소-최대 정규화

․ 특징 추출은 세트 축소를 통해 원래 특징에서 새로운 기능을 파생한다. 특징 추출의 예는 다음과 같다: 주성분 분석; 그리고 차원 감소

 

ML 모델 개발은 ML 모델을 학습하고 최적화한다. ML 모델의 목적을 충족하기 위해 모델 학습, 모델 검증, 모델 테스트 및 하이퍼파라미터 튜닝이 반복적으로 수행된다.
  • 모델 학습은 ML 모델의 매개변수를 훈련 데이터세트에 맞춘다. 역전파 및 경사하강법과 같은 매개변수를 업데이트하기 위해 훈련 알고리즘이 구현된다. 매개변수는 학습 데이터 세트를 입력하여 자동으로 조정되거나 최적화된다.
  • 모델 검증은 검증 데이터 세트를 사용하여 ML 모델의 성능을 검증한다. 모델 검증 프로세스는 ML 훈련이 완료되기 전에 하이퍼파라미터를 최적화할 수 있는 기회를 제공한다.
  • 모델 테스트는 테스트 데이터 세트를 사용하여 최종 훈련된 ML 모델의 성능을 측정한다. 모델 테스트는 학습된 ML 모델을 배포하기 위한 최종 성능 보고서를 제공한다. 모델 테스트는 ML 모델 배포 후 ML 모델 성능이 저하될 때 재학습을 방지한다.
  • 하이퍼파라미터 튜닝은 ML 모델 학습의 하이퍼파라미터를 조정한다. 하이퍼파라미터는 ML 모델 학습을 제어하기 위해 조정 가능한 값이다. 하이퍼파라미터에는 다음이 포함된다: 반복 시간; 배치 크기; 그리고 시대.
 

ML 모델 배포는 모델을 활용하여 애플리케이션에서 작업을 수행한다. ML 모델 배포에는 재학습 성능 모니터링 및 관리를 포함한 모델 배포 및 관리가 포함된다.
  • 모델 배포는 훈련된 ML 모델을 애플리케이션이나 하드웨어에 로드한다. ML 개발자는 훈련된 모델을 사용하여 ML 애플리케이션을 개발한다.
  • 모델 업데이트를 관리하거나 ML 모델을 모니터링한다. 또한 모델 관리에서는 모델 재학습을 요청한다.
 

그림 2는 ML의 일반적인 프로세스에 따른 수명 주기를 포함하는 학습된 ML 모델 개발의 예를 보여준다.


[그림2. 일반적인 ML 프로세스의 예]

 

그림 2에서 ML 프로세스의 최종 출력은 장치에서 작업을 수행할 수 있는 능력을 갖춘 훈련된 ML 모델이다. 배포된 훈련된 ML 모델이 허용 가능한 성능 이하로 떨어지면 모델을 다시 훈련하거나 리엔지니어링해야 한다. 배포된 모델은 특정 목적에 필요한 성능을 충족하기 위해 새로운 데이터 세트를 사용하여 재학습된다.

목표를 달성하려면 ML에는 잘 설계된 모델과 학습 알고리즘은 물론 훈련을 위한 많은 양의 데이터가 필요하다. 작업 해결 성능을 향상시키기 위해 여러 학습 알고리즘과 ML 모델이 개발되었다.

 



 

1-3. 머신러닝 생태계

ML 생태계는 ML 데이터, ML 모델, ML 프레임워크를 제공하는 이해관계자로 구성된다. 이 생태계에서 개발자는 자신의 ML 또는 애플리케이션을 효과적으로 구축할 수 있다.

이 절에서는 이해관계자 역할과 하위 역할을 통해 ML 생태계를 설명한다. ML 역할이 ML을 제공하고 소비하는 데 필요한 활동과 역할 간의 관계에 대해 설명한다.

 

ML 생태계에는 다음과 같은 역할이 포함된다.

– 데이터 제공자

– ML 모델 제공자

– ML 프레임워크 제공자

– ML 프레임워크 고객.

 

ML 생태계는 그림 3과 같다.


[그림3. 높은 수준의 기계 학습 생태계]

 

1-3-1. 데이터 제공자

데이터 공급자(DP) 역할은 두 가지 하위 역할로 구성된다.

– 데이터 공급자

– ML 데이터 제공자.

 

1-3-1-1. 데이터 공급자

데이터 공급자는 다양한 소스의 데이터를 제공하고 [ITU-T Y.3600 Big data – Cloud computing based requirements and capabilities]에 지정된 활동을 수행한다. 데이터 공급자의 활동에는 다음이 포함된다.

– 데이터 생성

– 데이터 소스 및 관련 속성을 설명하는 메타데이터 정보 생성

– 메타데이터에 접근하기 위한 메타데이터 정보 공개

 

1-3-1-2. ML 데이터 제공자

ML 데이터 제공자는 ML 처리를 위해 데이터를 수집하고 데이터 처리를 수행한다. 데이터 공급업체[ITU-T Y.3600 Big data – Cloud computing based requirements and capabilities]로부터 데이터를 수신한 다음 ML 처리를 위한 데이터를 ML 프레임워크 제공업체에 보낸다. ML 데이터 제공자는 정형, 비정형, 스트리밍 등 다양한 종류의 데이터를 지원한다.

ML 데이터 제공업체의 활동은 다음과 같다.

– 데이터의 특징 분석

– ML을 위한 데이터 세트 생성

※ 참고 1 - 데이터 분석 및 전처리와 같은 활동은 [ITU-T Y.3600 Big data – Cloud computing based requirements and capabilities]에 설명되어 있다.

※ 참고 2 – 데이터의 특징 분석에는 인적 자원에 의한 라벨링 작업이 포함된다. ML 모델이 훈련을 위해 레이블이 지정된 데이터를 요구하는 경우 이 활동은 선택 사항이다.

 

1-3-2. ML 모델 제공자

ML 모델 공급자는 ML 프레임워크 공급자에게 ML 모델을 제공한다. ML 모델 개발에는 데이터 처리, 모델 학습, 프로세스 내 모델 평가는 물론 ML 모델의 스키마 설계를 위한 ML 알고리즘이 포함된다.

ML 모델 제공자의 활동은 다음과 같다.

– ML 모델 개발

– ML 모델 제공

 

1-3-3. ML 프레임워크 제공자

ML 프레임워크 공급자는 ML 프레임워크 고객에게 ML 기능을 제공한다. ML 프레임워크에는 ML 기능을 사용하기 위한 인터페이스가 포함되어 있다. ML 프레임워크 공급자는 ML 모델을 개발하기 위해 ML 프레임워크 고객에게 활동을 관리하고 보고한다.

ML 프레임워크 공급자의 활동은 다음과 같다.

– ML 데이터로 ML 모델 학습

– ML 모델 관리 및 보고

– ML 애플리케이션을 위한 ML 모델 배포

– ML 프레임워크 고객에게 ML 기능 제공

 

1-3-4. ML 프레임워크 고객

ML 프레임워크 고객은 비즈니스를 위해 ML 프레임워크 제공업체의 ML 기능(예: 의사 결정, 비즈니스 프로세스 자동화, 고객 상호 작용)을 사용한다. ML 프레임워크는 최종 사용자일 수도 있고 ML 지원 애플리케이션을 수행하는 시스템일 수도 있다.

ML 프레임워크 고객의 활동은 다음과 같다.

– ML 프레임워크 액세스 및 활용

 

 


참 고 문 헌


  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자에게 저작권이 있는 경우 원저작권자가 정한 바에 따릅니다.