시작하기무료로 시작하기

KNN의 하이퍼파라미터

이전 연습에서 배운 개념을 적용하려면, 새로운 알고리즘에 시도해 보는 것이 좋습니다. k-nearest-neighbors 알고리즘은 예전만큼 대중적이지는 않지만, 유사한 방식으로 행동하는 데이터 군집이 있을 때는 훌륭한 선택이 될 수 있어요. 우리 신용카드 사용자 데이터에도 이런 특성이 있을까요?

이번에는 knn 알고리즘의 핵심 하이퍼파라미터 중 하나에 대해 여러 값을 시도하고 성능을 비교해 보겠습니다.

다음 데이터가 제공됩니다:

  • X_train, X_test, y_train, y_test DataFrame

이 연습은 강의의 일부입니다

Python에서의 하이퍼파라미터 튜닝

강의 보기

연습 안내

  • n_neighbors 값을 [5,10,20]로 바꿔가며 knn 추정기를 만드세요.
  • 각 모델을 학습 데이터에 적합하고, 예측 값을 생성하세요.
  • 각 모델의 정확도를 계산해 출력하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Build a knn estimator for each value of n_neighbours
knn_5 = KNeighborsClassifier(n_neighbors=____)
knn_10 = KNeighborsClassifier(n_neighbors=____)
knn_20 = KNeighborsClassifier(n_neighbors=____)

# Fit each to the training data & produce predictions
knn_5_predictions = knn_5.fit(_____, _____).predict(_____)
knn_10_predictions = knn_10.fit(_____, _____).predict(_____)
knn_20_predictions = knn_20.fit(_____, _____).predict(_____)

# Get an accuracy score for each of the models
knn_5_accuracy = accuracy_score(y_test, _____)
knn_10_accuracy = accuracy_score(y_test, _____)
knn_20_accuracy = accuracy_score(y_test, _____)
print("The accuracy of 5, 10, 20 neighbours was {}, {}, {}".format(_____, _____, _____))
코드 편집 및 실행