강의자료 · 머신러닝의 이해

Unsupervised Learning

군집 수와 스케일을 바꾸면 같은 자료의 묶음도 달라집니다. 군집 번호 자체에 의미를 부여하지 않고 구조를 읽습니다.

실습 코드 앞의 코드 셀에서 import numpy as np, import matplotlib.pyplot as plt를 실행하세요. 배열 연산에는 np, 그림에는 plt를 사용합니다.

실습 전에

01 군집 번호 0은 특별한 의미가 있을까요?

설명

번호는 임의의 식별자이므로 중심과 배정 구조로 군집을 비교합니다.

02 특징의 단위가 다르면 거리도 달라질까요?

설명

값의 범위가 큰 특징이 거리를 지배할 수 있어 Standardization 전후를 비교합니다.

실습

실습용 노트북 미리보기실습용 노트북 다운로드

1. 군집 수와 관성값

시작 조건

make_blobs(n_samples=180,centers=3,cluster_std=.8,random_state=7), K∈{2,3,4}K\in\{2,3,4\}를 사용합니다.

진행 방법

  1. 각 K에서 KMeans(random_state=7,n_init=10)를 학습하세요.
  2. 군집 중심·배정 결과를 그리고 Inertia와 Silhouette를 적으세요.

남길 결과

기록 항목과 확인할 점
K
Inertia
Silhouette
군집 수별 관찰

확인할 점

  • 군집 번호 자체를 정답 Class라고 해석하지 않았는가?

2. 특징 단위 변화

시작 조건

X의 첫 열만 10배 하고 원본·변경본·열별 Standardization 결과를 비교합니다.

진행 방법

  1. 원본 X, 첫 열을 10배 한 X2, X2를 열별 Standardization한 자료를 각각 준비하세요.
  2. 각 자료에서 K∈{2,3,4}K\in\{2,3,4\}의 KMeans를 다시 학습하세요. random_state=7, n_init=10은 유지합니다.
  3. 자료 조건별 군집 배정·중심을 그림으로 표시하고 K별 Inertia·Silhouette를 같은 형식의 표에 기록하세요. 첫 열을 확대했을 때 군집 배정과 중심이 달라졌는지 그림에서 판단하고, 그 근거를 설명하세요.

남길 결과

기록 항목과 확인할 점
자료 조건·K
군집 그림·중심
Inertia
Silhouette·군집 방향 해석

확인할 점

  • 세 자료 조건에서 같은 K와 Seed를 사용했는가?

3. 다른 입력에서도 확인하기

시작 조건

cluster_std=1.6으로 바꾼 자료에서 같은 K들을 비교합니다.

진행 방법

  1. make_blobs에서 cluster_std만 1.6으로 바꾸고 표본 수·중심 수·Seed는 유지하세요.
  2. 같은 세 K로 KMeans를 학습해 군집 그림과 Inertia·Silhouette를 구하세요. cluster_std=.8의 기록 옆에 같은 K의 결과를 적으세요.
  3. 생성 시 세 중심이 있다는 사실과, 산점도에서 세 집단이 뚜렷하게 분리되어 보이는지를 구분해 설명하세요.

남길 결과

기록 항목과 확인할 점
cluster_std·K
군집 그림
Inertia·Silhouette
두 자료의 분리 양상

확인할 점

  • 같은 K끼리 자료의 겹침 정도를 비교했는가?