MLOps, 걸림돌과 해결방안

비즈니스 전반을 관리하는 시스템에 인공지능을 더한 MLOps는 자동화관리의 장점으로 많은 주목을 받고 있습니다. 하지만 도입의 어려움 역시 존재하는데요, 디에스랩글로벌의 해결방안에 대해 함께 살펴보시죠.

Featured image

MLOps의 걸림돌과 해결 방안

​ ​ ● Intro
​ 오늘의 Blog 포스팅은 최근 ML 프로젝트에서 뜨거운 감자인 MLOps에 대한 전반적인 설명과 디에스랩글로벌의 MLOps 활용 방식에 대해 다뤄보겠습니다.

​ ​ ● MLOps란?
​ 수 년동안 데이터 활용 분야에서 입지를 다지고 있는 ML (Machine Learning) 프로젝트의 기본은 결국 수집한 데이터에 숨어있는 다양한 패턴들을 파악하고 활용하고자 하는 것 입니다.

그러나 하나의 'ML 프로젝트'는 단순히 하나의 모델을 만드는 것에서 그치지 않습니다. 데이터를 어떻게 가져오고 가공 할 것인지, 모델을 어떻게 만들고 평가 할 것인지, 마음에 드는 모델을 만들었다면 어떻게 서비스로 연결하고 유지보수 할 것 인지에 대한 끝 없는 How? 에 대한 고민이 필요합니다.

enter image description here

(ML 생애주기. '모델 만들기' 이전과 이후로 많은 절차들이 필요하다.)


enter image description here

(Google에서 표현한 MLOps의 모식도. ML code는 아주 작은 하나의 요소에 불과함을 보여준다.)


결국 MLOps는 '만들고자 하는 ML 모델이 실제 Production 까지 이르게 되는 전체적인 방법론이다' 라고 접근하시면 될 것 같습니다.

문제를 정의하는 과정부터, 이후 출시 되면 모니터링을 진행하고, 처음으로 돌아가 재 학습 및 재 배포 과정을 거치는 일련의 작업이 필요하죠.

​ ● MLOps, 얼마나 중요한가요?
​MLOps가 어떤 개념인지 간략히 설명 드렸는데요. 한 걸음 더 나아가서 MLOps의 효용성과 필요성에 대해 좀 더 이야기 해 드리려 합니다.

회사에서 개발을 하다보면 단순히 개발자만으로 프로젝트가 진행되는 것은 아닙니다. 비즈니스적 관점에서의 전체적인 프로젝트 빌드 과정과 이후 배포, 테스트하는 운영단계의 업무도 같이 수반되어야 하죠. MLOps는 이러한 관점에서 실험(ML)과 개발(Develop) 운영(Operate)가 융화된 개념입니다.

enter image description here

(MLOps의 모식도. 하나의 루프로 안정적인 ML 프로젝트 진행이 가능하다)

​ 즉, 성공적인 ML 프로젝트를 위해, 안정적이고 빠른 진행을 위한 필수적인 개념이 MLOps 라고 이해하시면 되겠습니다.

DS2.ai의 AIOps 강점
​ 통상 MLOps를 도입하기 위해서는 기업이 사용할 클라우드 서버를 세팅한 이후, 백엔드 서버를 구현하고 MLOps를 설치하는 복잡한 방식을 거쳐야 합니다. 쉽게 생각해 보아도 높은 비용과 공수가 투입되어야 하는 절차인데요, 저희는 인공지능 모델을 API화 시켜 손 쉽게 적용 가능한 형태로 공급하는 방안을 선택했습니다.

​ 우선 저희는 Skyhub AI 라는 백엔드 자동화 구축 솔루션을 제작했습니다. 해당 솔루션을 이용하면 AI 모델을 업로드 하는 것 만으로 바로 적용 가능한 형태로 공급하게 되는데요, 기존 방식대로라면 고도화된 지식을 보유한 AI 개발자와 최소 며칠의 개발 기간이 필요하겠지만 Skyhub AI를 이용한 방식으로는 약 30분 미만으로 서버 임대와 세팅까지 작업할 수 있는 것이지요. 해당 기술은 자사에서 특허 출원을 완료한 유의미한 기술입니다.

​ 이후 MLOps가 비즈니스를 모니터링하는 과정에서 별도 데이터베이스를 활용해 축적된 고객님들의 데이터를 바탕으로 더 나은 AI로 자동 업그레이드 하는 기능까지 탑재하고 있어, 양질의 데이터 소스를 지속적으로 보급하는 문제도 해결하고 있습니다. ​ enter image description here enter image description here

(SKYHUB AI 솔루션 가동 화면 중 메인 컨트롤 패널 및 서버 임대 페이지)


​ 그 밖에 개발 지식이 있는 분들을 위해서 API로 모델을 추출해 프로그래밍 언어 형태로 인공지능을 활용하는 방안도 도입했습니다.
​ API란 응용프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스로, 즉 프로그램들이 서로 상호작용할 수 있도록 도와주는 매개체 입니다.
결과적으로 이용자들은 자사의 MLOps만 구매하면 복잡한 과정을 생략하고 손 쉽게 관리체계를 도입해 사용할 수 있는 것이죠. ​ enter image description here

(이용자들은 API 를 통해 손 쉽게 S/W 사용이 가능하다)

​ ​ enter image description here

(다양한 프로그래밍 언어로 추출되는 API 파일 형식)

Summary

이번 포스팅에서는 MLOps 솔루션에 대한 설명과 자사의 도입 방식에 대해 설명드렸습니다.
​ 다음에는 전체적인 자사의 솔루션 판매/유통 방식에 대해 알아보는 내용으로 돌아오겠습니다.

비즈니스 운영을 위한 다양한 환경 설정부터 모니터링, 자동 업그레이드에 이르는 솔루션 SKYHUB AI 와 이를 직접 활용해 비즈니스에 접목시킨 고객 사례도 확인해보세요!

References : Microsoft Korea - ML 생애주기 Hidden technical debt in ML systems