[데이터조직]성공하는(할 수 있는) 프로젝트 만들기
처음 제목은 “성공하는 프로젝트 만들기” 였는데, 작성하면서 ”성공할 수 있는 프로젝트 만들기“로 바꾸었다. 성공은 다분히 결과론적인 의미를 담고 있기 때문에, 달성하기 위한 필요조건에 대해서 언급하는게 더 낫겠다고 생각하여 그렇다.
과거 AI조직은 단순히 모델의 결과를 배치성으로 제공고 이를 특정 부서에서 업무에 활용하는 정도였다면, 지금은 AI조직은 프로덕트 조직으로서 실시간에 가깝게 결과를 제공하고, 그 결과 노출의 범위도 최전방이 고객 노출 사이드까지 확장될 정도로 굉장히 커진 상황이다. 따라서 단순 모델 기준의 평가 메트릭을 기반으로 업무가 마무리될 수가 없다.
이로 인해서 성공할 수 있는 프로덕트가 되기 위해서는 첫 번째 요구조건으로 비즈니스 목표에 부합해야 한다. 다시 말해서 모델을 잘 만들었다는 모델 자체의 평가 수치를 넘어 비즈니스에 영향을 미쳐야 한다. 이 과정이 사실 생각보다 쉽지 않다. 이 부분 때문에 프로덕트 자체가 만들어지지 못하는 경우도 있고, 최악에는 데이터 과학자들이 떠나는 경우도 왕왕 있다. 아무래도 비즈니스를 담당하는 사람과 “과학자”의 생각은 매우 다르기 때문이다. 모델은 하나의 거대한 수식으로서 불확실성을 감안한다고 하면 정확도가 100%가 된다는 생각 자체가 굉장히 정적이고 영원하지 않을 수 있다는 것을 감안하더라도 굉장히 어려운 수치라고 인지하고 점차 모델을 개선해나가는 경향이 있는데 반해서, 사업에서는 사용자의 관점에서 100%는 당연하며 정확도가 99%라도 1%를 중시하는 경향이 있다. 이러한 부분을 AI 프로덕트의 리더로서 잘 조율해나가야할 필요가 있다. 모델은 하나의 함수로써 분명 놓칠 수 있는 불확실성이 있는데 이 부분까지 지나치게 감안하면 이후에 나타날 불확실성에 대응하기가 매우 어려워지기 때문이다. 그래서 이 비즈니스 목표에 대한 적절한 합의가 이뤄져서 모델과 프로덕트 지표간의 관계를 잘 정의했을 때, 비로써 프로덕트의 성공 가능성이 높아지게 된다.
두 번째 요구조건으로 문제를 AI에 기반한 형태로 잘 정의하고 수치를 잘 제공해야 한다.앞서 비즈니스 문제가 잘 정의되었다며 이를 모델의 성격에 맞게 최적화할 필요가 있다. 회귀인지 분류인지 부터 시작해서 어떠한 데이터가 존재하고 있고 이를 활용하기 위해서 파이프라인을 설계할 것인지, 가지고 온 데이터를 어떻게 가공해서 활용할 것인지에 대한 고민은 당연하거니와 분석하기 위한 수치는 어떻게 설정할 것인지 등을 함께 고민해볼 필요가 있다. 당연히 모델 관점에서도 어떤 모델이 좋을지 설계하고 비교해야 한다. 이 시점에서는 기존의 AI 조직이 가장 잘하던 영역이기도 하지만, 추가된 부분이 있다면, 모델의 데이터를 제공하는 부분이다. 배치성을 넘어서 최근에는 실시간으로 제공하고 나아가 드리프트(Drift)를 탐지하고, 최신성을 확보하기 위해서 지속해서 재학습을 하는 것도 필수에 가까운 조건이기 때문에 여러 직군이 함께 데이터의 흐름을 기존의 시스템에 잘 결합시키기 위한 노력이 필요해진다.
마지막으로 모델만의 문제라는 사고를 벗어나서 프로덕트 전반에 걸쳐 고민할 필요가 있다. 모델러는 모델로만 문제를 해결하려고 하는 경향이 있다. 이는 망치를 쥔 자는 모든게 못으로 보이는 이치와 다를 바없다. 이게 문제는 아닐 수 있는데, 문제의 해결에 데드라인이 굉장히 타이트하게 잡혀있을 경우, 백엔드/프론트앤드 단에서 문제를 우선 해결하면서 장기적인 시간을 벌어야할 수도 있기 때문에 문제를 다각적으로 생각하여 접근하지 않으면 모델 변경시에 발생하는 불확실성으로 인해서 생각치 못한 문제를 만들 수 있기 때문이다. 그래서 다각적으로 문제를 접근할 필요가 있고, 이러한 부분 때문에 이제 AI도 하나의 모델을 넘어 프로덕트의 구성요소로 접근하려는 훈련이 데이터 과학자에게 요구될 수 있다.
자세히 보면 결국 문제정의가 가장 중요하고 이 부분이 잘 정의되어 있을 때, 성공할 수 있는 프로젝트로 갈 수 있을 것이라고 생각한다. 이러한 부분 때문에 AI보다도 여전히 사람이 프로덕트의 관리를 더 잘할 수 있는게 아닌가 싶다