Transcript No - 동아대학교
지식정보처리 및 응용
05. 분류 – 인접이웃분류기
동아대학교 산업경영공학과
김준우
Kim Jun Woo
지식정보처리및응용
‹#›
배경
영화 [가]에 대한 선호도
– A는 선호할 것인가?
성명
성별
나이
선호
A
남
20대
?
성명
성별
나이
선호
성명
성별
나이
선호
B
남
20대
O
C
여
40대
X
Kim Jun Woo
지식정보처리및응용
‹#›
배경
영화 [가]에 대한 선호도
– A는 선호할 것인가?
성명
성별
나이
선호
A
남
20대
?
성명
성별
나이
선호
성명
성별
나이
선호
B
남
40대
O
C
여
20대
X
Kim Jun Woo
지식정보처리및응용
‹#›
배경
차량 보유 여부
– A는 차량을 보유하고 있을 것인가?
성명
성별
나이
직업
연수입
보유
A
여
20대
회사원
2500
?
성명
성별
나이
직업
연수입
보유
B
여
20대
회사원
2500
X
성명
성별
나이
직업
연수입
보유
C
남
20대
회사원
3000
O
Kim Jun Woo
지식정보처리및응용
‹#›
인접 이웃 분류기 개요
인접 이웃 분류기
– 분류 방법 중 하나
과거 데이터 이용하여 미래 데이터 클래스 추정
의사결정나무와 다른 접근 방법
– 데이터 간 유사도 (similarity) 개념에 근거
비슷한 레코드끼리 같은 클래스 가질 것이라 기대
인접 이웃 분류기 작동 절차
– 0) 미래 데이터 등장
이전까지 학습 없음
– 1) 미래 데이터와 가장 유사한 k 개의 과거 데이터 추출
k : 사전 정의 필요, k-인접이웃분류기(KNN, k-nearest neighbor)
유사도 측정 방법 필요
– 2) 추출된 과거 데이터들의 클래스 참조하여 분류 수행
Kim Jun Woo
일반적으로 다수결 적용
지식정보처리및응용
‹#›
인접 이웃 분류기 개요
인접 이웃 분류기 적용 예)
– k=3 가정
미래 데이터
유사한 과거
데이터 k개
선별
Kim Jun Woo
유사한 과거 레코드 3개 이용하여 분류
첫 대출 결혼 수입 불이행
X
미혼 80K
?
ID 첫 대출
1
X
2
X
3
X
4
X
5
O
6
O
7
X
8
O
9
O
10
O
결혼
미혼
미혼
미혼
기혼
이혼
기혼
이혼
미혼
기혼
이혼
수입
82K
75K
80K
100K
95K
60K
220K
120K
100K
90K
No 일 것
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
지식정보처리및응용
선별된 과거 데이터
다수결
‹#›
인접 이웃 분류기 개요
인접 이웃 분류기의 실제
– 레코드 간 유사도 측정 방법 필요
정량적인 유사도/비유사도 지표
예) 가장 유사한 과거 데이터 3개는 무엇인가?
미래 데이터
과거
데이터
Kim Jun Woo
첫 대출 결혼 수입 불이행
X
미혼 80K
?
ID 첫 대출
1
X
2
O
3
O
4
X
5
O
6
O
7
X
8
O
9
O
10
O
결혼
미혼
기혼
미혼
기혼
이혼
기혼
이혼
미혼
기혼
이혼
수입 불이행
125K No
100K No
70K
No
120K No
95K
Yes
60K
No
220K No
85K
Yes
75K
No
90K
Yes
지식정보처리및응용
‹#›
레코드 간 유사도 측정 개요
2개 레코드 간 유사도 측정 방법
– 유사도 (similarity) 지표
유사도 값이 높을수록 비슷한 레코드
– 비유사도 (dissimilarity) 지표
비유사도 값이 낮을수록 비슷한 레코드
거리 (distance)
– 참조)
데이터 종류, 필드 종류에 따라 측정 방법 상이
일반적으로 비유사도 활용도 넓음
레코드 간 유사도의 활용
– 분류
인접이웃 분류기 등
– 군집
Kim Jun Woo
대부분의 군집 분석은 레코드 간 유사도 개념에 기초
지식정보처리및응용
‹#›
이진 데이터 간 유사도
이진 데이터 (binary data) 간 유사도
– 이진 필드만을 갖는 데이터
예) 최근 A, B, C, D, E, F의 6개 영화 상영한 영화관
회원들의 경우 각 영화 관람 여부 데이터 보유 중
신규 영화 E 개봉 고객 5명 초청하여 시사회
시사회 참석 고객의 E 영화 선호도 조사
다른 회원들 중, E 영화 선호할만한 고객에게 마케팅 실시 예정
– K=3인 인접이웃분류기 활용
ID
1
2
3
4
5
시사회 참석 고객 (과거 데이터)
F
E 선호
A
B
C
D
E
O
X
X
X
X
X
O
O
O
X
O
O
X
O
X
O
O
X
X
X
X
O
X
O
X
X
X
X
X
X
X
X
X
O
O
Kim Jun Woo
ID
6
A
O
B
O
미래 데이터
C
D
E
O
X
X
F
X
E 선호
?
1번 고객, 6번 고객은 얼마나 유사한가?
지식정보처리및응용
‹#›
이진 데이터 간 유사도
이진 데이터 간 유사도
– 1) 단순 매칭 계수 (SMC, Simple Matching Coefficient)
ID
1
A
O
전체 필드 중, 양쪽 데이터에서 값이 같은 필드의 비율
예) 단순 매칭 계수
B
X
C
X
D
X
E
X
F
X
E 선호
O
ID
6
A
O
B
O
C
O
D
X
E
X
F
X
E 선호
?
총 6개의 속성, 그 중 양쪽의 값이 같은 것 4개
단순 매칭 계수 = 4 / 6 = 0.667
ID
1
2
3
4
5
예) SMC 사용 시, 미래 데이터 분류 판정
시사회
A
B
O
X
O
O
X
O
O
X
X
X
Kim Jun Woo
참석 고객 (과거 데이터)
C
D
E
F E 선호
X
X
X
X
O
X
O
O
X
O
O
X
X
X
X
O
X
X
X
X
X
X
X
O
O
SMC
4/6
3/6
5/6
5/6
2/6
ID
6
지식정보처리및응용
A
O
미래 데이터
B
C
D
E
O
O
X
X
F
X
E 선호
?
X 로 판정
‹#›
이진 데이터 간 유사도
이진 데이터 간 유사도
– 단순 매칭 계수 단점
이진 필드의 두 값 (O, X) 중요도 다를 경우
특정 영화 본 사람끼리 성향 비슷할 것이라 추정 가능
특정 영화 안 본 사람끼리 성향 비슷할 것이라 추정 가능?
– 예) 4개 영화에 대해 선택 여부 같은 경우
어느 쪽 두 사람이 비슷한가?
O, X 중, O 가 중요 (X 는 단지 값이 없음을 표기)
A
O
B
O
C
O
D
O
E
X
F
X
A
O
B
O
C
O
D
X
E
O
F
X
함께 관람한 영화 많음
A
O
B
X
C
X
D
X
E
X
F
X
A
X
B
X
C
X
D
X
E
X
F
O
함께 관람하지 않은 영화
많음
Kim Jun Woo
지식정보처리및응용
‹#›
이진 데이터 간 유사도
이진 데이터 간 유사도
– 2) 자카드 계수 (Jaccard coefficient)
ID
1
양쪽 다 의미 없는 값인 필드 제외, 나머지 필드로 유사도 측정
예) 자카드 계수
A
O
B
X
C
X
D
X
E
X
F
X
E 선호
O
ID
6
A
O
B
O
C
O
D
X
E
X
F
X
E 선호
?
D, E, F 는 양쪽 다 의미없는 속성
나머지 A, B, C 3개 중, 값이 같은 것 1개
자카드 계수 = 1/3 = 0.333
ID
1
2
3
4
5
A
O
O
X
O
X
예) 자카드 계수 사용 시, 미래 데이터 분류 판정
시사회
B
X
O
O
X
X
Kim Jun Woo
참석 고객 (과거 데이터)
C
D
E
F E 선호
X
X
X
X
O
X
O O
X
O
O
X
X
X
X
O
X
X
X
X
X
X
X
O
O
JC
1/3
2/5
2/3
2/3
0/4
ID
6
지식정보처리및응용
A
O
B
O
미래 데이터
C D E F E 선호
O X X X
?
X 로 판정
‹#›
수치형 데이터 간 비유사도
수치형 데이터
– 일반 필드 모두 수치형인 경우
예) 채무불이행 여부 관련 데이터, k=3인 인접이웃분류기
과거 데이터
ID 신용카드 현 직장
개수
근속 연수
1
3
7
2
1
2.5
3
2
5
4
4
10
5
6
2
연봉
(천만원)
3.5
2.7
3.0
3.1
2.8
미래 데이터
불이행
No
Yes
No
No
Yes
신용카드 현 직장
개수
근속 연수
2
4
연봉
(천만원)
3.2
불이행
?
– 유클리드 거리 (Euclidean distance)
Kim Jun Woo
가장 일반적인 비유사도 척도
클수록 레코드 상이, 낮을수록 레코드 유사
지식정보처리및응용
‹#›
수치형 데이터 간 비유사도
수치형 데이터
– 유클리드 거리
개별 필드 차이(difference) 제곱 총합의 제곱근
두 점 사이의 기하학적 거리에 해당
예) 미래 데이터와 1번 레코드 간 거리(비유사도)
과거 데이터
ID 신용카드 현 직장
개수
근속 연수
1
3
7
2
1
2.5
3
2
5
4
4
10
5
6
2
연봉
(천만원)
3.5
2.7
3.0
3.1
2.8
미래 데이터
불이행
No
Yes
No
No
Yes
신용카드 현 직장
개수
근속 연수
2
4
연봉
(천만원)
3.2
불이행
?
(3 2) 2 (7 4) 2 (3.5 3.2) 2 3.18
Kim Jun Woo
지식정보처리및응용
‹#›
수치형 데이터 간 비유사도
수치형 데이터
– 미래 데이터 분류 판정
유클리드 거리 작은 k개 과거 레코드에 의한 다수결
예)
과거 데이터
ID 신용카드 현 직장
개수
근속 연수
1
3
7
2
1
2.5
3
2
5
4
4
10
5
6
2
Kim Jun Woo
연봉
(천만원)
3.5
2.7
3.0
3.1
2.8
미래 데이터
불이행 유클리드
거리
No
3.18
Yes
1.87
No
1.02
No
6.33
Yes
4.49
지식정보처리및응용
신용카드 현 직장
개수
근속 연수
2
4
연봉
(천만원)
3.2
불이행
?
No 로 판정
‹#›
유클리드 거리 기타
유클리드 거리
– 대표적인 비유사도 척도
수치형 데이터 적용 가능
확장하여 기타 데이터 적용 가능
– 기본 구조 표현
d(필드) : 두 레코드에서 특정 필드값의 차이
예) 일반 필드 n 개인 경우 유클리드 거리
유클리드거리
d (필드 1) 2 d (필드 2) 2 ... d (필드 n) 2
예) 채무불이행 관련 데이터
ID 신용카드 현 직장
연봉
개수 근속 연수 (천만원)
1
3
7
3.5
불이행
신용카드 현 직장
개수
근속 연수
2
4
불이행
Kim Jun Woo
연봉
(천만원)
3.2
No
?
지식정보처리및응용
d (신용카드개수 ) 1
d (현직장근속연수
)3
d (연봉 ) 0.3
유클리드거리
12 32 0.32
‹#›
유클리드 거리 기타
정규화 (normalize)
– 데이터 사전처리(pre-processing) 작업 중 하나
각 필드의 값 수준이 비슷하도록 조정하는 작업
각 필드의 값들이 0~1범위 값이 되도록 수정
레코드 유사도 이용 시 일반적으로 수행
– 필요성
값의 수준 작은 필드 영향력 무시될 수 있음
예) 채무불이행 관련 데이터, 연봉을 만원 단위로 표기
ID 신용카드 현 직장
개수 근속 연수
1
3
7
신용카드 현 직장
개수
근속 연수
2
4
Kim Jun Woo
연봉
(만원)
3500
연봉
(만원)
3200
불이행
No
d (신용카드개수 ) 1
d (현직장근속연수
)3
d (연봉 ) 300
불이행
?
유클리드거리
지식정보처리및응용
12 32 300 2
‹#›
유클리드 거리 기타
정규화 (normalize)
– 정규화 방법
여러 가지 존재
– 단순 정규화
값 = (기존 값 – 필드 최소값) / (필드 최대값 – 필드 최소값)
예) 채무불이행 관련 데이터
과거 데이터 (정규화 이전)
ID 신용카드 현 직장
개수
근속 연수
1
3
7
2
1
2.5
3
2
5
4
4
10
5
6
2
최소 : 1
최대 : 6
Kim Jun Woo
최소 : 2
최대 : 10
연봉
(만원)
3500
2700
3000
3100
2800
과거 데이터 (정규화 이후)
불이행
최소 : 2700
최대 : 3500
No
Yes
No
No
Yes
ID 신용카드 현 직장
개수
근속 연수
1
0.400
0.625
2
0.000
0.0625
3
0.200
0.375
4
0.600
1.000
5
1.000
0.000
연봉
(만원)
1.000
0.000
0.375
0.500
0.125
불이행
No
Yes
No
No
Yes
(값-1)/(6-1) (값-2)/(10-2) (값-2700)/(3500-2700)
지식정보처리및응용
‹#›
유클리드 거리 기타
정규화 (normalize)
– 정규화된 데이터
모든 필드가 0~1 사이 값 가짐
미래 데이터도 정규화하여 비교
예) 채무불이행 관련 데이터
미래 데이터
과거 데이터 (정규화 이후)
ID 신용카드 현 직장
개수
근속 연수
1
0.400
0.625
2
0.000
0.0625
3
0.200
0.375
4
0.600
1.000
5
1.000
0.000
Kim Jun Woo
연봉
(만원)
1.000
0.000
0.375
0.500
0.125
불이행
No
Yes
No
No
Yes
신용카드 현 직장
개수
근속 연수
0.200
0.250
연봉
(만원)
0.625
불이행
?
(값-1)/(6-1) (값-2)/(10-2) (값-2700)/(3500-2700)
지식정보처리및응용
‹#›
유클리드 거리 기타
참조) 가중치 (weight)
– 유사도 측정하는데 각 필드 기여도 다를 수 있음
중요한 필드에 높은 가중치
– 가중치의 부여
d(필드)2 에 적절한 가중치 곱하여 총합
가중치들의 총합 일반적으로 1
예) 신용카드 개수가 유사도 판단에 중요한 경우
ID 신용카드 현 직장
개수 근속 연수
1
3
7
신용카드 현 직장
개수
근속 연수
2
4
연봉
(만원)
3500
연봉
(만원)
3200
No
불이행
?
유클리드거리
Kim Jun Woo
d (신용카드개수 ) 1
d (현직장근속연수
)3
d (연봉 ) 300
불이행
0.5 12 0.25 32 0.25 300 2
지식정보처리및응용
‹#›
일반 데이터 간 비유사도
일반 데이터
– 다양한 필드 포함
일반적으로 비유사도 (거리) 이용하여 데이터 비교
유클리드 거리 적절히 수정하여 사용
– 일반 데이터 간 비유사도 기본 구조
유클리드 거리 형태 : 개별 필드 값 차이 제곱 총합의 제곱근
비유사도 d (필드 1) 2 d (필드 2) 2 ... d (필드 n) 2
Kim Jun Woo
개별 필드 특성에 따라 값 차이 계산 방법 상이
지식정보처리및응용
‹#›
일반 데이터 간 비유사도
일반 데이터
– 1) 이진 필드의 값 차이
값 같은 경우 0, 다른 경우 1
예) 과거 1번 데이터와 미래 데이터 간 거리 (비유사도)
과거 데이터
ID 첫 대출 신용카드
1
X
4
2
O
3
3
O
1
4
X
3
5
O
7
6
O
5
7
X
4
8
O
3
9
O
2
10
O
1
Kim Jun Woo
연소득
3500
2700
3000
3100
2800
3700
4200
4000
3200
3300
미래 데이터
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
첫 대출 신용카드 연소득
X
2
3000
불이행
?
비유사도 d (첫대출 ) 2 d (신용카드 ) 2 d (연소득 ) 2
0 2 (4 2) 2 (3500 3000) 2
250004 500.004
지식정보처리및응용
‹#›
일반 데이터 간 비유사도
일반 데이터
– 주의) 다양한 종류 필드 포함한 데이터 간 비유사도
필드마다 값 차이 측정 방법 상이
모든 필드 0~1사이 값으로 정규화 바람직
예) 정규화하지 않을 시, 이진 필드 값 차이는 비유사도에 영향 미미
과거 데이터
ID
1
첫 대출 신용카드 연소득
X
4
3500
미래 데이터
불이행
No
첫 대출 신용카드 연소득
X
2
3000
불이행
?
비유사도 0 2 (4 2) 2 (3500 3000) 2 250004 500.004
과거 데이터
ID
1
첫 대출 신용카드 연소득
X
4
3500
미래 데이터
불이행
No
첫 대출 신용카드 연소득
O
2
3000
불이행
?
비유사도 12 (4 2) 2 (3500 3000) 2 250005 500.005
Kim Jun Woo
지식정보처리및응용
‹#›
일반 데이터 간 비유사도
일반 데이터
– 주의) 다양한 종류 필드 포함한 데이터 정규화
특정 필드 값을 0~1사이로 조정
해당 필드 값 차이 ( = d(필드) ) 가 0~1사이로 조정됨
과거 데이터 기준으로 정규화
예)
과거 데이터
ID 첫 대출 신용카드
1
X
4
2
O
3
3
O
1
4
X
3
5
O
7
6
O
5
7
X
4
8
O
3
9
O
2
10
O
1
Kim Jun Woo
연소득
3500
2700
3000
3100
2800
3700
4200
4000
3200
3300
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
최대값 : 7
최소값 : 1
(값-1) / (7-1)
최대값 : 4200
최소값 : 2700
(값-2700) / (4200-2700)
지식정보처리및응용
‹#›
일반 데이터 간 비유사도
일반 데이터
– 2) 다진 범주형 필드의 값 차이
측정하기 가장 곤란
다양한 방법 제안됨
예) 직업 : { 회사원, 공무원, 자영업 }의 3개 값 가질 수 있는 경우
과거 데이터
ID 첫 대출 신용카드
1
X
4
2
O
3
3
O
1
4
X
3
5
O
7
6
O
5
7
X
4
8
O
3
9
O
2
10
O
1
Kim Jun Woo
직업
회사원
회사원
공무원
자영업
자영업
공무원
회사원
자영업
공무원
회사원
미래 데이터
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
첫 대출 신용카드 직업
X
2
공무원
불이행
?
비유사도 d (첫대출 ) 2 d (신용카드 ) 2 d (직업 ) 2
지식정보처리및응용
‹#›
VDM
VDM (value difference metric)
– 다진 범주형 필드 값 차이 측정 방법 중 하나
클래스 속성 존재하는 데이터에서 사용 가능
개별 값 갖는 레코드들의 클래스 특성 비교
참조) SDM (Subspace Difference Metric) 등 수정된 버전 존재
예) 회사원-공무원 차이는 얼마인가?
과거 데이터
ID 첫 대출 신용카드
1
X
4
2
O
3
3
O
1
4
X
3
5
O
7
6
O
5
7
X
4
8
O
3
9
O
2
10
O
1
Kim Jun Woo
직업
회사원
회사원
공무원
자영업
자영업
공무원
회사원
자영업
공무원
회사원
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
지식정보처리및응용
‹#›
VDM
VDM 기본 전략
– 두 값이 유사한 경우
각 값을 갖는 레코드 클래스 특성 유사할 것
클래스 특성 상이할 경우, 서로 차이 큰 값
– 예) 직업 필드 값 기준으로 과거 레코드 분리한 경우
공무원-회사원은 비슷한 값, 공무원-자영업은 차이 큰 값
과거 데이터
ID 첫 대출 신용카드
1
X
4
2
O
3
3
O
1
4
X
3
5
O
7
6
O
5
7
X
4
8
O
3
9
O
2
10
O
1
Kim Jun Woo
직업
회사원
회사원
공무원
자영업
자영업
공무원
회사원
자영업
공무원
회사원
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
ID 첫 대출 신용카드
1
X
4
2
O
3
7
X
4
10
O
1
ID 첫 대출 신용카드
3
O
1
6
O
5
9
O
2
직업
회사원
회사원
회사원
회사원
직업
공무원
공무원
공무원
불이행
No
No
No
Yes
불이행
No
No
No
ID
4
5
8
직업
자영업
자영업
자영업
불이행
No
Yes
Yes
첫 대출 신용카드
X
3
O
7
O
3
지식정보처리및응용
불이행 잘 없음
불이행 잘 없음
불이행 많음
‹#›
VDM
VDM 계산 방법
– 다진 범주형 필드의 두 값 간 차이
양쪽 값 갖는 레코드들의 클래스 값 비율 차이 총합
– 예) 클래스 값이 { Yes / No } 두 가지인 경우
Yes 비율 차이 + No 비율 차이
ID 첫 대출 신용카드
1
X
4
2
O
3
7
X
4
10
O
1
직업
회사원
회사원
회사원
회사원
불이행
No
No
No
Yes
ID
3
6
9
첫 대출 신용카드
O
1
O
5
O
2
Yes 비율 : 1 / 4
No 비율 : 3 / 4
회사원 - 공무원 간 차이
불이행
No
No
No
Yes 비율 : 0 / 3
No 비율 : 3 / 3
1
3
1 1 1
0 1
4
4
4 4 2
Yes 비율 차이
Kim Jun Woo
직업
공무원
공무원
공무원
No 비율 차이
지식정보처리및응용
‹#›
VDM
VDM 특성
– 클래스 분포 차이 클 경우 큰 값
ID
4
5
8
예) 공무원 – 자영업 간 차이
첫 대출 신용카드
X
3
O
7
O
3
직업
자영업
자영업
자영업
불이행
No
Yes
Yes
ID
3
6
9
첫 대출 신용카드
O
1
O
5
O
2
Yes 비율 : 2 / 3
No 비율 : 1 / 3
공무원 - 자영업간 차이
불이행
No
No
No
Yes 비율 : 0 / 3
No 비율 : 3 / 3
2
1
2 2 4
0 1
3
3
3 3 3
Yes 비율 차이
Kim Jun Woo
직업
공무원
공무원
공무원
No 비율 차이
지식정보처리및응용
‹#›
VDM
VDM 활용
– 레코드 간 거리(비유사도) 측정에 사용 가능
예)
과거 데이터
ID 첫 대출 신용카드
1
X
4
2
O
3
3
O
1
4
X
3
5
O
7
6
O
5
7
X
4
8
O
3
9
O
2
10
O
1
Kim Jun Woo
직업
회사원
회사원
공무원
자영업
자영업
공무원
회사원
자영업
공무원
회사원
미래 데이터
불이행
No
No
No
No
Yes
No
No
Yes
No
Yes
첫 대출 신용카드 직업
X
2
공무원
불이행
?
비유사도 d (첫대출 ) 2 d (신용카드 ) 2 d (직업 ) 2
02 22 0.52
지식정보처리및응용
‹#›
인접 이웃 분류기의 기하학적 관찰
데이터와 좌표 공간
– 분류기의 기하학적 해석
일반 필드들을 축으로 하는 좌표 공간 생성 가능
레코드 1개 : 좌표 공간 상의 점 1개
– 인접 이웃 분류기 분류 방법
1) 미래 레코드와 가장 인접한 k개의 과거 레코드 선별
2) 선별된 점들 중 다수를 차지하는 클래스로 판정
– 의사결정나무와의 차이점
Kim Jun Woo
좌표 공간을 미리 세부 영역으로 분할하지 않음
지식정보처리및응용
‹#›
인접 이웃 분류기의 기하학적 관찰
간단한 데이터 관찰
– 일반 필드
과거 데이터
수치형 필드 X, Y
– 클래스
{ Yes / No } 두 가지 값 가능
– 이상치 2개 포함됨
Y
: Yes
4
: No
3
2
1
1
Kim Jun Woo
2
3
4
X
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
지식정보처리및응용
X
0.4
0.9
1.1
1.1
1.2
1.5
1.7
1.7
2.1
2.2
2.5
2.5
3.1
3.1
3.5
3.5
1.2
2.9
Y
2.6
1.1
3.0
1.9
0.8
2.4
1.1
1.5
2.8
1.6
2.5
1.0
1.4
0.4
1.9
1.0
1.2
2.1
Class
Yes
No
Yes
No
No
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
‹#›
인접 이웃 분류기의 기하학적 관찰
인접 이웃 분류기의 작동
– 미래 레코드 발생 시, 인접한 과거 레코드 선별하여 판정
예) k=3 인 경우
Y
미래 데이터
X
2.7
Y Class
2.2
?
4
Y
4
미래 데이터 위치
3
3
2
2
1
1
1
2
3
4
X
가장 인접(유사)한 3개
1
2
3
4
X
비슷한 과거 레코드들이 2대1로 Yes 이므로
이번 미래 데이터도 Yes 로 판정
Kim Jun Woo
지식정보처리및응용
‹#›
인접 이웃 분류기의 기하학적 관찰
매개변수 k
– 미래 데이터 분류 시 참조할 인접 과거 레코드 개수
적당한 값 부여 필요
– 너무 작은 k 사용
이상치에 민감해짐
잘못된 분류 가능성 높아짐
예) k=1
Y
미래 데이터
X
2.7
Y Class
2.2
?
4
가장 인접(유사)한 1개
3
2
No 로 판정
1
1
Kim Jun Woo
2
3
4
X
지식정보처리및응용
‹#›
인접 이웃 분류기의 기하학적 관찰
매개변수 k
– 너무 큰 k 사용
현재 미래 레코드와 그다지 유사하지 않은 과거 레코드 이용하게 됨
잘못된 분류 가능성 높아짐
예) k=10
Y
미래 데이터
X
0.6
Y Class
1.5
?
4
가장 인접(유사)한 1개
3
2
최인근에는 No가 우세하나
k=10인 경우 Yes, No가 5대5
1
1
Kim Jun Woo
2
3
4
X
지식정보처리및응용
‹#›
인접 이웃 분류기 기타 특성
인접이웃 분류기 장점
– 분류 판정 결과에 대한 설명 용이
과거 유사 사례를 통한 판정
판례, 임상 사례 등에 적용 용이
– 과거 레코드 구성 복잡해도 분류 비교적 잘 함
예) 좌표 공간 상에서 각 클래스 영역이 사선으로 분할되는 경우
비교) 의사결정나무 : 좌표 평면을 수직, 수평선으로만 분할
Y
4
3
2
1
1
Kim Jun Woo
2
3
4
지식정보처리및응용
X
‹#›
인접 이웃 분류기 기타 특성
인접이웃 분류기 단점
– 매개변수 k 값 결정 필요
일반적인 결정 방법 부재
실험, 경험을 통해 결정
– k 값에 따라 이상치에 민감
k 값이 작은 경우
– 1회 분류 판정에 오랜 시간 소요
Kim Jun Woo
미래 레코드 발생 시, 모든 과거 레코드와 거리 계산 필요
비교) 의사결정나무 : 트리 생성 후에는 분류 판정이 비교적 간단
지식정보처리및응용
‹#›
인접 이웃 분류기 기타 특성
인접이웃 분류기 vs. 의사결정나무
의사결정나무
인접이웃
분류기
부지런한 학습자
게으른 학습자
(Eager learner)
(Lazy learner)
이상치에 강건
이상치에 민감
빠른 판정
느린 판정
단순한 구조의 데이터
복잡한 구조의 데이터
Kim Jun Woo
지식정보처리및응용
‹#›
인접 이웃 분류기 기타 특성
부지런한 학습자 (eager learner)
– 미래 데이터 등장 전 과거 데이터 내 패턴을 미리 추출하는 분류법
의사결정나무
지지도 벡터 기계 (Support vector machine)
규칙 기반 분류기 (rule based classifier)
인공신경망 (artificial neural network) 등
게으른 학습자 (lazy learner)
– 미래 데이터 등장 전에는 과거 데이터 분석하지 않음
Kim Jun Woo
인접 이웃 분류기 등
지식정보처리및응용
‹#›