[빅데이터 분석 방법론의 개요] 


분석은 얽혀 있거나 복잡한 것을 풀어서 개별적인 요소나 성질로 나누는 것입니다. 분석이란 새로운 개념이 아니며  이미 오래 전부터 여러 영역에서 효과적으로 활용해왔죠. 여러가지 의사결정이나 비즈니스 성과 향상에 도움을  줄 수 있는 정보나 지식을 추출하기 위해서는 빅데이터 안에 숨겨져 있는 정보를 효과적으로 분석할 방법을  선택해야 합니다. 특히나 비즈니스에서는 다양하고 많은 분석을 선택하고 수행합니다. 최고의 이익을 낼 수 있는  의사결정을 위함인데요. 정보가 많아질수록 선택의 폭은 무궁무진해지고 있어 점점 다양한 분야에서 빅데이터를  분석하고 있습니다. 목적과 상황에 맞게 적절한 분석방법을 선택하는 것이 매우 중요한데요. 정형 및 비정형의  다양한 형태를 가지는 빅데이터를 분석할 수 있는 방법론은 많지만, 전체적으로 빅데이터를 어떻게 분석할 것인가를  잘 결정해서 분석할 필요가 있습니다.





1. 빅데이터분석


빅데이터 분석이란 대량의 데이터로부터 숨겨진 패턴과  알려지지 않은 정보를 찾아내기 위한 과정입니다. 빅데이터 분석의 목적은 데이터 과학자들에 의해 분석된 정보를  토대로 각 분야의 의사결정을 수행하는 것입니다. 빅데이터 분석은 개인이나 기업 등에서 자료를 토대로 어떠한  의사결정을 할 때에 중요한 정보로써 사용되기 때문에 최선의 대안을 선택할 수 있도록 근거를 제시하는 중요한  역할을 합니다. 그래서 불확실성이 높고 의사결정이 초래하는 파급효과가 큰 의사결정일수록 실제 데이터 분석을  바탕으로 의사결정을 해야 합니다. 실제로 비즈니스 전략으로써 많은 기업에서 본능적인 비즈니스 감각보다는  빅데이터를 활용하여 주요 의사결정을 내리고 있습니다. 효과적인 빅데이터 분석을 위해서 일반적으로 빅데이터 분석 플 랫폼을 구축하는 경우가 많습니다. 빅데이터 분석은 더 짧은 시간 안에 보다 많은 정보를 빅데이터로부터 추출하는  것을 목표로 합니다. 빅데이터 분석을 위해 크게 데이터 마이닝과 예측 분석 등등이 고려되며, 관련기술로는 NoSQL,  데이터베이스, 하둡과 맵리듀스 등이 있습니다. 데이터 마이닝이란 대용량의 데이터베이스에 저장된 데이터에 숨겨진  중요한 정보와 지식을 추출하는 기술입니다. 예측 분석이란 현황 정보 대신 예측 정보를 제공할 수 있는 분석을  의미합니다.  빅데이터 분석이 가능하려면 기본적으로 NoSQL과 데이터베이스와 같은 빅데이터 저장기술과 하둡 및  맵리듀스와 같은 빅데이터를 분석하기 위해  필요한 처리를 수행하는 기술들이 필요한데 이러한 기술들을  빅데이터 분석 관련 기술이라 부르겠습니다.


 

빅데이터분석진행

 빅데이터 시대에 접어들며 데이터를 보다 효율적으로 정확하게 분석하고 비즈니스 등의 영역에 적용하려는 노력이  꾸준히 진행되고 있습니다. 분석은 새로운 개념이 아니며 이미 오래 전부터 여러 영역에서 효과적으로 활용해온  기술입니다. 일반적으로 분석은 단계적으로 진행되는데, 예를 들어, 마케팅 조사에서의 분석은 마케팅 조사 연구의  목적, 조사 연구 설계, 표본 설계, 자료 수집, 자료 분석, 결과 제시 등의 일반적인 단계로 진행됩니다.  마케팅 조사 연구의 목적이 시장 조사인지 아니면 고객의 요구사항 파악인지 분명히 하고 목적에 맞게 어떻게 조사를  하고 어떤 데이터를 확보하고 어떻게 분석할지를 연구설계를 해야 합니다. 조사 데이터 수집 방법과 관련하여  데이터 샘플을 어떻게 취할 것인지 표본을 설계한 후 자료 수집을 합니다. 자료 수집후 통계적 분석 방법이나  과학적인 분석방법을 사용하여 자료를 분석하고 이후 결과를 제시합니다. 





