[인공지능] 11장 kNN 알고리즘과 K-means 알고리즘

2022. 6. 9. 03:302022-1/인공지능

1) kNN 알고리즘(지도 학습)

Weighted kNN 알고리즘

오리지널 kNN에서 k개의 이웃을 고려할 때, 모든 예제들에게 동등한 중요성을 부여함

 

but Weighted kNN?

이웃하는 예제와의 거리에 따라 가중치를 줌

-> 즉, 가까운 이웃에는 높은 가중치를 주고, 상대적으로 먼 이웃에는 낮은 가중치를 줌

가장 가까운 이웃 k개에 대해 가중치의 합이 높은 클래스를 최종 예측값으로 결정

 

kNN 알고리즘의 장점과 단점

장점

-모델을 학습할 필요가 없다

-알고리즘이 간단하다

단점

-분류를 위해서는 특징 공간에 있는 모든 데이터에 대한 정보를 메모리에 가지고 있어야 함

   -가장 가까운 이웃을 찾기 위해 새로운 데이터에서 모든 기존 데이터까지의 거리를 확인해야 하기 때문

   -데이터와 클래스가 많이 있다면, 많은 메모리 공간과 계산 시간이 필요

 

2) K-means 클러스터링(비지도 학습)

주어진 n개의 샘플(예제)을 k개의 클러스터로 분할하는 알고리즘

샘플들은 중심과의 거리가 가장 가까운 클러스터로 할당된다

 

K-means 알고리즘

sklearn을 이용한 K-means 클러스터링

K 를 결정하는 방법

팔꿈치 방법 (elbow method):

-k를 1부터 증가시키면서 K-means 클러스터링을 수행함

-k의 각 값에 대하여 SSE(sum of squared errors)의 값을 계산하고 아래와 같이 k에 대한 SSE의 꺾은선 차트를 그림

-꺾은선 차트에서 팔의 "팔꿈치"에 해당하는 k값이 가장 좋은 값

'2022-1 > 인공지능' 카테고리의 다른 글

인공지능 연습문제  (0) 2022.06.13
12장 신경망 (퍼셉트론)  (2) 2022.06.09
[인공지능] 10장 선형 회귀  (0) 2022.06.09
[인공지능] 9장 기계학습  (0) 2022.06.09
[인공지능] 7장 불확실성  (0) 2022.06.08