내가 생각하는 빅데이터

수학과 친구들과 밥먹다가 "그래서 빅데이터가 뭐야?"라는 질문을 받았다.
당시에는 웃으면서 "니 컴퓨터로 분석을 못 할 정도로 큰 데이터"라고 간단하게 말했다. 그런데 좀 깊게 생각해보면 꼭 그것 만은 아닌 것 같다.

빅데이터를 통상적으로 생각해보면 

- 이미지
- 동영상
- 자율주행차(테슬라!)
- EHR(전자건강기록) 
- Genomics
- 트위터


가 생각이 난다.
그리고 이들의 공통적 특징은 Number of observations (N)보다 Number of covariates (P)가 많은 상태이다. 이 말인 즉슨, 연립다항방정식을 풀 때 x와 y라는 변수가 있다면 이 x와 y의 값을 알기 위해서는 적어도 두 개의 방정식이 필요한데, 하나의 방정식 밖에 없는 상황인 것이다. 이러한 N<P 인 상황에서 그동안 사용해왔던 방법들을 통해서는 x와 y의 값을 알지 못한다.

Genomics를 예로 들어보면, 만약 어떤 유전자의 돌연여부에 따라 암 위험률을 예측하는 모델을 개발한다고 하자. 
그러면 인간에게는 약 20000개의 유전자가 있고 이를 x1, x2, ... x20000 의 변수라고 생각한다면, 이 2만개의 변수의 영향력을 파악하기 위해서는 적어도 20000개의 방정식 (Observation)이 필요하다. 그런데 20,000개의 샘플을 얻는 것은 너무너무 비싸고 따라서 거의 불가능하다! 하지만 이러한 상황에서도 최대한의 의미있는 정보를 이끌어낼 수 있는 방법이 개발되어 있고, 그 방법론을 통계학에서는 High dimensional inference라고 한다.

그럼 트위터는? 엄청나게 데이터가 많은데? 라고 생각할 수 있다. 그런데 잘 생각해보면 트위터는 140자 이내의 "글"을 쓴다. 이 글의 조합이라는 건 알파벳으로 생각해보면 26^140의 가짓수가 있으므로 아무리 트윗수가 많아도 number of covariates가 많을 수 밖에 없다. 따라서 이를 분석하기 위해서 Natural Language Processing이라는 방법론이 생겨나게 된 것이다.

이렇듯, 빅데이터를 분석하는 방법은 기존의 데이터들과는 다르다. 그리고 이를 해결하기 위해서 컴퓨터공학, 통계학에서는 최근 굉장한 학문적 성과를 이루어 냈다. 
예를 들면

- Computer vision : 이미지, 동영상, 자율주행차
- NLP : EHR, 트위터
- High dimensional inference : Genomics

이런 것이 있다.


댓글