2. 비지니스에서의 분석 수행 과정


 

분석 수행단계(Forrester)

시장 조사기관인 포레스터 리서치는 비즈니스에서의 분석을 수행하는 과정이 다음과 같은 단계를 거친다고  하였습니다. 첫 번째는 문제인식입니다. 문제가 무엇인지, 왜 이 문제를 해결해야 하는지, 문제 해결을 통해 무엇을  달성할 것인지를 명확히 하는 단계이고, 두 번째는 관련 연구 조사 단계입니다. 관련 연구 조사 단계에서는 문제와  직간접적으로 관련된 지식을 잡지나 책, 보고서, 논문 등과 같은 각종 문헌을 조사하면 문제를 더욱 명확히 할 수  있을 뿐 만 아니라 문제와 관련된 주요 요소 즉, 변수들을 파악할 수 있는 단계입니다. 세 번째는 모형화단계입니다.  변수 선정 단계라고도 하는데요. 모형은 문제 즉 연구 대상를 의도적으로 단순화한 것을 말하며, 모형화는 문제와  본질적으로 관련된 변수만을 추려서 재구성하는 단계입니다. 네 번째는 자료 수집 단계입니다. 변수 측정 단계라고도  합니다. 이 단계에서는 인식된 문제가 모형화를 통하여 주요 변수로 재구성되고 측정이라는 과정을 거치면서 자료가  됩니다. 1차 자료는 조사자가 관찰, 설문조사, 실험을 통하여 직접 자료를 수집하는 것이며, 2차 자료는 다른 사람에  의해 이미 수집, 정리되어 있는 자료입니다. 다섯 번째는 자료분석단계입니다. 자료 분석 단계에서는 나열된  숫자에서 변수 간의 규칙적인 패턴, 즉 변수간의 관련성을 파악합니다. 마지막으로 결과 제시 단계에서는 자료 분석   결과가 의미하는 바를 해석하여 의사결정자에게 구체적인 조언을 하는 단계입니다. 이와 같이, 비즈니스에서의  분석은 단계적 과정을 거쳐 수행되는 것으로, 단계적인 과정 수행을 충실하게 함으로써 좋은 분석을 할 수  있습니다. 



빅데이터 분석 분류

빅데이터 분석은 비즈니스 분석과 고급 분석으로 분류할 수 있습니다. 비즈니스 분석은 현재의 현상과 결과적인  관점을 제시하는데 초점을 두는 것으로 기업의 품질부서에서 현재의 품질수준 실적에 대해 집중적으로 분석할 경우가  이에 해당합니다. 고급 분석은 대용량의 데이터로부터 숨겨진 패턴을 발견하고 상황을 예측하는 것입니다.  그리고 비즈니스 혹은 그 밖의 상황을 예측하고 효율적인 의사결정을 지원하기 위해 구조화 및 비구조화된 복잡한  형태의 데이터 요인들 간의 상관관계 확인과 의미 있는 데이터의 패턴을 식별하고 예측하기 위한 모든 기법과  기술들을 포괄합니다. 더불어 미래의 품질 수준이 어떻게 될지 예측할 수 있는 모델에 근거하여 예측하는 것도 이에  해당합니다. 




3. 빅데이터분석 도구


 

R 프로그래밍언어

