슬라이드 제목 없음

Download Report

Transcript 슬라이드 제목 없음

연관 규칙 기반 Pattern Miner의
설계 및 구현
김지현, 성유진, 박종수, 지원철
한국경영과학회 ‘98 추계학술대회
1998년 10월 10일
사용자 지정:
최소지지도, 최소신뢰도
Large
Database
Pattern Miner
Visual C++
연관 규칙
or
순차 패턴
Active X
Windows NT
Pattern Miner System
98-10-10
1
연관 규칙(Association Rule)
• 개념:
– 트랜잭션 내의 항목간의 연관성.
• 규칙 예:
[빵] ,
[버터]
전제부 (Antecedent)
[우유] (support 12.5%, confidence 90%)
결과부 (Consequent)
• 적용 분야
– 백화점이나 수퍼마켓에서의 소비자 구매 행태 분석.
– 관계형 데이터베이스 시스템에서 연관 규칙 탐사.
– WWW등에서의 사용자 접근 패턴 분석.
98-10-10
2
연관 규칙의 정의
• X  Y [support, confidence]
– X  I, Y  I and X Y = ø.
– X : antecedent (전제 조건부), Y : consequent (결과부).
– I : a set of literals called items (물품들의 집합).
– Measurement
• Support =
(X  Y )을 포함하는 트랜잭션 개수
전체 트랜잭션 개수
• Confidence =
(X  Y )을 포함하는 트랜잭션 개수
X 를 포함하는 트랜잭션 개수
• 생성 단계
1. 빈발 항목 집합(Large itemsets ) 찾기
2. 연관 규칙 생성하기
98-10-10
3
알고리즘 Apriori
• 과정
(Lk: Set of Large k-itemsets, Ck:Set of Candidate k-itemsets)
DB1
L1
C2
L2
C3
L3, …, Ck
Lk
• 특징
– Apriori-gen : 효과적인 후보 항목집합 생성.
• Join Step: Ck = LK-1
LK-1
• Prune Step: Ck의 모든 (k-1)-subset이 LK-1에 속하는 Ck만 보존.
– Subset function: 후보 항목집합의 지지도 계산
• Hash Tree 사용
98-10-10
4
알고리즘 DHP
• 과정
DB1
L1
H2
C2
L2
C3
L3, ..., Ck
DB3
Lk
DBk
• 특징
– Hash Table 을 이용한 후보 항목 수 감소
– Transaction pruning 을 통한 DB 스캔 시간 단축
 전체적인 성능 향상
98-10-10
5
자료 구조
• 각 단계의 후보집합에 대해 Hash Tree 형성.
• 예: C2 = {{A,B}, {A,C}, {A,T}, {B,C}, {B,D}, {C,D}} 일때,
C2
Level 1
Level 2
A
B
B
C
C
C
D
C,D
중간노드
A,B
98-10-10
A,T
A,C
B,C
B,D
잎노드
6
순차 패턴(Sequential Pattern)
• 개념
– 트랜잭션 안에서 발생된 항목들간의 연관 규칙에 시간의 변이를 추
가한 것
• Video 대여점에서 대여 순차 패턴 예:
– “스피드”  “접속”  “타이타닉” [support 25%]
• 정의
– 항목집합 : i = {i1, i2, …, im}, ij : 항목
– 시퀀스 : s = {s1, s2, …, sn}, sj :항목집합
– 시퀀스 <a1a2…an> is contained in 시퀀스 <b1b2…bn>
• 의미: i1 < i2 < i3 에 대해 a1bi1, a2bi2, …, anbin을 만족하는 경우.
• 예: <(3) (4 5) (8)> is contained in <(7) (3 8) (9) (4 5 6) (8)>
– Maximal sequence
Large sequence 집합 중 어떤 Large sequence에도 포함되지 않
는 sequence
98-10-10
7
순차 패턴의 특성 및 알고리즘
• 연관규칙과의 비교
비 교
연관 규칙
순차 패턴
연관성
Intra-transaction Inter-transaction
지지도
Transaction 수
Customer 수
시간 순서
무시
고려
• 알고리즘 AprioriAll
 Sort Phase: 정렬 단계
 Litemset Phase: 빈발 항목집합 발견 단계
 Transformation Phase: Litemset들로 데이터베이스의 재구성
 Sequence Phase: 빈발 시퀀스 발견 단계
 Maximal Phase: 최대 시퀀스 발견 단계
98-10-10
8
Pattern Miner
Rule(SpreadSheet)
Postprocessing
Mining Rules
Code Table
(Item, Customer)
Preprocessed Data
Preprocessing
Raw Data
98-10-10
9
Environment
• 실험환경
–
–
–
–
•
•
•
•
IBM PC(with PII 233MHz and 64MB main memory)
OS: Windows NT workstation 4.0
Language : C++
Tool: Visual C++ 5.0
탐사 패턴 : 연관 규칙, 순차 패턴
구현 알고리즘 : Apriori, DHP, AprioriAll
실험 데이터 : Synthetic data, 통계청의 DB Access log data
특징:
– MDB Handling(DAO class), ActiveX Control 이용.
98-10-10
10
Main Menu
98-10-10
11
Raw Data
98-10-10
12
Association Rule
(최소 지지도: 2%, 최소 신뢰도: 50%)
98-10-10
13
Association Rule Matrix
(최소 지지도: 2.5%, 최소 신뢰도: 40%)
98-10-10
14
Sequential Pattern
(최소 지지도: 11%)
98-10-10
15
향후 연구 과제
• 응용 패턴 탐사
– Taxonomy를 사용한 일반적인 연관 규칙.
– Taxonomy를 사용한 일반적인 순차 패턴.
• Interactive User Interface
– 지지도 변경에 따른 패턴 탐사.
– 특정 항목에 대한 연관 규칙 탐사.
– 흥미도가 높은 패턴 구분.
– Graphic Display of the Patterns.
• 실제 대용량 데이터에 적용
98-10-10
16