Contenu du cours
Classification Avec Python
Classification Avec Python
Défi : Choisir la Meilleure Valeur de K.
Comme montré dans les chapitres précédents, le modèle fait différentes prédictions pour différentes valeurs de k (nombre de voisins).
Lorsque nous construisons un modèle, nous voulons choisir le k qui mènera à la meilleure performance. Et dans le chapitre précédent, nous avons appris comment mesurer la performance en utilisant la validation croisée.
Exécuter une boucle et calculer les scores de validation croisée pour une certaine plage de valeurs de k afin de choisir la plus élevée semble être une évidence. Et c'est l'approche la plus fréquemment utilisée. sklearn
a une classe pratique pour cette tâche.
Le paramètre param_grid
prend un dictionnaire avec les noms des paramètres comme clés et une liste d'éléments à parcourir comme une liste. Par exemple, pour essayer les valeurs de 1 à 99 pour n_neighbors
, vous utiliseriez :
La méthode .fit(X, y)
amène l'objet GridSearchCV
à trouver les meilleurs paramètres à partir de param_grid
et à réentraîner le modèle avec les meilleurs paramètres en utilisant l'ensemble complet.
Vous pouvez ensuite obtenir le score le plus élevé en utilisant l'attribut .best_score_
et prédire de nouvelles valeurs en utilisant la méthode .predict()
.
Swipe to start coding
- Importez la classe
GridSearchCV
. - Échellez le
X
en utilisantStandardScaler
. - Cherchez la meilleure valeur de
n_neighbors
parmi[3, 9, 18, 27]
. - Initialisez et entraînez un objet
GridSearchCV
avec 4 plis de validation croisée. - Imprimez le score du meilleur modèle.
Solution
Merci pour vos commentaires !
Défi : Choisir la Meilleure Valeur de K.
Comme montré dans les chapitres précédents, le modèle fait différentes prédictions pour différentes valeurs de k (nombre de voisins).
Lorsque nous construisons un modèle, nous voulons choisir le k qui mènera à la meilleure performance. Et dans le chapitre précédent, nous avons appris comment mesurer la performance en utilisant la validation croisée.
Exécuter une boucle et calculer les scores de validation croisée pour une certaine plage de valeurs de k afin de choisir la plus élevée semble être une évidence. Et c'est l'approche la plus fréquemment utilisée. sklearn
a une classe pratique pour cette tâche.
Le paramètre param_grid
prend un dictionnaire avec les noms des paramètres comme clés et une liste d'éléments à parcourir comme une liste. Par exemple, pour essayer les valeurs de 1 à 99 pour n_neighbors
, vous utiliseriez :
La méthode .fit(X, y)
amène l'objet GridSearchCV
à trouver les meilleurs paramètres à partir de param_grid
et à réentraîner le modèle avec les meilleurs paramètres en utilisant l'ensemble complet.
Vous pouvez ensuite obtenir le score le plus élevé en utilisant l'attribut .best_score_
et prédire de nouvelles valeurs en utilisant la méthode .predict()
.
Swipe to start coding
- Importez la classe
GridSearchCV
. - Échellez le
X
en utilisantStandardScaler
. - Cherchez la meilleure valeur de
n_neighbors
parmi[3, 9, 18, 27]
. - Initialisez et entraînez un objet
GridSearchCV
avec 4 plis de validation croisée. - Imprimez le score du meilleur modèle.
Solution
Merci pour vos commentaires !