창업과 빅 데이터 <1>: 빅 데이터란 무엇인가? 그리고 무엇으로 분석하는가?
9월 11, 2013

빅 데이터는 무엇인가? 우리는 무엇을 <빅 데이터>로 규정하고 있는가? 사실 이에 대해 시원한 답을 할 수 있는 사람은 많지 않다. 지금도 “빅 데이터는 허상이다”라고 말하는 인물이 있을 정도이니, 더욱 그러하다.

사실 빅 데이터는 한국어로 풀면 <많은 자료> 내지 <용량이 큰 자료>로 풀 수 있다. 이 이야기는, 데이터베이스에 매우 많은 자료[1]를 축적하면 <빅 데이터>로 규정할 수 있다고 봐야 한다. 상황이 그러하다 보니, 자료 수가 무수히 많아지면 별 다른 의미를 지니고 있지 않은 자료도 의미가 있게 되는 웃지 못할 상황도 벌어진다고 한다 [2].

BIG-DATA_b

빅 데이터가 <많은 자료>라고 정의를 내린다면, 다음과 같은 두 가지 부류의 자료를 생각해 볼 수 있다.

빅 데이터의 자료 종류

빅 데이터의 자료 종류에는 나름대로 쉽게 정리해보면 수치형 자료와 문자형 자료가 있다. 수치형 자료는 범주형 자료와 연속형 자료가 있고, 문자형 자료는 일반적인 단어나 문장을 다룰 수 있다.

수치형 자료

수치형 자료에서 범주형 자료란 남성을 0으로, 여성을 1로 나타내는 등, 아무튼지간에 범주를 숫자로 ‘범주화’하여 나타내는 경우를 말한다. 연속형 자료는 그 외 나머지 수치들로 구성된 자료를 말한다. 고객의 수입이라든지 고객의 나이, 고객이 응답한 5점 만점 설문지 자료 등이 연속형 자료에 속한다.

문자형 자료

문자형 자료는 수치형 자료에 속하지 않는, 일반적인 문자열(알파벳, 한글, 히라가나, 가타카나 등 ‘말’을 표현하는 문자열)을 뜻한다. 문자형 자료 처리는 “자연어 처리”라고도 부르는 영역이며, 일반적으로는 모든 단어를 분해해 동시 출현 빈도를 분석하는 등의 방법이 있는 것으로 알려졌다.

빅 데이터 자료의 분석

수치형 자료는 회원 가입 자료와 구매 횟수 자료 등을 조합한 후 통계학 책을 참고하면 단기간 안에 처리할 수 있다. 다른 말로 바꾸면, 상관분석, 분산분석, 회귀분석 등의 통계 기법을 사용하면 여러 가지 조건에 맞게 자료를 처리하여 소비자의 행동을 손쉽게 예측할 수 있다. 수치형 자료는 문자형 자료에 비하면 처리가 쉬운 편이며, 창업에 써먹기엔 진입 장벽이 상대적으로 낮은 편이다. 물론 전문적으로 간다면 수치형 자료가 녹록하지 않은 부분이 있지만, 문자형 자료에 비하면 상대적으로는 편안하다. 대표적으로 SPSS, SAS, R[1] 등을 제시할 수 있다. 자료가 1만 개이든 2만 개이든 작은 컴퓨터로도 상관계수를 계산해 눈 깜짝할 새 처리하므로 큰 무리가 없다.

