카테고리 없음

10장 비지도 클러스터링

lee___ys 2023. 4. 11. 23:20

고객 세그먼트(유사한 특성을 가진 고객 그룹)를 통한 분석하고 예측하기 

10.1 세그멘테이션

지도 - 결과그룹에 대해 암 = 답을 알고 있음 

비지도 -  결과그룹에 대해 모름

10.2 세그멘테이션 데이터 

다음 데이터는 연령,성별,가구소득,자녀수,주택소유,구독상태를 알수있다. 

비지도학습과 그룹구성원 예측을 해볼려고 한다. 

10.3 클러스터링 

1. 계층적방법 

데이터를 트리 구조로 모델링하여 수행함 

2. k-means -  중심점을 사용함 

데이터 변환

성별을 부울변수로 변환하고 gender를 삭제함 

데이터의 크기를 비슷하게 만듬 

 

10.3.2 계층적 클러스터링 

우리가 알고있는 유클리드 거리는 다음과 같다. 

 

pdist함수를 통해서 여러개의 유클리드 거리도 계산이 가능하다 .

 

하지만 숫자일때만 사용이 가능함으로 범주형인 female과 male사이의 거리를 계산하는것은 불가능하다. 

그래서 gender를 부울로 변환했다. 

squareform 함수는 위와 같다. 거리행렬을 계산해준다. 

 

크기 조정을 하지 않으면 분포는 오른쪽과 같다. 

linkage()함수로 연결 행렬을 생성한다. 

또 트리도 도식화가 가능하다.

 

 

10.3.3 계층적 클러스터링 fcluster 

fcluster는 hierarchical clustering을 수행한 결과를 기반으로 클러스터 레이블을 할당하는 함수입니다.

maxclust로 지정하고 임계 값을 지정해 4개의 클러스터가 필요함을 알려준다. 

아래와 같이 나눌수 있고 

덴드로그램을 그려보자 

*덴드로그램-트리구조로 나타낸것 

시각화도 해보자 

10.3.4 k-means 

평균을 기반으로 클러스터링을 해보자 

 

 

 

조정된 데이터는 다음과 같다 

평균도 다음과 같다. 

check_cluster를 사용했다. 

 

 

10.3.5 모델 기반 클러스터링