DataMining소개강의-(06년11월)_090706 - ai

Download Report

Transcript DataMining소개강의-(06년11월)_090706 - ai

데이터마이닝의 소개
Data Mining Introduction
숭실대학교 마이닝 연구실
김완섭([email protected])
2006년 11월 22일, 인공지능 수업
구성
• 데이터마이닝의 소개
• 분석기법 소개 및 적용 사례
–
–
–
–
분류 기법 (Classification, Supervised Learning)
군집 기법 (Clustering, Unsupervised Learning)
연관규칙 탐사 기법 (Association Rule Discovery)
개인화 추천 기법 (Personalized Recommendation)
• 데이터마이닝 솔루션의 소개
• 엘도라도를 통한 간단한 Demo
2
1.데이터마이닝의 소개 <등장 배경>
• 데이터의 축적(OLTP)
– 거대한 양의 데이터를 축적하게 됨 (데이터의 홍수)
• 데이터의 통합 및 분석(OLAP)
– 분산된 데이터를 통합하고 분석하여 의미있는 정보를 찾음
• 데이터마이닝의 출현
– 자동화된 시스템을 통한 지식(Knowledge)의 추출과 활용
인공지능
통계학
60년대
MIS출현
- 데이터 축적
마이닝
70년대
DB 통합
- 데이터의 통합
80년대
대용량 DB
- 통합 데이터
베이스 발전
3
90년대
대용량 DB
- DW 발전
1.데이터마이닝의 소개 <정의>
• 데이터마이닝이란 무엇인가?
대량의 데이터로부터 그 안에 숨어있는(implicit) 새롭고(previously
unknown), 가치있고(non-trivial), 의사결정에 유용한(potentially
useful) 정보를 찾는 작업
Extraction of interesting (non-trivial, implicit, previously
unknown and potentially useful) information or patterns
from data in large databases
대용량의 데이터
(Large Database)
Data Mining
4
1.데이터마이닝의 소개 <데이터 예:백화점>
• 거래데이터 (Transaction DB)
– 고객ID, 구매일, 거래점, 거래파트, 브랜드명, 상품명, 가격.
• 고객 프로파일 데이터 (User Profile DB)
– 성별,나이,주소,거주형태,자택여부,결혼여부,회원타입,가입일,가입점
5
1.데이터마이닝의 소개 <데이터 예:웹로그>
• 웹로그 데이터
6
1.데이터마이닝의 소개 <어떻게 정보를 찾는가?>
• 대용량의 데이터가 여러분에게 주어졌다고 생각하자.
• 그 데이터에서 어떠한 방법으로 정보를 찾을 것인가?
• 매우 다양한 방법들이 있을 수 있다.
–
–
–
–
–
–
–
–
Query
Visualization
OLAP
Statistics
Decision Tree
Neural Network
Genetic Algorithm
K-Means Clustering
7
1.데이터마이닝의 소개 <기존방법과의 차이점>
• 가설확인 중심의 기존 방식
가설
질의도구
DATA
고객의 직업과 수입
정도가 신용불량 여
부와 관련이 많다.
시각화도구
OLAP도구
• 가설 발견 중심의 데이터마이닝 방식
데이터마이닝
DATA
가설
어떤 사람들이 신용불
량자(잠재)일까?
*직업이 자영업,무
직등에 속한 사람들
*수입이 233만원이
하이고, 지역이 A지
역에 거주하는 경우
신용불량 확률높음
8
검증
정보
1.데이터마이닝의 소개 <프로세스 모델>
Pattern Evaluation
Data Mining
Task-relevant Data
Data Warehouse
Selection
Data Cleaning
Data Integration
Databases
9
1.데이터마이닝의 기법 및 알고리즘
기법의 종류
분류 분석
(Classfication)
군집 분석
(Clustering)
설명 및 알고리즘
레코드를 부류나 등급으로 나누는 작업
-Decision Tree : ID3, C4.5 Algorithm
-Neural Network, Bayesian …
레코드들을 유사한 성격을 가지는 소그룹으로 구분하는 작업
-K-Means Algorithm
-EM Algorithm
-Cobweb Algorithm
연관규칙 탐사
(Association Rule
Discovery)
구매데이터에서 상품 간의 판매 연관성을 파악하는 작업
- Apriori Algorithm
개인화 추천
(Personalized
Recommedation)
각 고객별로 선호정보를 파악하여 그 고객에게 적합한 상품을
추천해 주는 작업
-Collaborative Filtering Algorithm
-Content based Method
10
1.데이터마이닝의 적용 분야
분야
소매/마케팅
은행/카드
적용 사례
고객의 구매패턴과 선호도 발견
고객분류, 그룹별 특성 발견
신용평가 모형
우수 고객 선정 및 특성 분석, 카드 부정사용 적발
보험
고객 분류를 통한 보험료 가격정책 수립
통신
우수고객 선정 및 특성 분석
장거리 전화/ 무선 전화의 부정한 이용패턴 추적
이탈고객 모델 선정 및 타겟마케팅
제조
제품 수용 예측
최종 생산품의 품질에 영향을 미치는 요인 발견
유통
매장 진열 전략
상품 카다로그 디자인
의료
환자 특성에 따른 의약품의 부작용 분석
11
2.분석방법 <분류: 의사결정트리>
• 분류(Classification)의 정의
데이터집합이 주어졌을 때 그 데이터들을 분석하여 특정 속성(범주형)의
값(범주값)을 분류하는 트리 형태의 모델을 생성하는 분석기법이다.
• 의사결정나무 알고리즘의 특징
– 이해하기 쉬운 모델을 제공한다.
– 즉, 다른 방법(신경망, 통계방법)에 비해 이해하기가 쉽다.
– 현업에서 의사결정에 가장 많이 사용되는 기법이다.
– 범주형(Categorical) 속성을 대상으로 분석할 수 있다.
– 즉, 주식 데이터에서 주가 예측하는데에는 사용할 수 없다.
12
2.분석방법 <분류: 의사결정트리>
• 신용상태에 대한 분석 결과
– 신용상태가 <좋음, 나쁨>의 두개의 범주값을 갖음
– 과거의 데이터를 통하여 신용상태의 분류 모델을 생성
– 새로운 고객에 대하여 앞으로의 신용상태를 분류
신용상태
나쁨 168 52.0%
좋음 155 48.0%
계 323 (100.0% )
월소득: 213만원 미만
나쁨 143 86.7%
좋음 22 13.3%
계 165 (51.1% )
직업:
나쁨
좋음
계
C, D, E, F
143 90.5%
15 9.5%
158 (48.9% )
직업:
나쁨
좋음
계
월소득: 213만원 이상
나쁨 25 15.8%
좋음 133 84.2%
계 158 (48.9% )
A, B
0
0.0%
7 100.0%
7 (2.2% )
직업:
나쁨
좋음
계
D,
5
4
9
연령:
나쁨
좋음
계
25세 미만
24 49.0%
25 51.0%
49 (15.2% )
E, F
55.5%
45.5%
(2.8% )
13
직업:
나쁨
좋음
계
연령: 25세 이상
나쁨 1
0.9%
좋음 108 99.1%
계 109 (33.8% )
A, B, C
19 47.3%
21 52.7%
39 (12.4% )
2.분석방법 <분류: 의사결정트리 적용 예>
• B 은행의 사례 분석
– 고객의 대출 신청 서류와 신용 정보를 관리
– 수익 : 대출금의 이자, 고객 만족
– 손해 : 대출금 미상환, 상환 독촉 비용
유용한 대출심사
모델 존재 ?
YES
안전한 대출만 승인
14
상환 비율 향상
수익율 증가
2.분석방법 <분류: 의사결정트리 적용 예>
• 분석작업 : 대출금 상환에 대한 분류 모델 생성
• 분석목표 및 기대 효과
대출 심사 비용 감소
대출 신청 정보
Mining
고객 신용 정보
상
환
예
상
고
객
만
대
출
대
출
심
사
모
델
생
성
15
+
상환 독촉 비용 감소
+
상환 비율의 증가
수익율 증가
2.분석방법 <분류: 의사결정트리 적용 예>
• 입력데이터 설명
•
입력 데이터
–
–
Record의 수 : 5,960개,Field 수 : 13개
대출 신청 서류, 신용기관의 신용 정보, 목표 변수
대출 신청 서류
신용 기관의 신용 정보
REASON
대출 사유 (채무 정리, 주택개량)
DEROG
불량 거래 보고수
JOB
직업 (노동자, 사무원,판매원)
(자영업, 숙련기술자, 기타)
CLNO
금융 거래의 수
LOAN
대출액
DELINQ
체납 회수
MORTDUE
저당 금액
CLAGE
최장 대출 기간
VALUE
자산금액
NINQ
최근 신용 조회 수
DEBTINC
대출금 대 수입 비율
YOJ
근무년수
분석 목표 변수
BAD
16
대출금 상환여부
2.분석방법 <분류: 의사결정트리 적용 예>
• 모델의 시각화 결과 (트리 보기)
REASON
JOB
LOAN
DebtCon
Office
14,900
MORTDUE
VALUE
DEBTINC
58,204
71,257
43.76293
YOJ
DEROG
CLNO
3
3
50
DELINQ
CLAGE
NINQ
2
207
1
노드를 따라 내려 간
단말 노드의 Class : 1
∴ 대출 미승인
17
2.분석방법 <분류: 의사결정트리 적용 예>
18
2.분석방법 <분류: 의사결정트리 적용 예>
• Case 1 – 모델이 없는 보통의 경우
3,364명
고객
비승인 : 0
접수 및 대출 심사
신용 기관
대출 승인 : 3,364
신용정보
미상환 : 300
금액 : 5,420,900
순이익 : 480,500
상환 : 3,064
이자 : 5,901,450
19
2.분석방법 <분류: 의사결정트리 적용 예>
• Case 2 – 모델 이용
3,364명
대출심사 분류 모델
고객
비승인 : 110
접수 및 대출 심사
신용 기관
대출 승인 : 3,254
신용정보
미상환 : 200
금액 : 3,452,200
순이익 : 2,435,390
상환 : 3,064
이자 : 5,887,590
20
2.분석방법 <분류: 의사결정트리 적용 예>
• 기대효과 : 5배 이상의 순이익 증대
–
대출 심사/상환 독촉 비용을 고려시 훨씬 더 높은 순이익을 기대
모델 이용 X
모델 이용 O
대출 총액
\64,435,400
\62,328,100
반환
\59,014,500
\58,875,900
미수
-\5,420,900
-\3,452,200
이자
\5,901,450
\5,887,590
실제 이익
\480,500
\2,435,390
21
2.분석방법 <분류: 의사결정트리 활용
예>
• 의사결정트리를 이용한 이탈 고객 분석 선정
Operational DB
Mining Server
ETL Server
PowerMinerTM
Mining & Campaign DB
이탈 고객 정보 입력
고객 정보 입력
이탈 고객 예측 모델 생성
모델을 통한 이탈 고객 예측
Domain
이탈 고객 예측 모델
마케팅
솔루션
결과 저장
22
2.분석방법 <분류: 의사결정트리 활용
예>
거주지
북구
달서구
중구
수성구
나이
27세 이하
이탈
유지
94.11%
95.23%
성별
28세 이상
남성
이탈
유지
유지
100%
78.57%
100%
23
여성
결혼 여부
미혼
기혼
이탈
유지
100%
100%
2.분석방법 <분류: 의사결정트리 활용
예>
거주지
북구
달서구
중구
수성구
나이
27세 이하
이탈
유지
94.11%
95.23%
성별
28세 이상
남성
이탈
유지
유지
100%
78.57%
100%
여성
결혼 여부
미혼
기혼
이탈
유지
100%
100%
IF “거주지=북구 and 나이<=28” THEN “유지”(78.57%)
북구에 사는 28세 이상의 고객은 이탈하지 않음 (78.57%).
24
2.분석방법 <분류: 의사결정트리 활용
예>
거주지
북구
달서구
중구
수성구
나이
27세 이하
이탈
유지
94.11%
95.23%
성별
28세 이상
남성
이탈
유지
유지
100%
78.57%
100%
여성
결혼 여부
미혼
기혼
이탈
유지
100%
100%
IF “거주지=중구 and 성별=여성 and 결혼여주=미혼” THEN “이탈”(100%)
중구에 사는 미혼 여성은 이탈 (100%).
25
2.분석방법 <군집>
• 군집(Clustering)의 정의
주어진 레코드(고객, 상품)들을 여러가지 속성들을 고려하여 특성이 비슷
한 레코드들로 묶어주는 분석 기법
• 적용분야
– 고객 세분화를 통한 타겟마케팅
• 적용 알고리즘
– K-Means
– EM(Expectation Maximization)
26
2.분석방법 <군집>
• 군집 기법의 적용 예 : IRIS 데이터
27
2.분석방법 <군집>
•
EM 군집 (백화점 고객 데이터)
– 군집0: 30,40대, 서울, APT, 본인소유(주택), 기혼.
– 군집1: 10,20대, 서울, 단독주택, 미혼.
– 군집2: 10-30대, 경기, APT.
28
2.분석방법 <연관규칙>
• 연관규칙(Association)의 정의
거래 데이터에서 자주 함께 판매되는 상품들간의 연관성에 대한 규칙
(AB)을 찾아내는 분석기법이다. (AB: A상품을 구매하는 고객들은 B
상품도 함께 구매하는 경향이 있다.)
• 알고리즘
– Apriori
• 적용 예
– 오프라인 판매점에서의 분석을 통한 상품 배치
– 온라인 쇼핑몰에서의 자동화 된 연관 상품 추천
29
2.분석방법 <연관규칙>
• 쇼핑몰에서의 적용 예
Example of Association Rules from www.global-reach.com
30
2.분석방법 <연관규칙>
• 규칙(Rule)에 대한 분석 결과
지지도 : 전체 고객중 2%의 고객이 ‘미소패구두’와 ‘지오다노진케쥬얼’을 같이 구매함
신뢰도 : ‘미소패구두’를 구매한 고객 중 57%의 고객이 ‘지오다노진케쥬얼’을 구매함
향상도 : 전체 고객 중 ‘지오다노진케쥬얼’을 구입한 고객의 비율보다
‘미소패구두’를 구매한 고객 중 ‘지오다노진케쥬얼’을 구매한 고객의 비율이 2.81배 높음
※ 활용의 예
1. ‘미소패구두’를 구매한 고객에게 ‘지오다노진케쥬얼’을 추천
2. ‘지오다노진케쥬얼’의 마케팅 대상 고객으로 ‘미소패구두’를 구매한 고객 선정
3. ‘미소패구두’와 ‘지오다노진케쥬얼’을 패키지 상품으로 구성
31
2.분석방법 <연관규칙>
• 은행 서비스 이용에 대한 연관규칙
32
2.분석방법 <연관규칙>
• 생성 규칙의 해석 및 적용
선행항목
후행항목
지지도
신뢰도
개선도
SVG ATM
CKING
0.1162
0.9928
1.3262
• 지지도 → 0.1162 : 저축 예금 계정과 현금 카드, 당좌 예금 계정을
모두 사용하고 있는 고객이 0.1162%, 즉 2,700명 이상
• 신뢰도 → 0.9928 : 저축 예금 계정과 현금 카드를 사용하는 고객들 중
99%는 당좌 예금 계정을 사용
• 적용 : 저축 예금 계정과 현금 카드를 사용하는 고객에게
당좌 예금 계정을 추천
33
34
2.분석방법 <연관규칙>
• 생성 규칙의 해석 및 적용
신뢰도1
선행항목
후행항목
지지도
신뢰도
개선도
MMDA
CKING
0.1080
0.7639
1.098
CKING
MMDA
0.1080
0.1553
1.098
• 지지도 → 0.1080 : 금융시장 예탁 계정과 당좌 예금 계정을
신뢰도2
모두 사용하고 있는 고객이 0.1080%, 즉 2,500명 이상
• 신뢰도1 → 0.7639 : 금융시장 예탁 계정을 사용하는 고객 중 76%는 당좌 예금 계정을 사용
• 신뢰도2 → 0.1553 : 당좌 예금 계정을 사용하는 고객 중 16%는 금융시장 예탁 계정을 사용
• 결론1 : 금융시장 예탁 계정 사용 고객에게 당좌 예금 계정을 추천
• 결론2 : 당좌예금 사용하는 고객에게 금융시장 예탁 계정은 추천 안함
35
2.분석방법 <개인화추천>
• 추천(Recommendation)의 정의
각 고객에게 그 고객이 아직 구매하지 않은 상품 중에서 구매할 가능성이
높은 상품(아이템)의 리스트를 제공하여 주는 것.
• 알고리즘
– 협력적 추천 (Collaborative Filtering)
– 내용 기반 추천 (Content-based Method)
• 적용 예
– 오프라인 판매점에서의 분석을 통한 상품 배치
– 온라인 쇼핑몰에서의 자동화 된 추천
– A상품을 구매한 고객에게 B 상품을 추천할 수 있다.
36
2.분석방법 <개인화추천>
• 협력적 추천(Collaborative Filtering)
– 대상 고객과 유사한 성향을 갖는 이웃 고객이 공통적으로 선호하는 상품을 추천함.
• 협력적 추천의 과정
– STEP1. 유사도 계산
• 대상 고객과 다른 고객들간의 유사도를 구한다.
• 대표적 유사도 계산식
Correlation(식)
Cosine(식)
wa ,u
 
