"머신러닝이 클라우드를 만날 때"

이건복 한국마이크로소프트 이사

일반입력 :2014/12/15 14:02

머신러닝을 시도하려면 기본적으로 데이터에 대한 높은 이해력과 알고리즘 활용을 위한 수학적 지식이 필요하다. 여기에 하나 덧붙여, 연산을 위한 컴퓨팅 자원이 필요하다.

머신러닝 알고리즘이 복잡하면 복잡할수록 필요한 컴퓨팅 자원은 많아진다. 그러나 대부분의 회사나 개인은 방대한 컴퓨팅 자원을 보유하지 못한다. 노트북이나 데스크톱, 서버 한두대가 머신러닝에 동원할 수 있는 자원일 것이다.

실질적인 프로덕션 서비스에 머신러닝을 적용하는 건 한참 뒤 나중으로 미뤄두고라도 한번쯤 머신러닝을 경험해볼 수 있는 수단은 있다. 마이크로소프트(MS)에서 제공하는 애저 머신러닝(ML) 서비스다.

MS 애저 ML은 현재 연구, 테스트용도에 대해 무료로 제공되고 있다. 상당히 많은 수준의 알고리즘과 지식이 콤포넌트로 축적돼 있어, 드래그앤드롭으로 워크플로우를 디자인함으로써 쉽게 전체 시스템을 구성할 수 있다.

한국MS DPX팀의 이건복 이사는 “머신러닝 시스템은 너무 복잡하고, 엔진이 쓰기 너무 어려워서, 시스템 구축 자체부터 지레 포기할 수 있다”며 “MS에서 하고자 하는 건 머신러닝을 시스템 구축 없이 기존 평가 알고리즘을 쉽게 끌어다 쓰게 함으로써, 접근성을 높이고 인프라 부담을 줄여 활용 분야를 넓히자는 것”이라고 설명했다.

이 이사는 “여기에 기존 사내 서비스와 연결할 수 있고 예측 시스템과 데이터 플로우를 애저에 올리고 연산한 시간만 돈을 내고 빠져나오는 개념을 더했다”며 “MS는 툴을 제공하고, 시스템에 들어가는 분석이나 아이스크립트는 데이터사이언티스트의 역할이 된다”고 덧붙였다.

MS 애저 ML은 ▲애저 ML 스튜디오 ▲머신러닝 애플리케이션프로그래밍인터페이스(API) 서비스 ▲소프트웨어개발도구(SDK) 등으로 이뤄진다.

애저 ML 스튜디오는 MS에서 제공하는 알고리즘 라이브러리와 변환 툴, 이벨류에이트, 모델 이니셜라이즈, 스코어링, 트레이닝, R스크립트 지원 모듈 등을 마우스 작업으로 활용하게 해준다. 여러 요소를 끌어다 놓고 점과 점을 이어줌으로써 데이터 워크플로우 디자인을 하고, 보유한 데이터나 MS에서 제공하는 공개 데이터를 부어넣어 패턴 알고리즘을 검증하게 된다.

API는 기본 제공되는 것 외에 업계나 학계에서 검증됐거나 자체 설계한 것을 붙여 확장할 수 있다. 빅데이터 분석을 위한 애저 HD인사이트나 스트림 분석이나 각종 애저 서비스도 연동할 수 있다.

이건복 이사는 “애저ML의 주요 사용자층은 일반 개발자보다 데이터사이언티스트로 보고 있다”며 “만약 검증된 알고리즘이라면 데이터사이언티스트가 직접 퍼블리싱해 외부에 제공하거나 판매하는 것도 가능하다”고 설명했다.

이 이사는 “뭔가 잘못됐다고 하는 부분에 대해 잘된 것과 잘못된 것을 가려내고 오류를 제거해가는 과정이 학습이라 할 수 있다”며 “IT 기존 시스템은 학습이란 과정이 배제돼 있어 정확한 길을 만들어주고 따라만 가게 했고, 잘못된 걸 교정하는 작업을 사람이 했지만, 머신러닝은 시스템이 갈수록 스스로 발전하도록 만들 수 있다”고 강조했다.

그는 “빅데이터가 현재 상태를 분석하고 통찰력을 갖게 하는 보조수단이라면, 머신러닝은 과거의 추이를 통해 미래를 예측하는 것”이라며 “둘은 다르지만, 빅데이터에서 가져온 데이터를 클라우드에 저장하고 머신러닝 시스템으로 돌려, 사물인터넷(IoT)과 연동시키는 그림으로 연결된다”고 덧붙였다.

서비스 가격은 무료 계층과 표준 계층으로 나뉜다. 무료 계층은 MS 계정 당 하나의 애저 ML 스튜디오 작업 영역 무료 액세스 권한을 준다. 최대 10GB 데이터 집합 업로드와 스테이징 API로 모델을 운영하는 기능을 무료로 쓸 수 있다.