빅데이터 분석 도구로서 R 프로그래밍 언어, 빅쿼리, 프레스토 등이 활용되는데요. 먼저 R 프로그래밍 언어에 대하여  알아보겠습니다. R 프로그래밍 언어는 오픈소스 프로젝트로 통계 계산 및 시각화를 위한 언어 및 개발 환경을  제공합니다. 이를 통해 기본적인 통계 기법부터 모델링, 최신 데이터 마이닝 기법까지 구현이 가능합니다.  그리고 R 프로그래밍 언어는 통계적 컴퓨팅 언어로 다양한 통계 분석에 용이합니다. 현재 R 프로그래밍 언어를  이용하여 다양한 빅데이터 분석 및 예측 분석 등을 포함한 고급 분석 기술들이 연구 및 개발되고 있습니다.  R 프로그래밍 언어의 장점 중에 하나는 사용자가 제작한 패키지를 추가하여 기능을 확장할 수 있다는 것입니다.  핵심적인 패키지는 R 프로그래밍 언어와 함께 설치되며, CRAN을 통해 700개 이상의 다양한 기능을 가지는 패키지를  내려 받을 수 있습니다.

 CRAN은 the Comprehensive R Archive Network의 줄인말입니다. R 프로그래밍 언어의 또다른  강점은 그래픽 기능으로 수학 기호를 포함할 수 있는 출판물 수준의 그래프를 제공한다는 것입니다



빅쿼리(BigQuery)

빅쿼리는 구글의 대용량 데이터를 처리할 수 있도록 개발된 쌍방향 서비스입니다. 사용자 혹은 개발자 등은 SQL과  같은 익숙한 쿼리문 등을 이용해 인사이트를 전달할 수 있습니다. 일반적으로 SQL문 이라고도 불리는 쿼리문이  작성됩니다. 여기서, 쿼리문이란 데이터베이스에 저장된 값을 불러내기 위한 것입니다. 절차적 언어로 작성  프로그램 문장을 말하는 거죠. SQL은 Structured Query Language 의 약자로서 구조화된 절차적인 데이터베이스  언어입니다. 빅쿼리는 어떻게 이용할까요? 빅쿼리는 먼저 이용자가 데이터 세트를 구글 시스템에 업로드 하고,  빅쿼리 API를 이용하여 이에 대한 쿼리를 던지는 방식으로 이용할 수 있습니다. 그리고 빅쿼리는 구글이 자체  데이터센터가 없는 기업도 쉽게 데이터를 분석할 수 있는 환경을 만들기 위해 출시한 것이었습니다. 빅쿼리를  이용하면 웹 광고나 실시간 관리 시스템, 온라인 게임의 데이터 현황을 쉽게 관리할 수 있게 되는데요. 예를 들어  제약회사는 빅쿼리를 이용하면 전세계 판매량과 광고 데이터를 바탕으로 일일 마케팅 최적화 전략을 세울 수 있게  되고, 사용자 클릭을 바탕으로 제품 권고 사항을 만드는 일도 쉬워진다고 합니다. 




프레스토(presto)

마지막으로 프레스토는 페이스북에서 개발한 빅데이터 분석 도구로써 하둡을 위한 SQL 처리 엔진입니다. 페이스북은 300페타바이트에 달하는  엄청난 내부 데이터를 분석하려고 프레스토를 만들었습니다. 이는 데이터 분석가가 기존의 SQL 언어로 대용량의  데이터를 대화형 분석을 수행할 수 있도록 해줍니다. 페이스북은 이 도구가 기존에 많이 쓰는 하이브/맵리듀스보다  CPU 효율성과 대기 시간이 10배나 빠르다고 설명했습니다.






[플랫폼을 활용한 빅데이터 분석방법론]


빅데이터 분석 플랫폼을 활용하여 수집 및 저장 된 데이터를  분석하여 서비스를 개발하고 통찰력을 끌어내는 작업을 수행하는데요. 여기서 말하는 통찰력이란 주어진  데이터 분석을 통해 전체적인 상황을 한번에 파악할 수 있는 능력을 의미합니다. 이를 위해, 우선 분석 계획을  수립하고, 분석 환경을 구축한 후 분석 서비스를 운영하는 단계로 진행합니다. 그럼 각 단계별로 살펴보겠습니다. 




1. 빅데이터 분석 플랫폼 활용


