Hiperparametry KNN
Dobrą praktyką jest wypróbowanie nowo zdobytej wiedzy na nowym algorytmie. Algorytm k-najbliższych sąsiadów nie jest już tak popularny jak kiedyś, ale wciąż może być świetnym wyborem dla danych, w których grupy obserwacji zachowują się podobnie. Czy tak może być w przypadku naszych użytkowników kart kredytowych?
W tym ćwiczeniu przetestujesz kilka różnych wartości jednego z kluczowych hiperparametrów algorytmu KNN i porównasz wyniki.
Do dyspozycji masz następujące ramki danych:
X_train,X_test,y_train,y_test
To ćwiczenie jest częścią kursu
Strojenie hiperparametrów w Pythonie
Instrukcje do ćwiczenia
- Zbuduj estymator KNN dla następujących wartości
n_neighbors: [5, 10, 20]. - Dopasuj każdy model do danych treningowych i wygeneruj predykcje.
- Oblicz dokładność każdego modelu i wyświetl wyniki.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(_____, _____, _____))