k-최근접 이웃(k-Nearest Neighbor, kNN)
: 특정 공간 내에서 입력과 제일 근접한 k개의 요소를 찾아, 더 많이 일치하는 것으로 분류 하는 알고리즘 입니다.
k - 최근접 이웃 특징
① 데이터 분류에 사용되는 아주 간단한 지도학습 알고리즘
- 지도학습 : 머신러닝 학습 시 데이터와 함께 데이터에 대한 레이블(정답)을 함께 부여하는 학습 방식.
- 데이터 분류 : 새로운 데이터를 기존 데이터의 레이블 중 하나로 분류하는 작업.
② 유사한 특성을 가진 데이터들끼리는 거리가 가깝고, 거리 공식을 사용하여 데이터 사이의 거리를 구함
③ 분류기의 효과를 높이기 위해 파라미터를 조정
④ K-Nearest Neighbors의 경우 k 값을 변경
⑤ 분류기가 부적절하게 학습되면 overfitting 또는 underfitting이 나타날 수 있음
⑥ K-Nearest Neighbors의 경우 너무 작은 k는 overfitting, 너무 큰 k는 underfitting을 보임
k-최근접 이웃(k-Nearest Neighbor, kNN)의 장단점
장점 | 단점 |
구현이 쉽다. | 예측 속도가 느리다. |
알고리즘을 이해하기 쉽다. | 메모리를 많이 쓴다. |
별도의 모델 학습이 필요 없다. | 노이즈 데이터에 예민하다. |
하이퍼 파라미터가 적다 - 이웃의 개수(k) |
농구 선수의 경기 기록을 바탕으로, 그 선수의 포지션을 예측해보기!
데이터 전처리
데이터 시각화
k-최근접 이웃 적용
'
'Anaconda > MachineLearning' 카테고리의 다른 글
[MachineLearning] 서포트 벡터머신(Support Vector Machine, SVM) (0) | 2020.11.20 |
---|---|
[MachineLearning] 사이킷런(scikit-learn) - Part2(교차검증) (0) | 2020.11.20 |
[MachineLearning] 사이킷런(scikit-learn), Part1(붓꽃 품종 예측) (0) | 2020.08.29 |
[MachineLearning] 순환신경망: RNN(Recurrent Neural Network) (0) | 2020.08.20 |
[MachineLearning] 학습 관련 기술 (0) | 2020.08.19 |