Hyperparametry KNN
Aby ses lépe zorientoval/a v nově nabytých znalostech, je dobré vyzkoušet je na novém algoritmu. Algoritmus k nejbližších sousedů (k-nearest-neighbors) už není tak populární jako dříve, ale pro data, která přirozeně tvoří skupiny s podobným chováním, může být stále skvělou volbou. Mohl by to být případ i našich uživatelů kreditních karet?
V tomto cvičení vyzkoušíš několik různých hodnot jednoho ze základních hyperparametrů algoritmu KNN a porovnáš jejich vliv na výkon modelu.
K dispozici budeš mít:
- DataFrames
X_train,X_test,y_train,y_test
Toto cvičení je součástí kurzu
Hyperparameter Tuning in Python
Pokyny k cvičení
- Sestav estimátor KNN pro následující hodnoty
n_neighbors: [5, 10, 20]. - Každý model natrénuj na trénovacích datech a získej předpovědi.
- Pro každý model vypočítej skóre přesnosti a vypiš ho.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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(_____, _____, _____))