머신러닝에서의 모델
머신러닝 알고리즘을 구현한 프로그램 또는 알고리즘을 수식 등으로 구체화하여 표현한 것을 모델이라고 부름.
특성
데이터를 표현하는 하나의 성질
ex) 분류할 대상의 무게나 길이
정확도
정확한 답을 몇 개 맞혔는지 백분율로 나타낸 값
사이킷런에서는 0~1사이의 값으로 출력
정확도 = 정확히 맞힌 개수/전체 데이터 개수
k-최근접 알고리즘이란
가장 간단한 머신러닝 알고리즘 중 하나로
어떤 규칙을 찾기보다는 전체 데이터를 메모리에 가지고 있는 것이 전부인 알고리즘
KNeighborsClassifier()는 k-최근접 이웃 분류 모델을 만드는 사이킷런 클래스
n_neighbors 매개변수로 이웃의 개수를 지정
기본값은 5
p매개변수로 거리를 재는 방법을 지정하고
1이면 맨해튼 거리를 사용하고 2일 경우 유클리디안 거리를 사용한다.
기본값은 2
n_jobs 매개변수로 사용할 CPU코어를 지정가능
-1로 설정하면 모든 CPU코어를 사용
이웃 간의 거리 계산 속도를 높일 수 있지만 fit() 메서드에는 영향이 없음
기본값은 1
import sklearn
model = sklearn.neighbor.KNeighborsClassifier()
fit()
훈련(Training)할 때 사용하는 메서드
처음 두 매개변수로 훈련에 사용할 특성과 정답 데이터를 전달
모델에 데이터를 전달하여 규칙을 학습하는 과정
predict()
사이킷런 모델을 훈련하고 예측할 때 사용하는 메서드
특성 데이터 하나만 매개변수로 받음
score()
훈련된 사이킷런 모델의 성능을 측정
처음 두 매개변수로 특성과 정답 데이터를 전달
이 메서드는 먼저 predict() 메서드로 예측을 수행한 다음 분류 모델일 경우 정답과 비교하여 올바르게 예측한 개수를 비율로 반환
'Machine Learning' 카테고리의 다른 글
SVM Support Vector Machine (0) | 2021.11.25 |
---|---|
Training the K-NN model by Python (0) | 2021.11.23 |
Logistic Regression 로지스틱 회귀 with python (0) | 2021.11.22 |
[Hands-On]데이터 전처리 템플릿 (0) | 2021.11.17 |