MLOps. 처음 듣는 사람에겐 털 많은 외눈박이 괴물의 이름 같이 들릴 수 있는데요. 사실은 엔터프라이즈 AI 성공의 키워드입니다.
머신러닝 오퍼레이션(machine learning operations)의 줄임말인 MLOps는 기업이 AI를 성공적으로 활용한 다양한 모범사례를 말합니다.
AI 기술이 상용화된지 얼마 되지 않았기 때문에 MLOps는 비교적 새로운 분야입니다.
엔터프라이즈 AI의 성장 동력, MLOps
한 연구자가 2012년 열린 이미지 인식 대회에서 딥 러닝 기술로 우승을 차지한 일이 있었습니다. AI계의 빅뱅이라 할 수 있는 사건이었는데요. 그 파급효과는 엄청났습니다.
현재 AI는 웹페이지 번역에서 고객 서비스 전화 자동 연결, 병원의 엑스레이 사진 분석 지원, 은행의 신용 리스크 계산, 매출 최적화를 위한 재고 비축에 이르는 다양한 분야에서 널리 사용되고 있습니다.
요약하면 광범위한 AI 산업의 한 분야인 머신러닝이 소프트웨어 애플리케이션 만큼이나 주류 산업으로 곧 부상하게 될 것이라는 뜻입니다. 그래서 머신러닝 실행 프로세스가 IT 시스템을 실행하는 것만큼이나 평범한 일이 돼야 합니다.
DevOps에서 시작된 머신러닝
MLOps는 엔터프라이즈 애플리케이션을 효율적으로 개발, 배포, 실행하는 프로세스나 기술인 DevOps를 기반으로 한 기술인데요. 10년 전 갈등관계에 있던 소프트웨어 개발자(Devs)와 IT 운영 팀(Ops)의 협업 방안으로 고안된 것이 DevOps의 시작이었죠.
MLOps는 데이터세트를 준비하고 이를 분석하는 AI 모델을 만드는 데이터 사이언티스트 팀을 지원합니다. 이 팀에는 데이터세트를 모델을 통해 체계적으로 자동 처리하는 머신러닝 엔지니어도 포함됩니다.
MLOps는 로우 성능(raw performance)과 엄격한 관리 차원에서도 쉽지 않은 과제인데요. 데이터세트는 방대할 뿐 아니라 계속해서 증가하고 있으며 실시간으로 변화합니다. AI 모델을 제대로 개발하기 위해서는 수 차례의 실험, 미세 조정, 재훈련 결과를 모니터링 해야 합니다.
그래서 MLOps를 위해서는 기업 성장속도에 발맞춘 강력한 AI 인프라가 필요하죠. 이 때문에 많은 기업들이 엔비디아 DGX 시스템, CUDA-X를 비롯해 엔비디아 소프트웨어 허브인 NGC의 기타 소프트웨어 컴포넌트를 사용합니다.
데이터 사이언티스트를 위한 라이프사이클 모니터링
AI 인프라가 구축된 엔터프라이즈 데이터센터는 아래 리스팅된 MLOps 소프트웨어 스택의 관련 요소들을 레어어링 할 수 있습니다.
- 데이터 소스와 데이터 소스에서 생성된 데이터세트
- 사용 내역(history)과 특성(attributes)이 태깅된 AI 모델 리포지토리
- 라이프사이클을 통해 데이터세트, 모델과 실험을 관리하는 자동 ML 파이프라인
- 이 작업을 간소화하는 소프트웨어 컨테이너(통상 쿠버네티스 기반)
이처럼 각각의 흥미로운 작업들을 한 데 모으면 하나의 프로세스가 완성되는데요.
데이터 사이언티스트는 외부 소스와 내부 데이터 레이크에서 데이터세트를 자유롭게 잘라 붙일 수 있어야 합니다. 하지만 데이터 사이언티스트의 작업과 데이터세트는 신중하게 라벨링하고 추적될 수 있어야 하죠.
마찬가지로 당면 과제에 잘 맞는 양질의 모델을 만들기 위해 지속적으로 다양한 시도와 반복작업을 해야 합니다. 이를 위해서는 유연한 샌드박스와 매우 견고한 리포지토리가 필요하죠.
또한 프로토타입, 테스트, 프로덕션을 통해 데이터세트와 모델을 실행하는 머신러닝 엔지니어들과 협력할 방법을 찾아야 하는데요. 모델을 쉽게 해석하고 재생산할 수 있도록 자동화와 세심한 주의가 필요한 프로세스입니다.
오늘날 이러한 기능은 클라우드 컴퓨팅 서비스의 일부로 제공되고 있습니다. 머신러닝을 전략적 기술로 간주하는 기업들은 점점 증가하는 벤더들의 MLOps 서비스 또는 툴을 사용해 자체적인 우수 AI 센터를 구축하고 있습니다.
대규모 프로덕션을 위한 데이터 사이언스
초기에는 에어비앤비, 페이스북, 구글, 엔비디아, 우버 같은 기업들이 이러한 기능을 직접 구축해야 했습니다.
엔비디아의 AI 인프라 디렉터 니콜라스 쿰차츠키는 “오픈소스 코드를 최대한 활용하려 했지만 우리가 하고자 하는 일을 대규모로 할 수 있는 솔루션을 찾기가 쉽지 않았죠. MLOps라는 용어를 처음 들었을 때 우리가 지금 만들고 있고 제가 이전에 트위터에서 만들고 있던 것이 MLOps라는 걸 깨달았습니다”라고 덧붙였습니다.
엔비디아의 쿰차츠키 팀은 자율주행차 개발과 테스트 플랫폼인 엔비디아 드라이브를 호스팅하는 MLOps 소프트웨어 MagLev를 개발했는데요. MLOps의 기반을 구성하는 MagLev는 대규모 클러스터에서 실행되는 쿠버네티스 컨테이너를 관리, 모니터링하기 위해 개발된 구성요소 세트인 엔비디아 컨테이너 런타임(NVIDIA Container Runtime)과 아폴로(Apollo)를 사용합니다.
MLOps의 기반을 다지는 엔비디아
쿰차츠키 팀은 DGX POD라는 GPU 클러스터를 기반으로 엔비디아의 내부 AI 인프라에 작업을 실행합니다. 또 작업 시작 전에 인프라 담당자가 우수사례를 활용하고 있는지 확인하는데요.
최근 미국의 가장 강력한 산업용 컴퓨터로 선정된 DGX SuperPOD, 셀린(Selene)을 비롯한 엔비디아의 AI 시스템을 구축하는 팀 책임자 마이클 휴스턴은 우선 “AI 애플리케이션에 필요한 라이브러리와 런타임을 찾기 위해 수반되는 엄청난 수고를 덜기 위해서 모든 것이 컨테이너 상에서 실행되야 합니다”라고 말합니다.
그 외에도 다음과 같은 조건이 있는데요.
- 승인된 메커니즘을 통한 컨테이너 실행
- 멀티 GPU 노드에서 실행 가능 여부 증명
- 잠재적 병목 현상 식별을 위한 성능 데이터 표시
- 프로파일 데이터 표시로 소프트웨어 디버그 확인
1년 전 닐 애널리틱스에서 MLOps 컨설팅을 시작해 MLOps가 무엇인지 정의하는 내용의 기사를 작성한 바 있는 데이터 사이언티스트 에드윈 웹스터에 따르면 오늘날 비즈니스에는 다양한 수준의 MLOps 기술이 사용되고 있습니다. 일부 기업에서는 여전히 데이터 사이언티스트들이 여전히 개인용 노트북에 모델을 저장하고 다른 기업들은 대규모 클라우드 서비스 공급업체에 의존해 종합적인 서비스를 제공받고 있다고 합니다.
두 개의 MLOps 성공 사례
웹스터는 두 고객의 성공 사례를 공유해줬는데요.
한 대형 소매업체가 퍼블릭 클라우드 서비스에서 MLOps 기능을 활용해 폐기물 양을 8-9% 줄인 AI 서비스를 개발했습니다. 이 서비스를 사용하면 식품 진열대에 신선식품(perishable goods)을 언제 채워 넣어야 할지에 대한 예측을 날마다 제공받을 수 있죠. 해당 업체에 새롭게 구성된 데이터 사이언티스트 팀이 데이터세트와 모델을 만들었고 클라우드 서비스는 컨테이너에 중요한 요소들을 탑재하고 AI 작업을 실행, 관리했죠.
또 다른 PC 제조업체는 AI를 사용해 노트북 보수가 필요할지를 예측해 노트북이 소프트웨어를 자동 업데이트할 수 있을지 확인이 가능한 소프트웨어를 개발했습니다. 이 OEM 업체는 확립된 MLOps 관행과 내부 전문가를 통해 자체 AI 모델을 3,000대의 노트북 상에서 개발, 테스트했습니다. 이 PC 제조업체는 이제 자사의 최대 고객사에 해당 소프트웨어를 제공하고 있습니다.
가트너 수석 분석가 슈방기 바쉬스(Shubhangi Vashisth)에 따르면 포춘지 선정 100대 기업 중 다수가 MLOps를 적극 도입하고 있습니다. “지금 모멘텀에 힘을 받고 있는 상황이지만 아직도 주류 기술이 됐다고는 할 수 없습니다”라고 말했습니다.
바쉬스는 MLOps에 입문하는 3가지 단계를 설명한 백서를 공동 집필하기도 했는데요. 첫 번째 단계는 이해관계자들과 공동의 목표를 설정하는 것이고, 두 번째 단계는 소유권을 정리한 조직도를 작성하는 것, 마지막 세번째 단계는 업무분장입니다. 가트너의 경우 업무분장 리스트가 10개가 넘습니다.