무료로 사용할 경우 저장소 컨테이너를 지정할 수 없다. 자신만의 애저 저장소를 쓰려면 과금모델인 표준계층을 사용해야 한다.

표준계층은 애저 ML 스튜디오의 경우 실험 시간당 0.38달러이며, API서비스의 경우 시간당 0.75달러로 과금한다. 예측은 애저 ML 스튜디오에서 무료로 할 수 있고, API 서비스의 경우 1천개 예측당 0.18달러로 과금한다.

이 이사는 “샘플 데모로 올라와 있는 데이터와 예측 모델은 검증하는데 1분 미만이면 가능하다”며 “간단한 모델이고, 데이터가 별로 크지 않다면 단시간에 검증하고, 워크플로우에 따라 재검증하는 식으로 이용할 수 있다”고 설명했다.

그는 머신러닝 활용에서 클라우드 컴퓨팅이 큰 힘을 발휘할 거라 봤다.

그는 “가령, 보험사 상품 만들 때 시뮬레이션을 돌리는데, 쿼리 하나 돌리는데 MPI로 2주 걸리지만,

잘못되면 또 돌려야 한다”며 “이건 분석과 계산이지 머신러닝은 아닌데, 머신러닝은 틀릴 것 까지 감안해서 모델을 돌리는 것”이라고 말했다.

이어 “만약 클라우드를 이용하지 않는다면 머신러닝 이용한 예측 시스템 구축은 상당히 많은 부담을 주게 되고 실용화하기 어려울 것”이라며 “클라우드에 올린다는 건 서버나 스토리지뿐 아니라 다양한 클라우드 서비스 요소와 연결될 수 있다는 것이므로 활용 사례는 무궁무진하다”고 덧붙였다.

MS가 애저를 통해 머신러닝 서비스를 제공한다고 해서 당장 개발자나 회사가 머신러닝을 100% 활용하게 되는 건 아니다. 이 이사도 이 점에 동의했다.

그는 “MS 애저는 툴만 제공하는 것이고, 데이터를 축적하고, 축적된 데이터를 이해하는 사람이 분석하고, 로직을 짜거나 개선하는 게 필요하다”며 “툴을 활용하는 건 사용자의 역량에 따라 결과가 달라진다”고 지적했다.

이어 “머신러닝은 계산식을 만들어 가는 게 관건이지, 로직이나 기능성은 UI적 성격이 전부”라며 “플로우 디자이너 툴 같은게 개발자의 영역이고, 계산식을 만들어내는 건 데이터 전문가의 몫”이라고 덧붙였다.

사실 MS 같은 IT회사에게도 머신러닝 자체는 매우 어려운 영역이다. MS는 파트너사가 애저 ML을 활용한 IT서비스 사업을 할 수 있게 길을 터놨다. 하지만 전세계적으로 머신러닝으로 IT서비스를 제공할 수 있는 회사는 극소수에 불과하다. 인포시스나 액센추어 같은 파트너는 머신러닝 활용을 유도하는 컨설팅을 제공한다.

일단 MS는 회사 내부적으로 머신러닝을 적극 활용하는 정책을 쓰고 있다. 사실 애저 ML 서비스도 MS 내부에서 데이터 분석을 해야 하는 부서에 제공하기 위해 개발된 것을 외부에 내놓은 것이다.

MS R&D조직인 MS 리서치는 '파사우(Passau) 프로젝트'를 통해 애저 ML을 개발했다. MS 개발자들이 X박스라이브와 빙 같은 서비스 증축 시 머신러닝 알고리즘을 활용하기 위해서다. MS 리서치는 파사우 프로젝트를 MS 데이터플랫폼팀에 기증했고, 이후 빙, X박스, 애저, 오피스365 등 MS의 인터넷 서비스에 애저 ML 서비스가 활용되고 있다.

이 이사는 “이밖에 애저 데이터센터를 확장하거나 상면, 메모리 등을 할당할 때 무턱대고 확장할 수 없으니, 3개월 이내 리소스를 얼마나 투자할 지 머신러닝으로 예측한다”고 설명했다.

관련기사

그는 어려운 길이지만, 머신러닝을 IT부서에서 주목해야 한다고 덧붙였다. IT조직의 경쟁력을 키우는데 도움을 줄 것이란 게 이유다.

이 이사는 “기존 IT 조직의 역할은 의사결정권자에게 백데이터를 제공하는 역할이었다”며 “머신러닝을 통해 IT조직이 전보다 한발 앞으로 나와 직접 조언하는 조직으로 진일보하는 게 앞으로의 방향이라 전망한다”고 강조했다.