Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화...

37
Clustering with Minitab 양견모 [email protected]

Transcript of Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화...

Page 1: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

Clustering with Minitab

양견모 [email protected]

Page 2: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

공공 전력 사업체 분석 예제

• 유사한 사업체들을 그룹화

– 군집화 해야 하는 레코드: 22개의 사업체

– 레코드 변수의 수: 8개

– 규제 완화에 대한 비용 효과 예측 연구등에 사용 • 다양한 사업체 대한 상세한 비용 예측 모형 구축의 필요성

• 군집화를 통한 군집별로 대표적 사업체를 대상으로만 모형 구축

• 시간과 노력 감소

– 예로 매출액(sales)와 연료비(fuel cost)변수를 살펴봄 • 군집화에 도움이 되는 예

1

Page 3: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

데이터 셋

• Fixed_charge: 고정부채보상배율(수익/부채)

• RoR: 투자수익률

• Cost: 킬로와트당 생산비용

• Load_factor: 연간 부하량

• Demand_growth: 1974년부터 1975년까지의 최고 전력 수요량(kwh) 증가율(%)

• Sales: 전력판매량(kwh/년)

• Nuclear: 원자력발전의 비율(%)

• Fuel Cost: 총 연료비용(cents/kwh)

2

• 매출액과 연료비 변수

Page 4: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

산점도

• 그래프->산점도(단순)->Y변수: 연료비, X변수: Sales

3

• 매출액과 연료비 변수

Click

Page 5: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

산점도

4

• 매출액과 연료비 변수

Page 6: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

산점도 분석

• 2~3개의 군집이 나타나 있는 것으로 보임

– 높은 연료비 낮은 매출액

– 낮은 연료비, 상대적으로 낮은 매출액

– 낮은 연료비, 높은 매출액

5

• 매출액과 연료비 변수

Page 7: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

군집화 알고리즘

• 개별 레코드 사이의 거리를 측정

• 거리에 따라 군집들을 형성

• 계층적 방법(Hierarchical methods)

– 병합 또는 분할 방법 • 병합방법: n개의 군집들을 가지고 최종적으로 하나의 군집이 남을 때 까지 병합

• 분할방법: 모든 레코드를 포함하는 하나의 군집에서 나누어 짐

– 분석의 목적이 군집들을 자연적 계층 구조로 정렬할 때 유용

– 계층적 병합 군집화

• 비 계층적 방법(Nonhierarchical methods)

– 미리 군집의 수를 결정

– 레코드들을 정해 진 군집에 할당

– 적은 계산량

– 대량의 데이터 베이스에서 유용

– K-평균 군집화

6

• 매출액과 연료비 변수

Page 8: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

수치형 척도의 정규화(표준화)

• 거리 계산의 척도는 각 변수의 단위(scale)에 영향 받음

– 값이 큰 변수는 총 거리에 매우 큰 영향을 줌

• 정규화

– (측정치-평균)/표준편차

• 계산->표준화

7

Click

Click

Page 9: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

수치형 척도의 정규화(표준화)

8

정규화 전 정규화 후

Page 10: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

정규화된 산점도

9

Page 11: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

거리 측도

• 두 접(레코드)간의 거리를 계산하는 방법

• 고려해야 할 사항

– 무엇이 측정 되고 있는가?

– 레코드 간의 어떤 관련이 있는가?

– 어떤 척도(수치형, 순서형, 명목형)로 처리해야 하는가?

– 극단치들이 있는가?

• 유클리드 거리 척도

– 큰 값에 영향을 많이 받음(정규화 필요)

– 측정항목들 사이의 관계가 무시 • 측정학목들이 실제 강한 상관 관계가 있다면 다른 형태의 거리척도(통계적 거리 등)를 사용

– 극단치에 민감

10

Page 12: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

연결 방법

• 평균거리: 하나의 군집 내에 있는 관측지들과 다른 군집 내에 있는 관측치들 사이의 모든 가능한 거리의 평균 거리

• 중심거리: 두 군집의 중심간의 거리

• 완전거리: 가장 멀리 떨어진 두 관측치 사이의 거리

• McQuitty: 곧 결합할 군집과 다른 군집간 거리의 평균

• 중위수: 한 군집의 한 항목과 다른 군집의 한 항목 간 거리의 중위수