먼저 분석 계획 수립 단계입니다. 이 단계에서는 빅데이터를 분석하기 전에 분석결과를 통해 해결하고자 하는 문제를  명확히 정의하고 분석절차, 기법 등을 포함한 세부 시나리오를 마련해야 합니다. 그리고 분석에 필요한 인프라 구축  조건 등 분석환경을 조사하여 자체 구축 및 외부 인프라 활용여부를 결정해야 합니다. 자체구축의 경우에는  빅데이터 분석과 활용을 위해 분석 시스템과 운영환경을 기관 내에 구축하는 방식인데요. 내부 데이터의 관리 정책과  보안문제로 외부 서비스를 활용하기 어려운 경우나 분석 요구사항을 외부 서비스 기관에서 지원하지 못하는 경우에  대해 적절한 대응책이 필요합니다. 외부활용의 경우는 외부 분석업체의 분석 서비스를 활용하는 방식으로 외부 분석  시스템의 기능과 분석 품질이 활용 목표 수준에 부합할 경우에 대한 대응책이 필요합니다. 세부 추진 계획을 위해  분석 목적, 분석 방법론, 분석 시나리오 작성, 분석 인프라 구축 방식 및 운영예산 등을 수립해야 합니다.  분석 환경구축 단계에서는 하드웨어와 소프트웨어를 구축해야 합니다. 즉, 빅데이터 수용 용량 및 분석작업에 대한  부하 등을 감안하여 하드웨어 인프라를 구축해야 하고, 분석에 필요한 수집, 관리, 분석, 이용자 환경 등 관련한  소프트웨어를 구축해야 합니다





2. 데이터 분석에 활용되는 기법


분석용도에 따른 데이터 분석기법


(1) 통계적분석

데이터 분석에 활용되는 기법은 분석용도에 따라서 여러 가지가 활용 되고 있습니다. 먼저 통계적 분석 은 전통적인  분석 방법으로 주로 수치형 데이터에 대하여 확률을 기반으로 어떤 현상의 추정, 예측을 검정하는 기법으로  기술통계량, 상관분석, 회귀분석, 분산분석, 주성분분석 등이 대표적인 통계적 분석 기법입니다. 각 분석을 좀 더  자세히 알아보겠습니다. 


기술통계량 은 대표적으로 산술평균, 중앙값, 최빈값을 포함하는 평균, 분산, 표준편차 등을  구하는 것입니다. 이러한 값들을 통해 전체 데이터 그룹이 주로 어디에 위치하고 있으며 이를 중심으로 얼마나  산포를 가지는지를 확인할 수 있습니다. 평균이란  데이터 집합의 중심적인 경향을 표현하는 값으로 전체 데이터의  합을 전체 데이터 개수로 나누어 산출합니다. 분산은 평균을 중심으로 각각의 데이터 들의 편차를 구하고 편차의  제곱을 모두 더한 후 전체 데이터 개수에서 하나를 뺀 값으로 나눈 값입니다. 표준편차는 분산 값의 제곱근으로  산포를 의미합니다. 


상관분석 은 두 변수간에 어떤 선형적 관계를 갖고 있는지를 분석하는 방법입니다. 즉, 하나의  변수가 증가할 때 비례 또는 반비례적으로 다른 한 변수가 증가 또는 감소하는 정도를 규명하는 것입니다.  이 방법으로 분석하면 서로 관계를 가지는 변수들을 찾아 낼 수 있습니다. 


회귀분석 은 연속형 변수들에 대해 독립변수와 종속변수 사이의 상관관계에 따른 수학적 관계식을 구하여 어떤  독립변수가 주어졌을 때 이에 따른 종속변수를 예측하는 방법입니다. 회귀분석을 통해 종속변수 값을 예측할 수 있는  수학적 모델식을 구성하고 이를 통해 특정한 독립변수의 값을 가지는 경우에 종속변수의 값을 예측할 수 있습니다.   여기서 독립변수는 종속변수에 영향을 주는 요인을 가지는 변수이고 종속변수는 독립변수의 값에 의해  종속적으로  영향을 받는 변수입니다. 연속형 변수는 독립변수와 종속변수가 일반적으로 연속형의 값을 가지는 경우입니다. 


분산분석은 3개 이상의 집단에 있어서 평균치 차이가 존재하는지를 통계적으로 검정하고자 할 때 사용할 수 있는  분석방법입니다. 분산분석 은 통계분포 중 F분포를 이용하여 집단간 평균치 차이가 있는지를 가설검정 합니다.  F분포란 두 개 이상 다수의 집단을 비교하고자 할 때 집단 내의 분산, 총평균과 각 집단의 평균의 차이에 의해 생긴  집단 간 분산의 비교를 통해 만들어진 것입니다. 분산분석을 통해 다수의 집단에 있어서 평균치가 차이가 있는지  유의성을 판정할 수 있습니다.


