오늘 새벽에 페북에 데이터 분석을 하려면 수학을 얼마나 공부해야 하나 하는 질문이 있었다. 아마 모든 사람들이 궁금해 하는 질문일텐데 대부분 조금만 하면 좋겠는데 무엇을 해야 하는가가 궁금할 것이다. 데이터 분석에 관심이 부쩍 늘어나는 중이라 나도 이 질문의 답이 궁금하다. 답글 달린 것처럼 많이 알면 좋겠지만 시간이 부족하니...
인터넷을 통해서 알게 된 웹페이지 하나를 보면 몇 가지 수학을 들고 있다. pie chart를 써서 나타내 준 것에는... linear algebra, prabability, statistics, multivariate calculus, algorithm & complexity 등등이 있다고 되어 있다. 이것은 아마도 누구나 알아야 하는 것이겠다. 앞의 세 가지는 꼭 필요한 것이고, 뒤의 algorithm 등은 코딩을 조금은 알아야 하니까, 또 날코딩은 안 하더라도 남이 만들어 놓은 코딩은 이해할 수 있어야 하니까... 그리고 요즘의 deep learning은 무슨 1억개 변수인 함수의 최대최소를 다룬다는 사실 정도는 파악할 수 있어야 하니까 다변수해석학의 개념은 잘 가지고 있어야 한다.
이것만이면 되는가? 글쎄 잘 모른다. 지금 새로 생긴 분야. 이제부터 왕창 발전할 분야를 제대로 사용하려면 무엇을 알아야 하는가라고 물어보면 지금 아는 사람은 없다. 단지 유추해볼 수 있는 몇 가지 곁가지 사실을 보자.
1970-90년대에 데이터분석을 위해서 많은 사람들이 공부하던 것이 있다. 소위 조합론(combinatorics)인데 특히 기하학적 조합론 또는 조합론적 기하학(combinatorial geometry)이다. 당시에 마구 주어진 데이터(보통 고차원이다)를 공간에 찍어놓고 구조를 찾으려고 이 점들을 연결해 놓고 연구했다. 이것은 graph라고 부르는 것인데 이것들에 대해서 알려진 사실들이 많다. 새로운 시대의 데이터 분석은 이런 기법을 활용하는 것도 한 몫 할 것같다. 이런 수학 지식은 위에 나열한 데에는 없다. (사실 이것은 비교적 이해하기 쉬운 수학분야쪽에 들어간다.)
많은 수를 다루는 데서 가장 기본적인 도구는 특정한 종류의 대상이 몇 개인가를 세는 것이다. 이것을 counting이라고 하고 사실 수학에서 제일 어려운 문제들이다. 고등학교 때는 경우의 수라고 해서 배운 것인데 몇 개의 공식만을 활용해서 문제를 풀 수 없는 독특한 과목이었다. 대부분 수학과목이 몇 개의 공식만 잘 이해하면 끝나는데 그렇지 못한 분야가 몇 개 있다. 조합론이 그런 분야이고 고전 논증기하가 그런 분야이다. (counting을 요즈음은 초등학교에서 `헤아리기'라고 부른다고 들었다.) 그런데 데이터를 다루려면 이 counting이 기본이 될 수밖에 없고 이것은 컴퓨터만으로는 잘 셀 수 없다. 최근에 우리나라 수학계에 혜성처럼 나타난 허모박사도 세상에서 가장 어렵다는 대수기하학의 방법을 써서 아무도 못 푸는 counting하는 문제도 풀고 해서 유명한 것이라 한다. 이것이 현실과 동떨어진 것이 아니라 데이터 분석에 바로 사용될 수도 있을만한 내용이라는 점이 함정이다.
배경지식은 이만큼 하고, 그러니까 데이터 분석을 하려면 수학을 얼마나 공부해야 할까?
이렇게 이야기하자. 내가 보는 바로는 미래에 데이터를 분석하는 사람은 한 가지 관점에서 보아 두 가지 그룹으로 나뉜다. 관점은 수학을 얼마나 사용하는가이고, 두 가지 그룹은 당연히 수학을 조금만 쓰는 사람들과 많은 수학을 필요에 따라 찾아보면서 사용할 수 있는 사람들이다. 이사람들은 어떻게 다를까. 수학을 조금만 쓰는 데이터 분석가의 수는 매우 많아질 것이다. 특히 새로 나오는 컴퓨터 기법을 익히고 수학을 조금만 쓰는 사람은 예전의 기법을 배운 사람들보다 경쟁력이 높을 것이므로 기업/개인은 계속해서 젊은 사람들을 싼 값에 쓰려고 할 것이고 과당경쟁으로 출혈경쟁이 될 가능성이 많다. 지금도 여러 가지 일에서 이런 현상을 많이 본다. 예를 들면, 지금도 하지 말라고 하는 날코딩하는 기사와 비슷한 처지가 될 가능성이 높다. 한편 수학을 많이 이해하고 사용할 줄 아는 데이터 분석가는 나름 경쟁력을 가질 것이다. (수학을 잘 아는 사람은 항상 수가 매우 적다는 가정이다.) 이런 사람을 필요로 하는 곳은 지금보다 매우 늘어날 것으로 보인다. (단지 내 바램만은 아니다.) 따라서 이 사람들은 몸값이 올라갈 가능성이 많다. 즉 이 직업에서도 극과 극으로 갈라질 것으로 보인다.
미래는 모든 것이 이렇게 극과 극으로 갈린다. 한 동안은 그럴 것이다.(아마도 10-30년. 그리고 그 이후는 전혀 감도 안 간다.) 이럴 때는 차별화돼야 한다. 다시 말하면 조금만 준비하면 들어올 수 있는 부분은 너도 나도 경쟁해서 결국 도움이 안 된다. 전 세계 사람들에게 완전히 까 놓고 "나는 이렇게 이런 것을 한다"고 알려줘도 따라 들어오기 어려운 것을 적어도 하나 가지고 있어야 제대로 된 위치를 가질 수 있을 것이라고 생각된다. 이제부터 경쟁은 전 세계 경쟁이니까 국내 법에 근거한 어떤 보호장치도 작동하지 않을 것이다. (이미 수십년 전부터 미국의 모든 AS 응대 서비스는 인도 같은 곳에서 한다. 물론 질이 매우 저하 됐다. 하지만 비싼 돈을 쓰면서 고급 AS하는 회사는 더 이상 없다. 우리나라 삼성/엘지만 그런 듯하다.)
이런 미래를 생각하고 데이터 분석도 생각해야 할 것이다.