개념증명(PoC)에서 생산까지, 머신러닝 활용 프로젝트의 고려 사항들
글: 벡스 심슨(Becks Simpson) 제공 : 마우저 일렉트로닉스(Mouser Electronics)
기업 목표와 업무 지표 연결
기업이 자사의 프로세스에 ML을 도입하기로 결정할 때는 그만한 중요한 이유들이 있다. 팀의 생산성을 높임으로써 수익을 높이고자 하는 것일 수도 있고, 사업에 있어서 특정 측면의 성공률을 높이고자 하는 것일 수도 있다. 또는 수집 정보에 대응하는 시간을 단축함으로써 고객 결과를 향상시키고자 하는 것일 수도 있고, 오류나 여타 낭비와 관련된 비용을 절감하고자 하는 것일 수도 있다. 이러한 이유들은 좀더 세부적인 업무 지표들과 연관된다. ML 프로젝트를 시작할 때는 이를 명확히 할 필요가 있다. 예를 들어 목표가 팀이나 기업의 역량을 향상시켜서 수익을 높이고자 하는 것이라면, 현재의 생산성 상태를 측정하기 위한 지표들은 성과 달성률, 리드당 비용, 순 영업 수익 같은 영업 및 마케팅 지표들과 관련이 있다. 목표가 고객의 성공률 향상이라면 이탈률, 고객 만족 점수, 거래 실패율 같은 지표들과 관련이 있다. 프로젝트를 개발할 때 무엇보다 중요한 것은, 필요성 뒤에 숨은 구체적인 ‘왜’를 이해하지 않고서 해결책을 찾기보다는 정확한 지표들을 통해서 이러한 사업적 필요를 명확하게 하는 것이다. 예컨대 ML 프로세스를 도입하기로 결정한 이유가 고객 응대를 분류하거나 긴 문서를 요약하기 위해서일 경우, 그러한 ML 프로세스가 결과에 어떻게 영향을 미칠지 파악하지 않는다면 이는 전혀 합리적이지 않을 것이다.
업무 지표를 ML 지표와 연결
해당 프로젝트를 위해, 전반적인 목표에 근거해서 관련 업무 지표들을 파악했다면, 다음에는 ML을 활용해서 해결하고자 하는 작업을 기반으로 ML 지표들을 파악해야 한다. 통상적으로, 업무 차원에서의 향상을 위해서는 ML 측에서 일련의 지표들이 필요하다. 예를 들어 프로젝트의 목표가 소프트웨어 구축 전의 품질 보증 같은 특정 프로세스를 처리하는 팀의 작업 시간을 단축해서 생산성을 높이는 것이라고 가정해 보자. 그렇다면 업무 지표는 테스트를 시작하고 끝낼 때까지의 시간, 테스트한 요소의 수, 세션당 테스트 실행 횟수 등이 될 것이다. 마찬가지로, 중요한 인접 지표들로서 구축 전에 포착된 버그의 수와, 이전에 통과했으나 지금은 실패한 테스트 수도 포함될 수 있다. 품질 보증 팀의 업무를 처리하기 위한 ML 프로세스를 구축할 때 지표들은, 지연시간(다시 말해서 모델이 실제 출력에 대해서 예상 출력을 얼마나 빠르게 평가하느냐의 차이)뿐만 아니라 모델의 정확도 역시 포함된다. 구체적으로는 거짓 양성(false positive)과 거짓 음성(false negative)의 수이다.
모델이 실수를 하면 작업자가 평가해야 하기 때문에, 잡아내는 문제가 너무 많다면 작업자의 일이 많아질 것이고 잡아내지 못하는 문제가 너무 많다면 개발 팀의 일거리가 늘어날 것이다. 그 팀의 현재 수행 능력을 파악하는 것과 더불어, 열거한 업무 지표들에 근거해서 기준이 되는 정확도 역시 ML이 적어도 유효한 것으로 간주할 수 있을 만큼 잘 하고 있는지 평가하는 데 있어서 유용하다.
활용 사례나 필요한 출력 타입에 따라서 ML 지표가 정확도나 오류율처럼 간단하지 않을 수도 있다. 하지만 ML 프로세스가 얼마나 잘 하고 있는지 평가하기 위한 방법은 존재한다. ML 프로세스 없이 일을 얼마나 잘 할 수 있는지 측정할 수 있다면 말이다. 지표가 덜 직접적인 예로서 자연어 처리(natural language processing)를 들 수 있다. 텍스트를 요약하거나 콘텐츠를 생성하는 작업은 언뜻 평가하기가 어려워 보인다. 하지만 약간의 시간을 들여서 입력 텍스트 데이터세트와 원하는 출력 예들을 빌드하면 ROUGE(Recall-Oriented Understudy for Gisting Evaluation) 같은 지표를 이용할 수 있다. 이러한 지표는 원하는 출력과 실제 출력 사이에 단어들이 일치하는 것을 측정할 수 있다. 이는 어떤 하나의 ‘올바른’ 대답이 존재할 수 없다는 점을 나타내는 것으로, 올바름의 정도에 따라 대답은 다양할 수 있다.
POC 로드맵 수립
ML 지표들을 명확하게 한 다음에는 POC 구현 및 시험 접근법에 대한 간결하지만 상세한 로드맵을 구축할 수 있다. 이를 위해서는 전체 작업을 더 작고 간단한 조각들로 나눠야 한다. 그러면 ML 모델을 사용해서 성공할 것인지를 더 빠르게 평가할 수 있다. 예를 들어, 좀더 복잡한 분류 체계를 사용하는 대신, 긴급한 고객 응대와 긴급하지 않은 고객 응대를 분류할 수 있다. 이와 함께 좀더 간단한 옵션이 실패했을 때를 대비하여, 복잡도를 높여가면서 일련의 접근법들을 찾아내기 위해 예비적인 문헌 검토나 사전 기술 조사를 실시해야 한다. 이러한 전략을 구현하는 것은 시중에 나와 있는 모델을 사용하거나, 써드파티 애플리케이션 프로그래밍 인터페이스를 통해 제공되는 모델을 이용할 수도 있다(사업적으로 가능한 경우). 그 다음에는 아키텍처로 옮겨서 세밀하게 조절을 하거나 특정 작업을 처리하도록 재학습을 할 수 있다. 혹은 좀더 복잡한 학습 체계를 사용해서 모델을 처음부터 구현해야 할 수도 있다. 각각의 접근법의 비용을 대략적으로 산정해서, 예상되는 가치를 근거로 ML 프로젝트의 투자 회수(ROI)를 공정하게 평가할 수 있다. 이렇게 하면 어떤 POC 방향이 시도하기에 터무니없이 많은 비용이 들어갈 것인지 파악할 수 있으며, 달성 가능한 최대 성능이 불충분할 때 프로젝트를 포기하는 기준점을 설정할 수도 있다.
맺음말
기업의 프로세스나 제품에 ML을 도입함으로써 생산성을 높이고 비용과 오류를 줄이는 것과 같은 중요한 사업 목표를 달성할 수 있다. 하지만 이러한 ML 프로젝트가 성공하기 위해서는 올바른 토대 위에서 시작해야 한다. 관련된 업무 지표들을 통해서 ML 프로젝트가 어떠한 영향을 미칠지 파악하는 것이 중요하며, 개발된 모델이 원하는 대로 잘 작동함으로써 기대하는 가치를 제공할 것인지 알아보기 위해 관련 ML 지표들을 파악하는 것 또한 중요하다. 이러한 지표들을 파악한 다음에는 POC 구현 방향을 포착하기 위한 로드맵을 수립함으로써 프로젝트를 궤도에 올려놓을 수 있다. 이러한 로드맵은 투입한 노력 대비 ROI를 추적할 수 있도록 함으로써 둘 사이에서 적절히 균형을 이루는 기준점을 설정할 수 있다. 이와 같은 방법으로 기업의 목표에 근거해서 ML POC에서 생산 단계로 나아갈 수 있다.
▶ 저자 소개
벡스 심슨은 개발자, 제품 디자이너, ML 전문가들이 함께 힘을 합쳐 상상 속의 AI 제품을 현실로 만드는 앨리콥 노르드(AlleyCorp Nord)의 머신 러닝 책임자다. 새로운 딥 러닝 기법을 검토하고 연구를 실제 문제 해결에 적용하는 것에서부터 AI 모델을 학습 및 구축하기 위한 파이프라인과 플랫폼을 설계하고 스타트업들에게 AI와 데이터 전략에 관한 자문을 제공하는 등의 일을 한다.