728x90
반응형

1.K-MEAN 군집화

==> 비지도 학습의 대표적인 알고리즘 중 하나로 목표 변수가 없는 상태에서 데이터를 비슷한 유형끼리 묶어내는 머신러닝 기법이다.

 

==> K-최근접 이웃 알고리즘과 비슷하게 거리기반으로 작동하며 적절한 K값을 사용자가 지정해야한다.

 

==> 거리 기반으로 작동하기 때문에 데이터 위치가 가까운 데이터끼리 한 그룹으로 묶는다.(K 값은 전체 그룹의 수)

 

 

클러스터링 : 수많은 데이터를 하나하나 직접 살펴보기보단 적절한 그룹으로 나누고 특징을 살펴볼 수 있다.

 

장점 :

 

구현이 비교적 간단하다.

㉡ 클러스터링 결과를 쉽게 해석할 수 있다.

 

단점 :

 

㉠ 최적의 K값을 자동으로 찾지 못하고, 사용자가 직접 선택해야 한다.

㉡ 거리기반 알고리즘이기 때문에, 변수의 스케일에 따라 다른 결과를 나타낼 수 있다.

 

 

유용한곳:

 

1> 종속변수가 없는 데이터셋에서 데이터 특성을 간단하게 살펴보는 용도

2> 마케팅이나 제품 기획 등을 목적으로 한 고객 분류

3> 지도 학습에서 종속변수를 제외하고 사용 ==> 탐색적 자료 분석 혹은 피처 엔지니어링 용도

 

 

2. K-MEAN 모델링

from sklearn.cluster import KMeans

kmeans_model = KMeans(n_clusters= 3 , random_state= 100)

#n_clusters ==> 그룹화 개수

kmeans_model.fit(data) # 학습
data['label'] = kmeans_model.predict(data) # 예측

data

예측값 DF에 추가

sns.scatterplot(x='var_1' , y='var_2' , data=data , hue='label' , palette='rainbow')

#하이퍼파라미터에 hue를 사용해 레이블별로 다른 색상 부여

산점도 그래프로 그린 군집화

2. K값 찾기_엘보우 기법

엘보우(elbow method) : 최적의 클러스터 개수를 확인하는 방법

==> 클러스터의 중점과 각 데이터 간의 거리를 기반으로 계산

 

==> 각 그룹에서의 중심과 각 그룹에 해당하는 데이터 간의 거리에 대한 합을 계산한다. ==> 이너셔 or 관성이라고 한다.

kmeans_model.inertia_ # 이니셔 확인

3090.033

 

==> 이니셔값은 클러스터의 중점과 데이터 간의 거리이므로, 작을수록 그룹별로 오밀조밀 모이게 분류됐다고 할 수 있다.

 

==> but. 그룹의 개수(K값)이 커지면 당연히 이니셔 값 작아진다. ==> 더 좋아진다고 볼 수 없다.

 

distance = []

for k in range(2, 10) :
    k_model = KMeans(n_clusters=k)
    k_model.fit(data) # 학습
    distance.append(k_model.inertia_) # 이너셔를 리스트에 저장

distance

==> 각 k별 이너셔값 파악

sns.lineplot(x= range(2,10) , y= distance)

엘보우기법

==> 확 꺾어는 x=3 지점을 포착하여 K값으로 내세운다.

 

 

3. 전처리 : 피처엔지니어링

customer_dummy = pd.get_dummies(data , columns = ['category']) # 더미 변수로 변환, 모든 범주확인 위해 drop_first= True 하지 않는다.and


customer_dummy.head()
from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()
scaled_df = pd.DataFrame(scaler.fit_transform(customer_agg) , columns = customer_agg.columns, index = customer_agg.index) # 스케일링 후 데이터프레임으로 변환

scaled_df.head()

==> 거리기반 알고리즘 StandardScaler를 사용하여 데이터 스케일러 실행

 

출처 : 데싸노트의 실전에서 통하는 머신러닝

(Golden Rabbit , 저자 : 권시현)

※혼자 공부용

 

 

 

728x90
반응형

+ Recent posts