Hiperparámetros de KNN
Para aplicar los conceptos del ejercicio anterior, es buena práctica probar lo aprendido con un nuevo algoritmo. El algoritmo de k vecinos más cercanos (KNN) ya no es tan popular como antes, pero puede ser una excelente opción cuando los datos contienen grupos que se comportan de forma similar. ¿Podría ser este el caso de nuestros usuarios de tarjetas de crédito?
En este ejercicio vas a probar varios valores para uno de los hiperparámetros clave del algoritmo KNN y comparar su rendimiento.
Tendrás disponibles:
- DataFrames
X_train,X_test,y_train,y_test
Este ejercicio forma parte del curso
Ajuste de hiperparámetros en Python
Instrucciones del ejercicio
- Construye un estimador KNN para los siguientes valores de
n_neighbors[5,10,20]. - Ajusta cada uno con los datos de entrenamiento y genera predicciones.
- Obtén la accuracy de cada modelo con
accuracy_scoree imprímelas.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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(_____, _____, _____))