현업에게 필요한 AutoML 솔루션
알파고 이후 많은 사람들이 머신러닝이란 단어에 익숙해진 듯하다. 마법의 특효약처럼 이야기되고 있지만 사실 머신러닝은 데이터에서 패턴을 찾고 예측 정확도를 높이기 위한 계산통계방법의 일종이다. 통계 방법론이 인과에 대한 추론과 변수간의 관계에 집중한다면 머신러닝은 예측 성능 자체에 좀 더 집중한다는 차이점이 있다고들 하는데, 기업에서 접하는 테이블 형태의 깔끔하게 정리된 데이터들(특히 금융권)을 사용할 경우 예측 성능 자체도 사실 큰 차이가 있는지는 잘 모르겠다.
물론 이미지 인식/분류, 자연어 처리, 규칙이 분명한 닫힌 계(e.g. 바둑)에서의 최적화 같은 특정 영역에서는 분명 머신러닝이 좋은 성능을 보이는 것이 사실이다. 하지만 대부분 우리가 접하는 기업의 의사결정 관련 문제들은 언어나 이미지처럼 정해진 형태의 데이터라기보다는 복잡하게 얽힌 다양한 관계에서 발생한 결과물들을 기반으로 해결해야 하기 때문에 데이터를 적합하는 방법론 중 하나인 머신러닝이 모든 걸 해결해 준다고 생각하지 않는다.
AutoML 솔루션은 자동화 소프트웨어의 일종으로 5~10년 전만 해도 모델링(=적합)을 하기 위한 코드 작성을 대체해 주는 정도였다. 요즘이야 필수 교양처럼 R, Python과 같은 데이터 분석 도구들을 많은 현업들이 사용하거나 들어 보지만, 당시만 해도 IDE는커녕 SAS Base 화면 정도만 봐도 현업 눈에는 흰 건 종이요 색이 있는 건 글씨로 보였기에 코딩 없이 GUI로 머신러닝 모델링이 가능한 아이템은 건 꽤나 신기한 물건이긴 하였다.
시간이 지나면서 해당 솔루션을 공급하는 기업들은 굉장히 많아졌고, 그중 DataRobot, H2O, dataiku 등과 같은 몇몇 기업은 많은 금액을 투자받고 단순 모델링이 아닌 데이터 준비 ~ 모델 배포/모니터링까지 아우르는 모델 개발/운영 플랫폼으로 진화 중이다. 심지어 글로벌 클라우드 사업자들까지 각자 제공하는 클라우드 인프라에서 활용 가능한 ML 개발 플랫폼을 구축해 놓았으니 AutoM은 더 이상 단순 소프트웨어가 아닌 일종의 시스템, 또는 해당 시스템으로 인해 파생되는 시장 그 자체로 변화되고 있어 보인다.
서두에 머신러닝이 마법이 아니라고 하였지만 그럼에도 불구하고 다양한 기업/산업 영역에서 활용될 가능성은 분명히 존재한다. 또한 모델링을 위한 도구와 리소스들이 널리 퍼지고 제공되었지만 여전히 회사에서 본업에 바쁜 현업들은 이러한 작업들을 직접 하기에 힘이 부치고, 기업들 역시 데이터 관련 조직을 꾸리지만 사소한 과제 설계와 해결을 위해 비싼 인력을 투입하기 쉽지 않다. 더욱이 외부에서 채용된 전문가들은 도메인에 대한 지식이 부족하고 이로 인해 적절한 데이터를 준비하기 어렵다는 맹점이 있다.
최근 진화하는 AutoML 솔루션들을 보면 이런 현업-전문가 사이에서 발생하는 어려움을 해결해줄 수 있지 않을까 하는 생각을 한다. 다만 그러기 위해서 가장 중요한 부분은 실험 계획이 아닌 비즈니스 운영을 위한 시스템으로서의 효용을 증명해야 한다는 점이고 이를 위해서는 크게 아래와 같은 3가지 사항들을 고려해야 할 것이다.
먼저 비즈니스 운영을 위한 시스템이라 하면 현업이 업무를 위해 사용하는 기업의 내부 IT시스템에 모델링 결과가 연계되어 워크플로우에서 자연스럽게 활용되어야 한다. 예를 들어 식자재 수요예측 현업 담당자는 본인이 업무에서 사용하는 화면에 모델링으로부터 생성된 예측 수량이 자연스럽게 출력되고 여러 가지 방식으로 리포팅되거나 해당 값을 적절히 가공할 수 있기를 원하지만, 국내 기업들은 레거시 시스템이 너무나도 편하게 업무 자동화가 이루어져 있어 보여 이 과정이 웬만큼 자동화되지 않고는 성에 차지 않아 하는 듯해 보인다. 이런 영역을 잘할 수 있는 플레이어라고 하면 기본적으로 ERP 업체들이 생각나는데 아직까지는 이들이 아래의 영역까지 역량을 갖추기에는 시기상조인 듯하다.
두 번째로 워크플로우에 머신러닝의 결과가 효과적으로 사용이 되고 나면 이러한 과정이 지속적으로 운영되기 위한 데이터 파이프라인 확보와 이에 기반한 모델 관리의 자동화가 필요하다. 최근에는 MLOps라는 개념으로 해당 영역이 핫해지고 발전을 하고 있어 조만간 많은 부분들이 자동화될 수 있지 않을까 하는 생각을 해 본다. 다만 그럼에도 불구하고 이러한 기술 영역을 커버하는 기업들은 개별 도메인에 대한 이해도가 낮고 고연봉 기술 인력들이 커스터마이징 및 컨설팅 같은 인력 장사를 하는 순간 채산성에 문제가 생긴다는 어려움이 있다 (안타깝게 다시 첫 번째 문제로 회귀).
마지막은 도메인에 적합한 데이터의 생성과 관리인데, 이 부분으로 큰돈을 벌고 있는 곳은 NICE평가정보를 비롯한 CB사업자들 외에는 아직 본 적이 없다. 다들 머신러닝을 도입하고 데이터에 기반한 의사결정과 디지털 트랜스포메이션을 외치지만 정작 눈에 보이지 않는 데이터 수집채널 확보, 정합성 검증, 원천 데이터로부터 변수/요약항목(=파생변수, Feature Engineering 등과 동일한 의미) 생성과 같은 곰 눈알 붙이기 작업은 외면을 한다.
어쩌면 위와 같은 고려사항들은 사람 없이는 아직까지 해결할 수 없는 문제들처럼 보이기도 한다. 하지만 이런 영역의 문제를 효과적인 방법으로 해결할 수 있는 방법을 제시한다면 기업/산업 머신러닝 활용 영역에서는 한 획을 그을 수 있지 않을까 생각한다. 누군가는 이미 했던 생각일 수도 있고, 이미 시도 후 포기했던 사람들도 많을 것이다. 다만 그럼에도 앞으로 누가 될지는 모르겠지만 다시 도전할 영역이라고 생각하고 혹시 기회가 된다면 가슴 뛰는 도전을 한번 함께 해 보고 싶다는 생각을 가끔 한다.