본문 바로가기
RESEARCH/Book

Chapter 1. Introduction

by BLADEBONE 2010. 6. 1.

이 책의 첫 장에서는 데이터 마이닝에 대한 정의와 도전 과제 그리고 간단한 형태의 데이터 마이닝 활용의 예를 보여주고 있다.

1.1 What Is Data Mining?


데이터 마이닝이란 대규모 데이터로부터 유용한 정보를 자동화된 방법으로 탐색하는 과정을 의미하며, 지식 발견(KDD, Knowledge Discovery in Database) 과정의 한 단계로서 중요한 역할을 하고 있다.


데이터 마이닝 정의에 대한 참고:
2010/05/31 - [Data Mining/Book] - 데이터 마이닝 (Data Mining) ???


그렇다면 지식 발견은 또 무엇이냐는 물음이 생긴다. 지식 발견이란 가공되지 않은 데이터(Raw Data)로부터 유용한 정보를 획득하는 일련의 과정을 일컫는 것으로 아래 그림과 같이 표현된다.


(그림 출처 : Introduction to Data Mining[각주:1])


그림에서 입력 데이터는 다양한 형태를 가질 수 있는데 이는 이후 2장에서 자세히 다룰 예정이다.

데이터 전처리(Data Preprocessing)의 주된 목적은 입력 데이터를 데이터 마이닝 단계에서 분석하기에 적절한 형태로 가공하는 것이다. 일반적으로 이 단계에서는 다양한 정보원으로부터 획득되는  데이터의 규합, 데이터에 포함된 잡음(noise)이나 중복된 자료(duplicate observations)의 제거 또는 데이터나 마이닝에 적절한 특징 정보 또는 데이터들을 선택하는 과정 등이 포함된다. 실제 데이터 마이닝에 있어 데이터 전처리 과정은 가장 많은 시간이 소요되고, 손이 많이 가는 작업으로 데이터 전처리를 어떻게 하느냐에 따라 최종 분석 결과에도 큰 영향을 미치게 되는 중요한 과정이다. 데이터 전처리 방법으로는 특징 추출(Feature Extraction) 또는 특징 선택(Feature Selection)을 통한 차원 축소(Dimensionality reduction) 방법과 정규화(Normalization) 방법 등이 사용된다.

다음으로 후처리(Postprocessing) 과정은 데이터 마이닝을 통해 획득한 결과를 응용에 맞게 재가공하는 단계로, 대표적인 방법으로 시각화(VIsualization)와 같이 데이터 마이닝 분석 결과를 그래프를 이용하여 시각화 함으로써 해석이 용이하게 할 수 있다.



1.2 Motivating Challenges

 

  • Scalability: 기술의 발달로 인해 데이터 집합(data sets)의 크기는 날로 증가 하고 있으며, 동일한 데이터 마이닝 알고리즘이라도 데이터의 크기에 따라 그 수행여부가 달라질 수 있다. 그러므로 데이터 마이닝 알고리즘을 구현하는데 있어 scalability는 중요한 고려사항이다. 실제로 데이터의 개수 또는 특징의 개수에 따라 이론적으로는 가능하지만 실제 연산이 불가능한 경우가 발생할 수도 있다. 예를 들어 베이지안 네트워크(Bayesian Network)의 구조(Structure)를 탐색하는 알고리즘에서는 그래프(Graph) 상의 노드(Node) 개수가 증가함에 따라 연산량이 함께 증가하게 되는데, 노드 개수가 100 여 개가 넘어가게 되면 세계에서 가장 빠른 슈퍼 컴퓨터를 이용하여 계산하더라도 우주의 시작인 빅뱅 시점부터 계산하더라도 계산이 끝나지 않는다고 한다. 최근에는 이러한 확장성의 문제를 개선하기 위한 방법으로 병렬 처리(Parallel procession) 또는 분산 알고리증(Distributed algorithms)의 적용이 시도되고 있다.

 

  • High Dimensionality: 근래 접하는 데이터 중에는 데이터의 차원 또는 속성이 수백에서 수천에 이르는 데이터들이 존재한다. 대표적으로 생물정보학(Bioinformatics)의 경우 대개 수천 개의 특징으로 구성되어 있다. 전통적인 데이터 분석 기법은 저차원의 데이터에 대한 분석을 위해 고안된 것으로 고차원의 데이터를 분석하기 위해서는 이에 적합한 데이터 분석 방법이 필요하다. 더불어 차원이 증가함에 따라 연산의 복잡도 또한 증가됨으로 이를 감안한 데이터 마이닝 알고리즘의 개발이 필요하다. 예를 들어 일반적인 거리(Distance) 측정 방법인 유클리디안 거리(Euclidean distance)의 경우 저차원에서는 연산이 용이하며 계산된 거리가 유효한 의미를 가지지만, 차원이 증가함에 따라 연산량이 증가되고 계산된 유클리디안 거리 또한 분석에서 적절한 의미를 가지고 사용되기 어려운 문제점이 있다.

  • Heterogeneous and Complex data: 전통적인 데이터 마이닝 기법은 동일한 형태를 가지는 특징 정보로 구성된 데이터를 대상으로 하였지만, 최근 여러 분야에서 다루어지고 있는 데이터는 형태가 다른 이종(Heterogenuous)의 데이터로 구성되는 경우가 많다. 예를 들어 웹 페이지(Web page)와 같은 정보는 구조화된 텍스트(text)와 하이퍼링크(hyperlink)로 구성되어 있으며, 기후 데이터의 경우 시간에 따른 온도와 기압, 습도 등의 특징 정보로 구성되어 있다. 이렇게 형태가 다른 특징 정보로 구성된 데이터를 대상으로 데이터 마이닝을 수행하기 위해서는 이러한 특징 정보의 차이를 고려할 수 있는 기법의 고안이 필요하다.

  • Data ownership and Distribution: 최근에는 데이터들이 하나의 저장소가 아닌 지리적으로 분산된 형태로 존재하는 경우가 많다. 예를 들어 A라는 브랜드의 프랜차이즈 편의점이 전국에 분산되어 있다고 하자. 그리고 이 프랜차이즈에서 판매 정보를 분석하여 시간 및 지역에 따라 많이 판매되는 제품이 무엇인지를 분석하고자 한다면 실시간으로 판매 정보를 규합하고 이를 활용하여야 한다. 이러한 경우 분석을 위해서는 시간 별로 각 지점에서의 판매 정보를 규합하고 분석할 수 있는 방법이 필요하다.

  • Non-traditional Analysis: 전통적인 통계학적 접근 방법은 ‘가설(Hypothesis)과 검정(Test)’에 기반한 방법으로, 현상을 분석하기 위해 특정 모델을 기반으로 가설을 세우고 데이터를 통하여 이를 검정함으로써 분석을 수행하였다. 이러한 방법은 매우 노동 집약적인 전역 탐색(Exhaustive search) 방법으로 쉽게 말해 사람이 가능한 모든 경우의 가설에 대해 검정을 하고 그 중 제일 좋은 모델을 선택하겠다는 방법이다. 데이터 마이닝에서는 이러한 가설을 세우고 검정하는 과정을 자동화된 방법으로 탐색하고자 방법이 시도되고 있으며, 더불어 앞서 언급된 이종의 데이터와 같은 새로운 형태의 데이터에도 적용할 수 있는 방법의 고안이 필요하다.


