더북(TheBook)

다음은 모델 생성 및 훈련에 대한 출력 결과입니다.

KNeighborsClassifier(n_neighbors=50)

모델에 대한 정확도를 측정합니다.

코드 3-4 모델 정확도

from sklearn.metrics import accuracy_score
y_pred = knn.predict(X_test)
print("정확도: {}".format(accuracy_score(y_test, y_pred)))

그러면 다음 결과가 출력됩니다.

정확도: 0.9333333333333333

참고로 정확도 실행 결과가 책 결과와 다를 수 있습니다. train_test_split() 메서드는 데이터를 무작위로 분할하므로 코드를 실행할 때마다 정확도에 차이가 있습니다. 여러 차례 실행한 후 평균을 찾는 것이 좋습니다.

K=50일 때 예측 값이 약 93%로, 수치가 높습니다. 그럼 이제 최적의 K 값을 구하고 그것에 대한 정확도를 살펴보겠습니다.

for 문을 이용하여 K 값을 1부터 10까지 순환하면서 최적의 K 값과 정확도를 찾습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.