ra  r u
 cos( a, u )   
ra ru
– STEP2. 예측 선호도 계산
• 목표 고객과 다른 고객과의 유사도를 가중치로 하여 각 상품에 대한 선호도를
예측한다.
37
2.분석방법 <개인화추천>
• 협력적 여과(Collaborative Filtering)
– 패턴이 유사한 고객들이 선호한 상품(아이템)를 추천하는 시스템
like
high
correlation
A
B
A
B
Recommend
like
– 추천식
Pu ,i



allSimillarItems, N
( S i , N * Ru , N )
allSimilarItems, N
38
(| S i , N |)
C
2.분석방법 <개인화추천>
• 아이템 기반 협력적 여과
– 아이템 간의 유사도를 고려하여 추천하는 방법
A
Liked by
high
correlation
A
B
C
D
A
B
C
D E
B
Liked by
• 활용 사례
– http://www.amazon.com (쇼핑몰)
– http://citeseer.nj.nec.com (논문검색)
39
2.분석방법 <개인화추천>
• http://citeseer.nj.nec.com
선호도 기입
40
2.분석방법 <개인화추천>
• http://www.amazon.com 의 적용
선택 상품
유사 아이템
패키지 판매 유도
41
2.분석방법 <개인화추천>
• http://www.cdnow.com 의 적용
선택 비디오
과거 선택 아이템
유사 아이템
42
2.분석방법 <개인화추천>
Inter-Item Cosine Similarity
A의 과거 구매 내역
시청 제목
1
영웅
2
이웃집 토토로
‘영웅’
유사 영화
고객 A
(7647)
A를 위한 추천
추천 영화
수치
바람의 계곡의
나우시카
0.632
마녀배달비키키
0.365
귀를 기울이면
0.258
센과히치로의
행방불명
0.223
‘이웃집 토토로’
수치
반지의 제왕
0.141
캐치미
이프유켄
0.116
동갑내기 과외하기
0.112
색즉시공
0.106
살인의 추억
0.098
해리포터와 비밀의
방
0.096
유사영화
바람계곡의
나우시카
0.894
마녀배탈부
키키
0.516
귀를 기울이면
0.365
센과치히로의
행방불명
0.316
붉은돼지
0.316
폼포코너구리
대작전
0.258
Weighted Sum Function
43
수치
3.데이터마이닝 솔루션의 소개
• SPSS Clementine
• SAS Enterprise Miner
• Eldorado
44
3.데이터마이닝 솔루션의 소개
• Clementine
Managers
Stream Canvas
Projects
Palettes
45
3.데이터마이닝 솔루션의 소개
• SAS Enterprise Miner
46
3.데이터마이닝 솔루션의 소개
• Eldorado
a
Data Mining Node
a
Data Mining Stream Design
a
a
Project
Information
Result or
Model Object
a
Batch Execution Button
47
3.데이터마이닝 솔루션의 소개
• Eldorado 기능
데이터 입력
전처리
탐색
마이닝
모델 활용
파일 입력
레코드 선택
통계 탐색
의사결정트리
분류 활용
DB 입력
레코드 병합
테이블 보기
베이지안
군집 활용
전처리 출력
레코드 그룹핑
신경망
필드 선택
K-평균
필드 병합
SEM
새필드 생성
연관규칙
정렬
CF
정규화
RFM
결측치 처리
선형 회귀
값 매핑
48