1.3 The Origins of Data Mining

데이터 마이닝에 사용되는 기법은 완전히 새롭게 만들어진 것보다는 통계학(Statistics), 인공지능(AI), 기계학습(Machine Learning), 형태인식(Pattern Recognition)과 같은 기존의 분야에서 사용된 방법들이다. 아래 그림과 같이 데이터 마이닝은 다양한 분야가 접목되어 이루어지는 것으로 최근에는 대규모 데이터의 처리를 위해 데이터 베이스, 병렬 및 분산 처리 기술까지도 데이터 마이닝의 일부를 이루고 있다.

(그림 출처 : Introduction to Data Mining)

 


1.4 Data Mining Task


데이터 마이닝의 주된 활용은 크게 2가지 형태로 구분할 수 있다.

  • Predictive: 예측의 목적은 알고 있는 특징 정보들을 활용하여 임의의 특징 정보의 값을 예측하는 것으로 알고자 하는 특징 정보를 목표(Target) 또는 종속변수(Dependent variable)이라 하고, 알고 있는 정보들을 설명변수(Explanatory) 또는 독립변수(Independent variable)이라 한다.

  • Descriptive: 주어진 데이터를 기반으로 분석을 통해 특정한 패턴을 기술하는 것으로, 특정한 패턴에는 데이터의 샘플 또는 특징 정보간의 상관관계(Correlation), 추세(Trend), 군집(Cluster), 예외(Anomalies) 등이 있다. 대개의 경우 데이터 마이닝을 통해 획득된 결과를 후처리 과정을 통해 이해하기 쉬운 형태로 가공함으로써 기술을 용이하게 한다.


아래 그림은 데이터 마이닝을 활용한 대표적인 분석의 결과를 나타내고 있다.

 

(그림 출처 : Introduction to Data Mining)


    • Predictive modeling: 독립변수로 이루어진 함수의 형태로 종속변수를 모델링하고 이를 기반으로 새로운 입력에 대해 종속변수의 값을 예측하는 것으로 목표가 되는 종속변수가 이산형(Discrete)인 경우 분류(Classification) 분석, 연속형(Continuous)인 경우에는 회귀(Regression) 분석이 된다

    • Association analysis: 연관 분석의 목적은 데이터 내에 존재하는 특징(Attribute or Feature) 또는 샘플(Sample or Data object) 사이의 연관 관계를 찾아내는 것으로 위 그림에서는 상점에서 판매되는 상품 중 우유와 기저귀 사이의 연관 관계가 있음을 나타내고 있다.

    • Cluster analysis: 군집 분석은 관찰된 데이터의 유사성(Similarity)을 중심으로 몇 개의 그룹으로 나누는 것으로, 앞서의 predictive modeling과 달리 분류에 대한 정보를 가지고 있지 않은 데이터를 대상으로 한다. 즉 임의의 전체 데이터 집합에 대해 군집 분석을 수행함으로써 데이터에 대한 이해를 높일 수가 있다. 또한 데이터의 수가 너무 많아 각 데이터를 일일이 분류하는 것이 어려울 경우 군집 분석을 통해 쉽게 수행할 수도 있다.

    • Anomaly detection: 에외 검출은 대부분의 유사한 데이터들 사이에서 이들과 다른 특정한 패턴을 가지는 예외(Anomaly) 또는 이상치(Outlier)를 찾는 것으로 네트워크 상의 침입자 감시, 카드 사기 등의 예외적인 패턴을 찾는데 사용되는 분석방법이다.

덧글,


 

  1. Pang-Ning Tan et al, Introdcution to Data Mining, Addison-Wesley, 2005 [본문으로]
반응형

'RESEARCH > Book' 카테고리의 다른 글

Chapter 2. Data (2) 데이터 품질  (0) 2010.06.11
Chapter 2. Data (1) 데이터의 종류  (4) 2010.06.08
데이터 마이닝 (Data Mining) ???  (0) 2010.05.31

댓글