Transcript [Download]
Data Mining : A First View DATA MINING - A Tutorial Based Primer 2008. 3. 20 서 진이 HPC Lab , UOS 목 차 1.1 Data Mining: A Definition 1.2 What Can Computers Learn? 1.3 Is Data Mining Appropriate for My Problem? 1.4 Expert Systems or Data Mining? 1.5 A Simple Data Mining Process Model 1.6 Why Not Simple Search? 1.7 Data Mining Applications 2 1.1 Data Mining: A Definition Data Mining 컴퓨터 학습기법을 사용하여 데이터들로부터 지식을 자동으로 분석하거나 추출하는 과정 데이터속에 감추어져있는 경향을 패턴을 찾는것이 목적 Induction-based Learning 학습되어질 개념의 세부 사례들을 관찰하여 그것을 일반화된 개념 정의를 만들어 가는 과정 의미 Knowledge Discovery in Databases (KDD) 과학적 연구방법을 데이터마이닝에 적용하는 것 일반적인 KDD 모델은 DM작업 수행후 그에 따라 의사결정하는 것 데이터를 준비하고 추출하는 방법론까지를 포함 데이터 추출과 준비가 가장 많은 시간이 걸림 3 1.1 Data Mining: A Definition Integration of techniques Machine learning DBMS Data visualization DM/KDD Information retrieval Pattern Recognition Statistics Must be scalable Must extract high-level information 4 1.2 What Can Computers Learn? Four Levels of Learning Facts (사실) Concepts(개념) 목표를 이루지위해 행하여지는 행위의 순차적 과정 Principles(원리) 어떤 공통된 특징을 잦는 객체, 기호, 사건들로 묶여진 집합 Procedures(절차) 참 혹은 진리인 내용 다른 진리에 기본 및 근거가 되는 일반화된 진리나 법칙을 의미 학습의 가장 높은 레벨 Computers & Learning 컴퓨터는 개념학습에 유용 개념은 DM의 산출물 DM Tool을 통해 학습된 개념은 Tree구조, rule, network구조, 수학공식의 형태를 지님 5 1.2 What Can Computers Learn? Three Concept Views Classical View Probabilistic View 모든 개념들은 명확하게 정의되는 속성을 가짐 정의가 명확하기 때문에 잘못 해석할 여지가 없음 명확하게 정의된 속성들을 가지고 어떤 item이 어떤 개념의 사례인지 아닌지를 판단 구성원들의 확률적 속성들에 의하여 표현 Exemplar View 한 인스턴스가 어떤 개념의 사례와 충분히 유사하다면 그 인스턴스를 그 개념의 사례라고 함 사람들이 개념의 전형적인 사례를 저장하고 그것을 사용하여 새로운 인스턴스를 분류하는데에 사용한다는 가정을 사용함 6 1.2 What Can Computers Learn? Supervised Learning (Decision Tree Example) Table data를 일반화하여 Tree형태로 표현 귀납적 학습기법(induction-based learning)을 사용하여 개념 정의 동물, 사물 혹은 건물 모양등과 같은 개념의 인스턴스를 보고 이름을 듣고 개념을 정의하는데 사용되는 여러가지 특징 요소를 정하고 자신만의 분류 모델을 만들어냄 Decision tree로 data를 일반화하고 정확한 진단에 필요한 중요한 attribute, attribute들간의 관계에 대한 요약을 볼 수 있음 Model의 정확도를 test set으로 측정 목적 학습하려고 하는 개념의 인스턴스들로 부터 supervised 학습을 사용하여 분류모델을 만들고자 함(귀납적) 분류모델이 만들어지면 그것을 사용하여 새로 주어진 인스턴스를 분류하기 위함(연역적) 장점 이해가 쉽고 규칙의 형태로 쉽게 변환이 되고 비교적 실험결과가 좋음 7 1.2 What Can Computers Learn? Output Attribute = Target Variable = Class Input Attribute = Variable Table 1.1 • Hypothetical Training Data for Disease Diagnosis Patient ID# Training data 1 2 3 4 5 6 7 8 9 10 Sore Throat Fever Yes No Yes Yes No No No Yes No Yes Yes No Yes No Yes No No No Yes Yes Swollen Glands Congestio Headache n Yes No No Yes No No Yes No No No Yes Yes Yes No Yes Yes No Yes Yes Yes Yes Yes No No No No No Yes Yes Yes Diagnosis Strep throat Allergy Cold Instance Strep throat= Case Cold Allergy Strep throat Allergy Cold Cold 8 1.2 What Can Computers Learn? First Test/Decision Node Swollen Glands No Production Rules IF Swollen Glands = Yes THEN Diagnosis = Strep Throat Yes Diagnosis = Strep Throat Fever IF Swollen Glands = No & Fever = Yes THEN Diagnosis = Cold IF Swollen Glands = No No Diagnosis = Allergy Test data Yes Terminal Decision Node Diagnosis = Cold 결정된 결과 Class 11 No No 12 Yes Yes 13 No No & Fever = No THEN Diagnosis = Allergy Yes Yes Strep throat No No Yes Cold No No Yes Allergy Yes 9 1.2 What Can Computers Learn? 어떠한 결정트리도 production rule들로 변환시킬 수 있음 Production rule -> If 선행조건들 then 결과 규칙의 선행조건들은 root node에서 terminal node까지의 attribute 값들의 조합 The “tree” is upside down. The Decision Tree fits the data perfectly. There are no errors. Accuracy = 100%. The Decision Tree discards the unneccessary attributes A computer algorithm to construct Decision Trees would be easy to programme, and would do the job much quicker than we humans can 10 1.2 What Can Computers Learn? Unsupervised Clustering 모델 만들시 분류 클래스가 미리 정의되지 않은 데이터인스턴스들을 사용 데이터 인스턴스들은 클러스터링 시스템에 정의된 유사도에 의해 그룹핑됨 The Acme Investors Dataset Customer ID 1005 1013 1245 2110 1001 Account Margin Transaction Type Account Method Joint Custodial Joint Individual Individual No No No Yes Yes Online Broker Online Broker Online Trades/ Month Sex 12.5 0.5 3.6 22.3 5.0 F F M M M Age Favorite Recreation Annual Income 30–39 50–59 20–29 30–39 40–49 Tennis Skiing Golf Fishing Golf 40–59K 80–99K 20–39K 40–59K 60–79K Supervised Clustering Can I develop a general profile of an online investor? Can I determine if a new customer is likely to open a margin account? Can I build a model predict the average number of trades per month for a new investor? What characteristics differentiate female and male investors 11 1.2 What Can Computers Learn? The Acme Investors Dataset & Unsupervised Clustering 많은 unsupervised clustering system들은 사용자가 전체 clustering의 개수를 정함 But 일부는 자체적으로 정해지기도 함 인스턴스들을 의미있는 clustering로 그룹지으려고 함 Production Rule If Margin Account = yes & Age=20-29 & Annual Income = 40-59K THEN Cluster =1 (accuracy =0.80, coverage= 0.50) If Account Type = Custodial & Favorite Recreation = Skiing & Annual Income = 80-90K THEN Cluster =2 (accuracy = 0.95, coverage = 0.35) If Account Type = Joint & Trade/Month >5 & Transaction Method = Online THEN Cluster = 3 (accuracy = 0.82, coverage = 0.65 Accuracy(정확률) Coverage(적용률) 12 1.3 Is Data Mining Appropriate for My Problem Data Mining or Data Query? 찾으려는 것이 명확할 때 DB Query Language와 OLAP으로 정보를 찾거나 보고, reporting하는데 사용할 수 있음 It depends on the type of question you want to answer, and the type of knowledge you want to discover. 지식 Shallow Knowledge(단순지식) Multidimensional Knowledge(다차원지식) OLAP tools are used to manipulate multidimensional knowledgeOn-lin Hidden Knowledge(은닉지식) It can be easily stored and manipulated in a database. SQL질의로 추출 represents patterns or regularities in data that cannot be easily found using database query. data mining algorithms can find such patterns with ease. Deep Knowledge(심층지식) 찾고자 하는 방향을 제공하여 줄때만 찾을 수 있음 13 1.3 Is Data Mining Appropriate for My Problem 지식의 종류 및 탐사기법 14 1.3 Is Data Mining Appropriate for My Problem? Data Mining vs. Data Query: An Example Data set에서 찾고자 하는 것에 대한 일반적인 가설을 만듬 가설은 data에 대하여 우리가 옳다고 믿는것에 대한 타당한 추측을 만듬 수동 데이터 마이닝 DB가 충분히 적거나 attribute들과 그들간의 관계에 대하여 충분한 지식이 있다면 직절 데 이 터 집 합 에 서 몇 개 의 attribute 들 은 output attribute 를 정 확 하 게 판별해내는데 관련이 있음 15 1.4 Expert Systems or Data Mining? Expert System 전문가의 문제해결 방법을 적용한 컴퓨터 프로그램을 의미 Knowledge Engineer 전문가와의 상호작용을 통하여 전문가의 지식을 끄집어 내는 역할 여러가지 도구를 사용하여 새로운 지식에 대한 모델을 만듬 Data Data Mining Tool If Swollen Glands = Yes Then Diagnosis = Strep Throat Human Expert Knowledge Engineer Expert System Building Tool If Swollen Glands = Yes Then Diagnosis = Strep Throat 16 1.5 A Simple Data Mining Process Model 일반 화일 등 데이터 수집 정리 Operational Database Data Warehouse SQL Queries Data Mining Interpretation & Evaluation Result Application 17 1.5 A Simple Data Mining Process Model The Data Warehouse 같은 주제에 관련된 모든 데이터들을 같은 테이블에 저장 운영데이터베이스는 트랜젝션 처리에 가장 적합하나 DW는 주제중심으로 데이터의 중복성이 존재하게 됨 트랜젝션 데이터 처리보다는 의사결정지원을 위해 설계된 과거 데이터 데이터베이스를 의미 Relational Databases and Flat Files Mining the Data Supervised 학습인가 unsupervised clustering 인가? Training data와 test로 어떻게 나눌것인가? 어떤 attribute를 사용할 것인가? 학습 parameter값의 지정? Interpreting the Results Result Application 18 1.6 Why Not Simple Search? DM은 비구조적인 데이터를 일반화된 모델로 표현하는 데 사용 분류(classification) 문제해결의 다른 방법 NN분류(Nearest Neighbor Classification) 분류 table 만들기 – data table에는 분류class가 정해져 있는 모든 data instance를 포함 분류하고자 하는 새로운 instance에 대하여 table에 있는 각 item과 새로운 item간의 유사도 점수를 계산 nearest : smallest Euclidean distance, absolute difference, maximum distance, Minkowski distance 등을 계산하여 그 거리가 가장 가까운 것을 의미 가장 유사한 table item을 찾고 그 item의 분류class를 새로운 item의 분류class로 새로 분류된 instance를 분류class와 함께 table에 추가 분류 Table에 많은 레코드가 있다면 계산시간 많이 소요 Relevant attribute와 irrelevant attribute 를 구분할 수 없음 Instance들을 class로 분류하는데 어느 attribute가 사용되는지에 대해 알수 없음 K-nearest Neighbor Classifier 하나가 아닌 k개의 NN을 골라서 그중에서 가정 공통되는 분류클래스를 새로운 인스턴스의 클래스로 분류됨 새로운 인스턴스가 하나의 잘못된 training 인스턴스 때문에 잘못 분류되는 가능성을 방지하여 줌 19 1.7 Data Mining Applications Application Case Fraud Detection Use historical data to build models of fraudulent behavior and use data mining to help identify similar instances (auto insurance, money laundering) Health Care Business and Finance Scientific Application Sports and Gaming 20 1.7 Data Mining Applications 금융업에서의 적용 사례 사기행위 색출 고객집단 분류 : 과거에 사기행위로 판명된 신용카드 거래를 분석하여 사기행위의 패턴을 찾아냄. : 신용카드 사기 행위의 전형적인 사례는 전자상가에서 짧은 기간에 많은 거래가 일어나는 경우이며 이것을 사기행위의 가능성을 알려주는 경고 신호로 인식하므로써 피해를 줄일 수 있음. : 어떤 고객의 구매행위가 찾아낸 사기행위 패턴과 비슷할 경우 그 거래를 승인하지 않도록 시스템 (production system)을 구성하는데 이용할 수 있음 : 특정 고객집단을 찾아내고 이 집단만을 겨냥한 차별화된 서비스를 제공 : 고객집단 편성에 관한 지식을 이용하여 특정 판촉활동에 의하여 가장 많은 효과와 혜택을 얻게 될 금융기관의 지점을 찾는 데에도 사용 라이프 싸이클 예측 관리 (predictive life-cycle management) : 은행이 고객의 시간에 따른 가치 (lifetime value)를 예측하고 이에 따라 개개의 고객집단에 알맞은 서비스를 제공 : 이들은 가까운 장래에 수익성이 높은 고객이 될 가능성이 매우 높은 고객을 대상으로 이들에게 특별한 상품 거래를 제안하거나 수수료를 면제해 주는 것과 같은 고객 이탈방지 프로그램 같은 것을 실시할 수 있음 21 1.7 Data Mining Applications 금융업에서의 적용 사례 22 1.7 Data Mining Applications 유통업에서의 적용 사례 유통업자들은 자사가 발행한 신용카드와 컴퓨터화된 결제시스템을 통하여 고객들의 매일 매일의 자세한 구매정보를 보유 바구니 분석 (basket analysis) 수행 : 바구니 분석은 일명 친화성 분석이라고도 하는데 고객들의 구매행위시 어떤 상품들이 같이 구매되는가를 밝혀낸다. 이와 같은 지식은 상점의 진열 전략이나 재고 (stocking) 전략, 판매촉진 등의 성과 제고에 활용 시계열 패턴 조사 (temporal pattern / sequences) : 시간에 따른 구매행위에 대한 지식은 유통업자들의 재고에 관한 의사결정에 많은 도움을 줌. . 예측모델의 개발 : 유통업자들은 고객의 구매행위, 예를 들어 어떤 상품의 구매행위나 할인 행사에 참여하는 행위 등을 통하여 특성을 파악할 수 있으며 특정 고객집단을 겨냥한 효과적이고 경제적인 판매 촉진 전략을 구사할 수 있음. 23 1.7 Data Mining Applications 통신업에서의 적용 사례 통화 기록 분석 : 비슷한 통화 사용패턴을 가진 집단을 찾아내어 그들에게 유리한 가격정책이나 기능 등을 개발 고객 충성도 (customer loyalty) : 통신회사는 지식발견 기술을 이용하여 한 번 고객이 되면 오랜 동안 지속적인 거래를 하게 될 고객과 그들의 특성을 찾아내고 이들을 중심으로 투자 24 1.7 Data Mining Applications 그외 고객집단 편성 거의 모든 산업분야는 DM을 이용하여 뚜렷한 고객집단을 편성하는데 활용 자동차 제조 고객들을 위하여 맞춤 자동차를 생산하기 시작했고 따라서 어떤 특징들이 선호될 것인지 그리고 이러한 특징과 함께 어떤 점들이 요구될지를 예측 보증계약 (warranties) 제조업자는 보상 청구를 해올 고객의 수를 예측하고 이에 따른 비용을 예측 탑승객 인센티브 (frequent flier incentives) 항공사는 자사 비행기를 더 자주 이용할 수 있도록 인센티브를 제공할 고객 집단을 찾아냄 한 항공사는 짧은 거리를 매우 자주 여행하는 고객집단이 존재함 -> 비행횟수에 의해서도 항공사가 제공하는 혜택을 받을 수 있도록 규칙을 변경 제조업(Manufacturing) 공정 환경의 복잡함과 작업의 효율성과 품질의 우수성을 동시에 요구하는 현대 제조 분야에서도 DM 기법이 여러 분야에서 필요시 됨 Job shop scheduling, 공정 제어(manufacturing control)의 문제, 화학 약품의 공정 과정(chemical process)의 최적화, 에너지 소비(energy consumption)의 최소화 혹은 품질관리(quality control)와 자동화된 검사(automated inspection)에서도 활용 보건 의학 분야(Health and medical) 환자나 병원측에서의 보험 사기(fraudulent insurance claim)에 대한 검색 각종 암이나 심장마비 등의 병을 자동 진단(automated diagnosis)에 이용 에너지와 유틸리티(energy and utility) 에너지의 수요량을 예측(forecast)하여 날씨의 변화와 정전에 신속하게 대비 원유 탐사에 있어서 지층의 변화를 분석 25 1.7 Data Mining Applications Customer Intrinsic Value 고객 이탈률 방지와 미래가치을 위한 전략 수립시 활용 공격적 마케팅 전략 _ _ _ _ _ _ _ Intrinsic (Predicted) Value _ _ _ _ X X 비공격적 마케팅 전략 X X X 중간정도 공격적 마케팅 전략 X X X X Actual Value 26