본 장에서는 먼저 데이터 과학이라는 단어가 어디서 왔는지부터 알아봅니다. 다음으로, 빅데이터 관련 개념 중 핵심이라 할 수 있는 하둡과 데이터 레이크에 대해서 살펴보고, 기업들이 운용 하는 데이터 분석 팀이 어떤 멤버들로 구성되는지 알아봅니다. 마지막으로 데이터 과학에서 널리 쓰이는모델이라는 용어의 의미를 살펴봅니다.
1.1 데이터 과학의 기원
데이터 과학은 통계학에서 출발합니다. 둘은 많은 것을 공유하지만, 다른 점이 있습니다. 통계학 교과서는 '통계적 추정'에 대해 다음과 같이 정의합니다.
표본을 통해 모집단 특성이 어떠한가에 대해 추측하는 과정이다.
반면, 데이터 과학자는 비슷한 말을 이렇게 표현합니다:
데이터를 이용해 현실 세계의 문제에 대한 해답을 찾을 수 있다.
이 둘 중 어느 쪽 말에 사람들이 더 흥미를 느낄까요? 데이터 과학은 통계학의 엄격함과 난해함을 일부 포기하는 대신 현실 문제에 대한 접근성을 키운 세속화된 통계학이라고 할 수 있습니다.
한편, 데이터 과학은 컴퓨터 공학의 영향을 크게 받았습니다. 컴퓨팅 인프라가 발달하고 데이터의 크기가 커지면서, 현실 세계의 문제를 통계를 통해 해결하는 데에 소프트웨어 엔지니어들의 역할이 점점 더 커졌습니다. 이들은 특유의 자유분방함을 한껏 발휘하여 그렇지 않아도 세속화된 통계학을 더 이상 통계학이라 부르기 어려운 어떤 것으로 바꿔버리고 맙니다. 많은 통계학자들이 개탄했지만, 이때부터 데이터 과학은 통계학과는 구별되는 특징을 가지기 시작하여, 1) 소프트웨어 기술을 전폭적으로 활용하기 시작했으며, 2) 기술의 발전이 논문의 형태를 벗어나 오픈 소스 소프트웨어의 형태로 축적되기 시작했습니다. 이러한 특징은 통계학을 전공하지 않은 수많은 소프트웨어 엔지니어들과 해커들을 세속의 통계학자들로 바꿔놓았습니다.
이렇게 저변을 넓힌 세속의 통계학은 기업에서 데이터를 관리하던 사람들의 눈에 띄게 됩니다. 그들은 이 새로운 기술과 인력을 이용하여 회사의 데이터를 더 공격적으로 활용할 수 있다는 것을 알게 됩니다. 팀도 키우고 승진도 할 수 있겠지요. 이들은 기존에 접근하지 못했던 문제들에도 과감하게 접근했고, 해결책을 이끌어내기도 하였습니다. 통계학적 검증에 대해서는 물음표가 따라 붙었지만, 사업적인 결과가 나오는 이상 큰 문제는 없었습니다. 이들은 데이터에서 더 많은 것을 이끌어내기 위해 끊임없이 새로운 문제를 제기하였습니다. “우리 데이터로 이런 것도 할 수 있을 것 같지 않아?” 이들이 바로 소위 말하는 ‘분석가’ 또는 데이터 분석 팀의 부장들입니다.
앞에서 언급한 데이터 과학 기술의 세가지 기원을 잘 표현해 주는 그림이 2013년도에 콘웨이(Drew Conway)가 그린 벤 다이어그램[1] 입니다. 이 그림은 데이터 과학 세계에서 가장 유명한 그림 중의 하나이며, 통계학자, 소프트웨어 엔지니어, 분석 팀 부장들이 가진 기술이 어떤 식으로 엮여서 데이터 과학을 탄생시키게 되었는지 잘 보여주고 있습니다.
[그림 1] 데이터 과학 벤-다이어그램
콘웨이 벤-다이어 그램의 탁월한 점 중 하나는, 머신 러닝(Machine Learning) 기술 군을 소프트웨어 공학(Hacking Skills)과 통계학이 겹치는 지점으로 표시한 것입니다. 머신 러닝은 통계학과 마찬가지로 데이터를 설명하고, 예측하는 다양한 방법을 제공하는 학문 분야로, 응용하는 입장에서는 두 분야 기술은 사실상 차이가 없습니다. 통계 모델이나 머신 러닝 모델이나, 오픈 소스로 다 구현되어 있기는 마찬가지이고, 이용하는 방법도 비슷하다는 이야기입니다. 그러나, 두 기술의 뿌리는 크게 다릅니다. 통계 모델들이 100년 이상의 역사를 가진 것들이 많은데 비해, 머신 러닝 모델들은 훨씬 최근에 소프트웨어 공학의 발달에 힘입어 개발된 것들이 많습니다. 머신 러닝 모델들의 통계적 엄밀함은 보통 통계 모델보다 떨어집니다만, 데이터만 잘 주어지면 통계 모델보다 높은 성능을 냅니다. 머신 러닝 기술을 적극 활용한다는 점이 데이터 과학이 통계학과 다른 점 중 하나입니다.
머신 러닝은 한 때 데이터 과학 전체를 대표하는 기술 용어였습니다. 이 단어는 프리젠테이션 자료에 넣으면 무조건 심의를 통과할 수 있게 해주는 ‘마법의 키워드’였습니다. 지금은 머신 러닝이라는 용어가 그 정도의 지위를 누리고 있지는 못합니다. 현재 마법의 키워드 자리는 ‘BERT’, ‘GPT’ 같은 최신 딥 러닝(심층 신경망) 약어들이 차지하고 있습니다. 사실 이들은 예전에는 전부 머신 러닝의 한 분야였는데, 성장하여 그렇게 된 것입니다. 이렇게 딥 러닝, AI 관련 분야가 거의 독립적인 분야로 취급을 받으면서, 머신 러닝 모델들 중에서 딥 러닝을 제외한 나머지 모델들을 통칭하기 위해 셸로우 러닝(Shallow Learning) 모델이라는 용어가 쓰이기도 합니다.
데이터 과학은 통계학에서 갈라져 나와 통계학과는 다른 무엇이 되었습니다만, 그 경계는 사실 분명하지 않습니다. 데이터 과학이 통계적 엄밀함을 추구하기 위한 제약들을 어느 정도 무시한다고 하지만, 통계를 잘 아는 것은 언제나 데이터 과학 업무에 도움이 됩니다.
통계와 데이터 과학의 차이란 어떤 것인가에 대해서는 다음 소개하는 두 가지 자료로 살짝 감만 잡아 보시기 바랍니다. 이 자료들은 좀 오래된 것이긴 하지만, 통계학과 데이터 과학의 차이를 구별하는데 있어서는 아직 유효합니다.
첫번째 자료는 XKCD 만화[2]입니다.
[그림 2] 언제 통계를 쓰고 언제 머신 러닝을 쓸 것인가?
“여차하면 데이터의 특성을 통계적으로 검정하지 않고, 머신 러닝 모델을 곧장 수립하여 여러가지 질문에 답을 낼 수 있다”는 것이 데이터 과학이 통계학과 구분되는 지점입니다. 이 만화는 데이터 과학의 그런 특성을 잘 보여주고 있습니다. 데이터 과학은 주어진 문제를 해결하기 위해 통계학, 통계 분석의 한 갈래인 기술 분석 그리고 머신 러닝 모델링을 자유롭게 선택할 수 있습니다.
두번째 자료는 표입니다.
[그림 3] 통계학자와 데이터 과학자 비교
이 표는 2013년도에 Revolution Analytics사 블로그에 실렸던 것[3]으로, 통계학과 데이터 과학의 특성을 비교한 것입니다. 통계학자의 자학적인 농담에 다분히 과장도 섞여 있습니다만, 이 표가 보여주는 대체적인 방향성은 맞다 할 수 있습니다. 예외는 있겠지만 전반적으로 데이터 과학은 통계학보다 더 크고 지저분한 데이터를 다루며, 더 공격적으로 영업하며, 더 폭넓게 소프트웨어 기술을 활용하며, 결과만 나오면 왜 그런지는 따지지 않는 편이라고 볼 수 있습니다.