과학자는 자신이 가진 솔루션을 적용할 문제를 찾고 엔지니어는 자신의 문제를 해결할 솔루션을 찾는다라는 말로 과학(자)과 엔지니어링을 구분한 글을 본 적이 있다. 적절한 구분인 것같다. 데이터 분석/마이닝도 같은 관점에서 구분할 수 있을까? 문제에 맞는 솔루션을 찾는 사람은 데이터 마이너고, 알고리즘에 맞는 문제를 찾는 사람은 데이터 사이언티스트라고 부를 수 있을까? 별로 좋은 구분인 것같지 않다.
최근 빅데이터나 데이터 사이언스 등에 관심이 조금 쏠리고 데이터 기반의 무엇 (Data-driven X)이라는 표현을 자주 접하게 된다. 선무당이 사람잡는다는 말도 있지만, 데이터와 연결된 용어들이 범람하면서 데이터 선무당들도 많이 늘고 있는 것같다. 간혹 지난 몇 년동안 엄청나게 많은 데이터를 모아놓았는데 이걸로 빅데이터 분석할 수 있지 않을까요?라는 류의 질문을 받곤 한다. 가혹 (데이터 분석의 생리를) 알만한 사람들도 비슷한 요청을 한다.
앞서 엔지니어와 과학자를 구분하면서 문제와 솔루션 중 어느 것에 익숙한가로 정했다. 데이터 마이닝이 과학이냐 엔지니어링이냐를 구분하기는 문제와 솔루션이 적당한 측도는 아니지만, 데이터를 접근하는 방식에 대해서는 좋은 설명이 될 것같다. 데이터 마이닝은 문제와 솔루션 사이에 데이터가 존재한다. 데이터가 문제와 솔루션 사이를 연결한다고 봐도 좋다. 그래서 크게, 문제(서비스)에 맞는 데이터를 수집해서 적당한 솔루션을 찾는 방향과 솔루션이 적용될 문제를 찾아서 데이터 인사이트를 얻는 방향이 있을 수 있다. 서비스에 익숙한 사람이라면 나이브하더라도 그것에 맞는 알고리즘을 찾아서 적용해보고 필요하면 더 나은 알고리즘을 찾거나 기존 것을 개선하면 된다. 반대로 알고리즘에 익숙하다면 서비스를 조금씩 이해하가면서 자신의 솔루션을 끼워넣으면 된다. 일반적으로 그렇다는 얘기다.
다른 접근법이 있기는 하다. 주변에서 흔히 접하는 것인데, 가장 이해하기 힘들고 피했으면 하는 접근법이다. 앞서 말했듯이, 우리한테 데이터가 많이 있으니 괜찮은 서비스 하나 만들어볼까요?라는 접근이다. 데이터만 (많이) 있으면 서비스가 하늘에서 뚝 떨어진다는 생각이다. 그래서 많은 경우 데이터 접근법이 실패한다. 모든 것은 컨텍스트 내에서 정의된다. 데이터의 컨텍스트는 서비스다. 유능한 사람은 데이터 더미에서 인사이트를 얻을 수 있겠지만, 나같은 범인은 그러지 못한다. 데이터가 많다고 데이터 기반의 실행이 이뤄지는 것이 아니다.
그리고 이런 경우 데이터가 많기는 한데 데이터 분석에 바로 사용할 수 있는 것도 아니다. 그냥 언젠가 필요할 것같으니 다 모아두자는 식으로 데이터를 쌓아둔 경우가 대부분이다. 물론 많은 회사에서 그런 데이터조차도 관리하고 있지 않지만... 불필요하게 공간만 차지하는 필드들도 많고, 정작 필요한 데이터는 애초에 없는 경우가 많다. 데이터를 분석하고 적용하려면 처음부터 다시 데이터를 모으거나 필요한 형태로 가공해야 한다. 데이터가 잘 정립된 곳에서도 데이터를 가지고 새로운 분석을 하거나 서비스를 만들 때 5할은 데이터 정의/변환에 소요되는데, 그냥 데이터만 쌓아둔 경우라면 9할을 여기에 허비하게 된다. 그러면서 서비스를 이해하게 되는 경우도 발생하지만, 깔끔하지는 않다. 어디에 어떻게 활용할지에 대한 목적없이 데이터를 수집해서 분석가들을 힘들게 만들지 않았으면...
데이터에 맞는 문제, 데이터에 맞는 솔루션은 없다. 데이터가 왕이 아니라, 왕이 될 데이터는 따로 있다.
==
페이스북 페이지: https://www.facebook.com/unexperienced
반응형