본문 바로가기
책 이야기/스터디 기록

[혼공머신] 비지도 학습

by meticulousdev 2022. 8. 12.
반응형

들어가며

    이 글은 한빛미디어에서 진행하는 혼공학습단 8기에 참여하면서 공부한 것들에 대한 글입니다. 책은 제 돈으로 구매하였으며, 글의 주된 내용은 책을 기반으로 하여 작성되었습니다.

 

구성

1. 내용 정리

2. 기본 미션 - k-평균 알고리즘 작동 방식 설명하기

3. 선택 미션 - Ch.06(06-3) 확인 문제 풀고, 풀이 과정 정리하기

 

1. 내용정리

1) 엘보우(elbow) 방법: k-평균 알고리즘에서 적합한 k값을 찾는 방법입니다. 이때, 이너셔(inertia) 값을 사용하는데 이는 클러스터의 중심과 클러스터에 속한 샘플 사이의 거리에 대한 제곱입니다. scikit-learn에서 k-평균 알고리즘을 사용할 경우 inertia_ 계산 가능합니다. 

 

2) 클러스터링 알고리즘의 성능 평가 지표: 책에는 언급되어 있지 않지만 클러스터링 알고리즘의 성능 지표에는 다음과 같은 것들이 있습니다.

- Davies Bouldin Score : 클러스터 내에서 샘플 간의 거리와 서로 다른 클러스터 간의 거리에 대한 비율입니다. 0에 가까울수록 좋은 것을 의미합니다.

- Silhouette Score : 클러스터 내의 거리 평균 $a$ 과 인접 클러스터의 거리 평균 $b$ 에 대해 아래 수식을 통해서 계산되는 값($SI$)들의 평균입니다. 1에 가까울수록 좋으며, -1에 가까울수록 안 좋은 것을 의미합니다.

 

$SI = \frac{(b - a)}{max(a, b)}$

 

 

2. 기본 미션 - k-평균 알고리즘 작동 방식 설명하기

    책에서는 k-평균 알고리즘의 작동원리를 다음과 같이 설명합니다.

 

1. 무작위로 k개의 클러스터 중심을 정합니다.
2. 각 샘플에서 가장 가까운 클러스터 중심을 찾아 해당 클러스터의 샘플로 지정합니다.
3. 클러스터에 속한 샘플의 평균값으로 클러스터 중심을 변경합니다.
4. 클러스터 중심에 변환가 없을 때까지 2번으로 돌아가 반복합니다.

- 혼자 공부하는 머신러닝+딥러닝; 한빛미디어; 2020; 박해선 저 / Chapter 06 | 비지도 학습 304p

 

    k-평균 알고리즘에서 제일 중요한 것은 데이터 간의 거리를 고려하여 중심(평균)을 찾고 중심을 변경하고 거리를 확인하는 과정을 반복하는 것입니다. scikit-learn을 활용한다면 내부 구조를 알 필요가 없지만 내부 함수를 상상해보면 다음과 같을 것 입니다.

 

함수 1. 무작위로 k개의 클러스터의 중심을 정하는 기능

함수 2. 클러스터의 중심과 데이터 간의 거리를 계산하여 클러스터의 샘플로 지정

함수 3. 샘플 데이터들의 평균을 구하고 중심을 다시 계산하는 기능

 

    이때, 최적의 k를 찾는 것은 별도의 기능을 요구하기 때문에 keams 함수에는 포함되지 않을 것 입니다. 

 

3. 선택 미션 - Ch.06(06-3) 확인 문제 풀고, 풀이 과정 정리하기

    다음은 확인 문제의 풀이입니다. (출처: 혼자 공부하는 머신러닝+딥러닝; 한빛미디어; 2020; 박해선 저)

 

1. 특성이 20개인 대량의 데이터셋이 있습니다. 이 데이터셋에서 찾을 수 있는 주성분 개수는 몇 개 일까요?

1) 10개

2) 20개 - 찾을 수 있는 주성분의 개수는 특성의 개수와 동일합니다.

3) 50개

4) 100개

 

2. 샘플 개수가 1,000개이고 특성 개수는 100개인 데이터셋이 있습니다. 즉 이 데이터셋의 크기는 (1000, 100)입니다. 이 데이터를 사이킷런의 PCA 클래스를 사용해 10개의 주성분을 찾아 변환했습니다. 변환된 데이터셋의 크기는 얼마일까요?

1) (1000, 10) - 샘플 개수는 줄지 않지만 특성의 개수는 주성분의 개수만큼으로 줄어듭니다.

2) (10, 1000)

3) (10, 10)

4) (1000, 1000)

 

3. 2번 문제에서 설명된 분산이 가장 큰 주성분은 몇 번째인가요?

1) 첫 번째 주성분 - 첫 번째 주성분이 분산이 가장 큰 주성분입니다.

2) 다섯 번째 주성분

3) 열 번째 주성분

4) 알 수 없음

 

긴 글 읽어주셔서 감사합니다. 
글과 관련된 의견은 언제든지 환영입니다.
반응형

댓글