문자형 자료는 처리할 수 없는 것은 아니나, 수치형 자료보다 상대적으로 처리하기 녹록지 않다. 영어에 비하면 한국어는 훨씬 어려운 편이다. 그러나 사용할 수만 있으면 글에 대한 개념 네트워크를 구축할 수 있고, 중심 내용이 무엇인지 알 수 있다. 분석 절차를 개념적으로 짚으면 다음과 같다[2].

  1. 자료 수집: 분석을 원하는 대상에 대하여 몽땅 자료화한다. 통계 패키지로 R을 쓴다면 twtteR 라이브러리를 사용할 수 있고, 그 이외에도 어떤 방법을 쓰든 자료를 모아서 저장하는 방법이 있을 수 있다. 저장할 때는 한 문단 단위로 저장된다. 트위터로 예를 들면, 글 하나는 한 줄을 사용할 수 있다.
  2. 형태소 분해: ‘말의 가장 작은 단위’인 형태소를 분해한다. 일본어나 영어는 sourceforge에 KH Coder라는 프로그램을 쓰면 편리하게 이용 가능하지만 한국어 형태소를 분해하는 일은 그리 쉬운 일이 아니다. 한국어 형태소 분해를 제대로 처리하는 알고리즘은 현재 존재하지 않는 것이 현실이나, 자연언어 처리를 하는 업체 또는 R 라이브러리 중 sejong 라이브러리를 사용해 분해할 수 있다.
  3. 형태소 출현 빈도 계산: 형태소가 얼마나 자주 출현했는지 출현 빈도를 계산한다. 필자의 경험으론 모든 형태소에 대하여 출현 빈도를 계산하고 이후에 나올 형태소 간 관계 분석(상관계수)을 시행하는 것은 Intel Xeon 12vCore를 채택한 고성능 PC로 가능하지 않았기 때문에, 이 과정에서 상위 60~100위 출현 형태소로 줄이는 방법이 있다.
  4. 형태소 간 관계 분석: 여기서부터 분석 방법이 갈릴 수 있다. 단순히 많이 출현한 형태소를 크게 그림으로 제시하는 방법이 있을 수 있지만, 동시단어출현 분석방법(co-word analysis)을 사용한다면, 형태소 간 관계 그림을 도출할 수도 있을 것이다. 이를 위해서 컴퓨터는 한 줄에서 동시에 출현한 단어 간 관계를 상관계수 행렬 등으로 변환한다. 이때, 각 형태소는 수치형 자료에서 ‘변수’로 부르는 형태로 변환되며, 형태소의 수가 개라고 할 때, 의 상관 계수 행렬을 도출하게 된다.
  5. 실제 분석 및 도식화: 의 행렬을 얻고 나면 실제 분석은 수치형 자료에서 이루어지는 대로 군집분석(cluster analysis), 사회 네트워크 분석(Social Network Analysis) 등의 기법을 응용한다. 사회 네트워크 분석을 사용하면 지난 기사(기업가 정신의 민낯)처럼 단어 간 네트워크 구조를 볼 수 있다. 동시에 단어 집합의 중요성을 그림으로 직관적으로 알 수 있다. 필자는 지난 기사에서 기업가 정신 논문 약 2만 건에 수록된 16만 개의 주제어 간 관계성을 파악하여 기업가 정신이 어떤 구조로 학계에서 다루어져 왔는지 쉽게 파악할 수 있게 되었다.

 

빅 데이터는 실상은 ‘거대한 자료’이다. 나머지는 주류라기보다는 편리함을 위한 “쓰기 편한 도구”들이다. 다시 힘주어 말하지만 빅 데이터는 실제로 ‘거대한 자료’가 있어야 한다. 이 자료는 많으면 많을수록 좋고, 표본오차 또한 작아진다. 자료가 표본을 넘어, 모집단에 가까워지기 때문이다. 그러나 구슬이 서 말이라도 꿰어야 보배다. 구슬을 꿰는 것은 숙련된 통계학 지식이 필요하고, 문자형 자료인 경우에는 형태소 분석을 잘 해내야 한다.

대한민국에서 빅 데이터가 실제로 부흥하지 못하는 까닭은 아마도 형태소 분석의 문제가 존재하지 않을까 싶다. 글을 실시간으로 검색하고 분석해서 의미 있는 자료를 추출하는 데엔 통계 외에도 다른 프로그래밍 언어에 대한 이해와 대용량 자료 DB에 대한 이해(예: Hadoop)가 필요해, 개인이 구축하기에는 꽤 많은 노력이 필요하다. 그래서 빅 데이터라고 하면 Hadoop과 Cloud 환경을 먼저 떠올리지 않나 싶다. 하지만 이는 ‘지원 환경’일 뿐, 실체는 아니다.

다음 기고에서는 사치 자료를 벤처 사업에 사용하는 방법에 대하여 다루려 한다. 수치형 자료를 다루는 방법에 대한 이해가 있어야 문자형 자료를 다루는 방법에 대하여 알 수 있을 것이다.

 


[1] 기준은 없으나, 설문 자료의 경우 모집단 자료를 모으기 어려운 현실을 고민해 보았을 때, 현실적으로 1천개 이상이면 ‘크다’고 말할 수 있지 않나 생각한다. 다른 자료들은 저장 공간이 크다면 모집단에 가까운 자료를 수집할 수 있을 것으로 기대한다.

[2] 통계학에서, 일반적으로 표본 크기가 크면 의미 없던 것도 의미가 생긴다. 서점에 자신의 전공을 위한 통계학 책이 있으니 이를 구매해서 본다면 빅 데이터를 이해하는데 큰 도움을 받을 수 있다.

[3] R은 통계 전문 언어이다. http://r-project.org

[4] 아래 제시하는 방법은 언어심리학 분야에서 사용하는 방법이므로 현재 빅 데이터 업계에서 응용하는 방법과는 다소 괴리가 있을 수도 있음.

seongho
산업 및 조직심리학 전공자. 창업지원 프로그램에서 수혜 대상자를 선발하는 데 필요한 평가기준을 세우는 데 관심이 있습니다. (이메일: seongho@kw.ac.kr)

익명 댓글

avatar