• 단일거리: 가장 가까이에 있는 두 관측치 사이의 거리

• Ward: 연결 가능한 군집조합 중 연결된 후에 군집 내 제곱합을 계산, 최소 제곱합을 가지는 군집의 거리 연결

11

• 두 군집을 병합 할 때 군집을 연결 하는 기준

Page 13: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

계층적 병합 군집화

• 하나의 레코드로 구성된 군집들로부터 모든 레코드들로 구성된 하나의 군집만 남을 때까지 가장 가까운 2개의 군집들을 단계적으로 병합

– 통계분석->다변량 분석->

– 관측 개체 군집 분석: 각각 변수들 간의 그룹화

– 변수 군집 분석: 한 변수 내에서의 그룹화

• 덴드로그램

– 군집화 과정 및 결과를 나타내는 나무 형태의 도표

– 아랫부분에 레코드가 표시

– 수직선의 길이는 레코드 사이의 거리, 유사한 레코드들 연결

12

Page 14: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

단일 연결법(관측 개체 군집 분석)

• 통계분석->다변량 분석->관측 개체 군집 분석

• 연결방법: 단일, 거리 측도: Euclid, 군집수: 1

13

Click

Page 15: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

단일 연결법(관측 개체 군집 분석)

• 가장 왼쪽 군집이 단일 군집

14

단일 군집

Page 16: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

단일 연결법(관측 개체 군집 분석)

• 가장 상위의 연결선으로 군집화(2개의 군집)

• 가장 왼쪽 군집이 단일 군집

15

단일 군집

Page 17: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

단일 연결법(관측 개체 군집 분석)

• 두 번째 연결선으로 군집화(3개의 군집)

16

단일 군집

Page 18: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

완전 연결법(관측 개체 군집 분석)

• 적절한 군집으로 나누어 짐

• 가장 선호하는 방법

17

Page 19: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

평균 연결법(관측 개체 군집 분석)

• 완전 연결 보다 최초의 군집의 수가 적음

18

Page 20: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

군집 평가

• 목적: 의미 있는 군집들을 산출

• 군집 분석의 유용성

– 군집의 설명 가능성 • 군집 분석에 사용된 각 변수들에 대해 각 군집의 요약통계량(평균값, 최소값, 최대값)을 구함

• 군집 분석에서 누락된 변수가 있는지 조사

• 군집에 대한 이해를 기초로 각 군집에 맞는 명칭 부여

– 군집의 안정성 • 입력값들이 약간 달라질 때 나누어 진 군집들이 유의하게 변화하는지 조사

• 데이터를 나누어 한쪽 데이터를 사용하여 만든 군집이 나머지 데이터에도 유사한지 확인

– 분할된 데이터 집합으로 군집 분석 수행

– a집합의 군집 중심점을 이용하여 B의 각 레코드가 속하는 군집을 결정

– B의 군집 결과가 모든 데이터를 사용하여 얻은 군집 결과와 비교하여 일관성 조사

– 군집의 분할 • 군집 간과 군집 내 변동률 조사

19

Page 21: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

계층적 군집화의 장단점

• 장점

– 군집화가 데이터에 의해 수행

– 덴드로그램의 표현으로 설명이 쉬움

• 단점

– 데이터 집합이 매우 클 경우 계산 횟수가 많아 짐

– 단 한번의 군집화 시도, 초기에 잘못 분배되면 재분배 불가능

– 안정성이 낮은 경향

– 단일,완전 거리척도가 바뀌어도 군집 분석의 결과에 변화가 적음

– 평균연결법의 척도는 완전히 다른 군집들이 형성될 수 있음

– 극단치에 민감

20

Page 22: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

비계층적 군집화(k-평균 군집 분석)

• 군집의 수를 명시(군집의 수 결정이 중요)

• 군집들 내부의 분산을 최소화 하여 각각의 사례를 군집들 중 하나에 할당

• 측정항목을 기준으로 군집들이 가능한 한 동질성을 갖도록 사전 정의된 군집으로 표본을 나눔

• 군집내 분산 측정

– 군집의 중심에서 부터 관찰치까지의 거리의 합 • 유클리드 거리의 제곱합

• 정수계획법을 포함하는 최적화 문제

– 휴리스틱 방법 • 빠르면서 만족

• 최적은 아님

• k-평균 알고리즘

