Défi : Réglage des Hyperparamètres avec RandomizedSearchCV
Le principe de RandomizedSearchCV
est similaire à celui de GridSearchCV
, mais au lieu de tester toutes les combinaisons possibles, il évalue uniquement un sous-ensemble échantillonné aléatoirement.
Par exemple, le param_grid
suivant contient 100 combinaisons :
param_grid = {
'n_neighbors': [1, 3, 5, 7, 9, 12, 15, 17, 20, 25],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
GridSearchCV
testerait les 100 combinaisons, ce qui est chronophage. RandomizedSearchCV
peut à la place évaluer un sous-ensemble plus restreint, par exemple 20 combinaisons choisies aléatoirement. Cela réduit le temps de calcul et donne généralement des résultats proches du meilleur.
Le nombre de combinaisons à tester est contrôlé par l’argument n_iter
(la valeur par défaut est 10). À part cela, l’utilisation est identique à celle de GridSearchCV
.
Swipe to start coding
- Initialiser un objet
RandomizedSearchCV
avec la grille de paramètres et définirn_iter=20
. - Initialiser un objet
GridSearchCV
avec la même grille de paramètres. - Entraîner les deux objets de recherche en utilisant
.fit(X, y)
. - Afficher le meilleur estimateur issu de la recherche par grille avec
.best_estimator_
. - Afficher le meilleur score issu de la recherche aléatoire avec
.best_score_
.
Solution
Vous pouvez essayer d’exécuter le code plusieurs fois. Observez la différence entre les deux scores. Parfois, les scores peuvent être identiques en raison de la présence des meilleurs paramètres parmi les combinaisons échantillonnées par RandomizedSearchCV
.
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 3.13
Défi : Réglage des Hyperparamètres avec RandomizedSearchCV
Glissez pour afficher le menu
Le principe de RandomizedSearchCV
est similaire à celui de GridSearchCV
, mais au lieu de tester toutes les combinaisons possibles, il évalue uniquement un sous-ensemble échantillonné aléatoirement.
Par exemple, le param_grid
suivant contient 100 combinaisons :
param_grid = {
'n_neighbors': [1, 3, 5, 7, 9, 12, 15, 17, 20, 25],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
GridSearchCV
testerait les 100 combinaisons, ce qui est chronophage. RandomizedSearchCV
peut à la place évaluer un sous-ensemble plus restreint, par exemple 20 combinaisons choisies aléatoirement. Cela réduit le temps de calcul et donne généralement des résultats proches du meilleur.
Le nombre de combinaisons à tester est contrôlé par l’argument n_iter
(la valeur par défaut est 10). À part cela, l’utilisation est identique à celle de GridSearchCV
.
Swipe to start coding
- Initialiser un objet
RandomizedSearchCV
avec la grille de paramètres et définirn_iter=20
. - Initialiser un objet
GridSearchCV
avec la même grille de paramètres. - Entraîner les deux objets de recherche en utilisant
.fit(X, y)
. - Afficher le meilleur estimateur issu de la recherche par grille avec
.best_estimator_
. - Afficher le meilleur score issu de la recherche aléatoire avec
.best_score_
.
Solution
Vous pouvez essayer d’exécuter le code plusieurs fois. Observez la différence entre les deux scores. Parfois, les scores peuvent être identiques en raison de la présence des meilleurs paramètres parmi les combinaisons échantillonnées par RandomizedSearchCV
.
Merci pour vos commentaires !
Awesome!
Completion rate improved to 3.13single