주성분분석 은 다양한 변수들에 대해 분석하는 다변량(Multivariate)  분석으로 많은 변수들로부터 몇 개의 주성분들을 추출하는 방법입니다. 따라서 주성분 관리를 통해 많은 변수들을  관리할 수 있는 관리의 로드가 줄어들 수 있습니다. 



(2) 데이터마이닝

데이터 마이닝은 대용량 데이터로부터 패턴인식, 인공지능, 고급 통계분석 기법 등을 이용하여 숨겨져 있는  데이터간의 상호 관련성 및 유용한 정보를 추출하는 기술입니다. 데이터 마이닝은 기존 데이터베이스에  마이닝 기술을 적용하여 이들 데이터 간에 숨은 의미 있는 관계성을 다양한 방법으로 발견한 후 이를 현실에  효과적으로 적용하는 방법론으로 사용됩니다.  



(3) 텍스트 마이닝

텍스트 마이닝은 텍스트 기반의 데이터로부터 새로운 정보를 발견할 수 있도록 정보 검색, 추출, 체계화, 분석을 모두 포함하는 Text-processing 기술 및 처리 과정입니다. 텍스트 내에 존재하는 단어의 등장횟수 등을 평가하여 문서간의 유사성을 수치화 하는 텍스트 데이터를 분석하는 방법입니다. 다시 말해 유사 문서 분류 및 문서 내 정보 추출과 같은 결과를 산출할 수 있는 것입니다.



(4) 소셜 네트워크 분석

마지막으로 소셜 네트워크 분석은 대용량 소셜 미디어를 언어분석 기반 정보 추출로 탐지하고, 시간의 경과에 따라 유통되는 이슈의 전체  과정을 모니터링하고 향후 추이를 분석하는 기술입니다. 소셜 네트워크 연결 구조 및 연결 강도 등을 바탕으로  사용자의 명성 및 영향력을 분석하는 기술로써, 주로 마케팅을 위하여 소셜 네트워크 상에서 입소문의 중심이나  허브 역할을 하는 사용자를 찾는데 활용됩니다. 또한 수학의 그래프 이론을 이용하여 소셜 네트워크의 연결 구조와  연결 강도 등을 바탕으로 사용자의 영향력을 측정합니다. 텍스트 마이닝 기법에 의해 주로 이루어지고 있으며  확산된 내용과 함께 연결의 맥락을 파악하여 분석하는 기법입니다. 



(5) 평판 분석

텍스트 마이닝의 관련 분야로는 평판 분석(Sentiment Analysis)  혹은 오피니언 마이닝이라고 불리는 기술이  있습니다. 이러한 오피니언 마이닝은 소셜미디어 등의 정형/비정형 텍스트의 긍정(Positive), 부정(Negative),  중립(Neutral)의 선호도를 판별하는 기술로 특정 서비스 및 상품에 대한 시장규모 예측, 소비자의 반응, 입소문 분석  (Viral Analysis) 등에 활용되고 있습니다. 정확한 오피니언 마이닝을 위해서는 전문가에 의한 선호도를 나타내는  표현/단어 자원의 축적이 필요합니다. 



(6) 군집 분석

군집 분석(Cluster Analysis)은 비슷한 특성을 가진 개체를 합쳐가면서  최종적으로 유사 특성의 군(Group)을 발굴하는데 사용됩니다. 예를 들어 트위터 상에서 주로 사진/카메라에 대해  이야기하는 사용자 군이 있을 수 있고, 자동차에 대해 관심 있는 사용자 군이 이에 해당합니다. 이러한 관심사나  취미에 따른 사용자 군을 군집 분석을 통해 분류할 수 있습니다. 






'빅데이터분석개론' 카테고리의 다른 글

비즈니스 분석 (Business Analytics)  (4) 2015.12.13
비즈니스 인텔리전스 (Business Intelligence)  (8) 2015.12.13
HDFS와 MapReduce  (295) 2015.12.13
Hadoop 설치  (9) 2015.12.09
Hadoop 이해  (305) 2015.12.09