KNN
KNN은 지도 학습 알고리즘 중 하나이다.
어떤 데이터가 주어지면 그 주변(이웃)의 데이터를 살펴본 뒤 더 많은 데이터가 포함되어 있는 범주로 분류한다.
K의 default값은 5이다. 가장 가까운 주변 5개 데이터를 기반으로 분류한다는 것이다.
일반적으로 K는 홀수를 사용한다. 짝수일 경우 동점이 되어 하나의 결과를 도출할 수 없기 때문이다.
Lazy Model
KNN의 특징은 훈련이 따로 필요 없다는 것이다. 다른 모델들은 clf.fit(x_train, y_train)의 코드를 통해 훈련시킨다. 즉 훈련데이터를 기반으로 모델을 만들고 테스트 데이터로 테스트를 하는 방식이다. 하지만 KNN은 훈련이 따로 필요 없다. 그냥 훈련 데이터를 저장하는게 훈련의 전부이다. real-time 예측이 이루어진다. 모델을 별도로 구축하지 않는다는 의미로 게으른 모델(Lazy model)이라고 부른다. 따라서 SVM이나 선형 회귀보다 빠르다.
'🤖AI > 머신러닝' 카테고리의 다른 글
[머신러닝] SVM (Support Vector Machine) (0) | 2021.07.21 |
---|---|
[부스트코스] [머신러닝을 위한 파이썬] 완강 후기 (0) | 2021.01.20 |
[부스트코스] [머신러닝을 위한 파이썬] ML Overview (0) | 2021.01.16 |
[머신러닝] Pandas로 데이터 다루기 (0) | 2021.01.07 |
[머신러닝] 원핫인코딩(One-hot Encoding) (0) | 2021.01.06 |