CommencezCommencez gratuitement

Hyperparamètres de KNN

Pour mettre en pratique les notions vues dans l'exercice précédent, il est recommandé de les essayer sur un nouvel algorithme. L'algorithme des k-plus proches voisins est moins populaire qu'avant, mais il peut encore être un excellent choix lorsque les données forment des groupes qui se comportent de façon similaire. Est-ce le cas pour nos utilisateurs de carte de crédit?

Ici, vous allez essayer plusieurs valeurs pour un des hyperparamètres centraux de l'algorithme knn et comparer la performance.

Vous avez à votre disposition :

  • Les DataFrame X_train, X_test, y_train, y_test.

Cette activité fait partie du cours

Ajustement des hyperparamètres en Python

Voir le cours

Instructions de l’exercice

  • Construisez un estimateur knn pour les valeurs suivantes de n_neighbors [5,10,20].
  • Ajustez chaque modèle aux données d'entraînement et produisez des prédictions.
  • Calculez une exactitude (accuracy) pour chaque modèle et affichez les résultats.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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(_____, _____, _____))
Modifier et exécuter le code