• 알고리즘

– k개의 초기 군집으로 시작

– 가장 가까운 중심을 가진 군집에 할당

– 관찰치가 빠지거나 추가되면 군집의 중심을 재 계산

– 군집 사이에 관찰치 이동이 분산을 증가시키면 군집화 중단

21

Page 23: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

비계층적 군집화(k-평균 군집 분석)

• 통계분석->단변량 분석->K-평균 군집 분석

22

Click

Click

Page 24: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

비계층적 군집화(k-평균 군집 분석)

• 결과(표준화 전), 군집의 수: 6

23

Page 25: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

비계층적 군집화(k-평균 군집 분석)

• 결과(표준화 후), 군집의 수: 6

24

Page 26: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 데이터 집합

– 77개의 아침용 시리얼 제품에 대한 영양 정보, 진열 상태, 평가에 대한 정보

• 목표

– 단일 연결법과 완전 연결법 비교

– 의미 있는 군집 도출

– 어린이를 위한 시리얼 추천

• 문제

– 표준화된 항목으로 유클리드 거리를 사용하여 계층적 군집화를 적용하시오.군집화의 개수는 단일 연결법과 완전 연결법을 비교하시오.

– 군집을 분석하세요.

– 초등학생을 위한 시리얼 세트를 추천하시오. 데이터 표준화를 해야 하는가?데이터의 모든 변수를 사용해야 하는가?

25

Page 27: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 표준화된 항목으로 유클리드 거리를 사용하여 계층적 군집화를 적용하시오.군집화의 개수는 단일 연결법과 완전 연결법을 비교하시오.

• 다변량 분석->관측 개체 군집 분석->단일, 완전, 군집수 4~6

26

Click Click

Page 28: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 연결방법: 단일, 군집수: 5

27

문제: 파란색과 핑크색의 군집에 1개의 종류만 그룹화 되어 있음

Page 29: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 연결방법: 완전, 군집화: 5

28

문제: 파란색 군집에 너무 많은 관측치가 포함

Page 30: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 연결 방법: 단일, 군집화: 6

29

문제: 파란색과 보라색의 군집에 1개의 종류만 그룹화 되어 있음

Page 31: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 연결방법: 완전, 군집화: 6

30

Page 32: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 적절한 군집 선택

– 단일 연결 방식에서는 단일 군집이 도출

– 완전 군집화 덴드로그램의 관측값들을 분석

31

Page 33: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 어른들이 선호하는 시리얼의 그룹

• 어린이 들이 선호하는 시리얼의 그룹(높은 설탕 비율)

• 군집화된 결과를 보고 미리 가지고 있던 정보(아이들이 선호하는 시리얼은 설탕 비율이 높다)로 추론

32

Page 34: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 초등학생을 위한 시리얼 세트를 추천하시오. 데이터 표준화를 해야 하는가?데이터의 모든 값을 사용해야 하는가?

– 표준화를 해야 함 • 각 데이터 별로 측정 단위가 다를 수 있기 때문에 표준화를 해주지 않으면 하나의 값이 다른 값들에 비해 크기가 크거나 작을 수 있다.

• 예: mg으로 측정된 값과 g으로 측정된 값의 단위가 다르기 때문에 표준화가 필요

– 데이터의 모든 값으로 군집화할 필요는 없음 • 사전 정보에 의해서 어린이에게 중요한 영향소만을 생각해도 된다.

• 예: 어린이 건강에 중요한 값(protein, fat, sodium, sugar)

33

Page 35: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 통계분석->다변량 분석-> 관측 개체 군집 분석

• 변수(protein, fat, sodium, fiber), 완전 연결 방법, 군집수 3

34

Click Click

Page 36: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 군집의 중심을 보고 판단

• protein dl 높고 fat이 낮으며 fiver가 높은 군집 1을 선택

35

Page 37: Clustering with Minitab - Yonsei Universitysclab.yonsei.ac.kr/courses/12samsung/data/1.pdf군집화 알고리즘 •개별 레코드 사이의 거리를 측정 •거리에 따라

S FT COMPUTING @ YONSEI UNIV . KOREA 16

예제: 아침용 시리얼

• 그래프당 최대 관측 개수 설정

• 100%_Bran, All-Bran, All-Bran_with_Extra_Fiber를 추천

36

Click

Click