CommencerCommencer gratuitement

Recherche par grille avec XGBoost

Maintenant que vous avez appris à ajuster des paramètres individuellement avec XGBoost, passons à la vitesse supérieure en utilisant les fonctionnalités GridSearch et RandomizedSearch de scikit-learn, avec une validation croisée interne via GridSearchCV et RandomizedSearchCV. Vous les utiliserez pour trouver de manière exhaustive le meilleur modèle à partir d’un ensemble de valeurs possibles, et cela sur plusieurs paramètres simultanément. Au travail, en commençant par GridSearchCV !

Cet exercice fait partie du cours

Extreme Gradient Boosting avec XGBoost

Afficher le cours

Instructions

  • Créez une grille de paramètres appelée gbm_param_grid contenant une liste de valeurs pour "colsample_bytree" (0.3, 0.7), une liste à valeur unique pour "n_estimators" (50), et une liste de 2 valeurs pour "max_depth" (2, 5).
  • Instanciez un objet XGBRegressor appelé gbm.
  • Créez un objet GridSearchCV appelé grid_mse, en passant : la grille de paramètres à param_grid, l’XGBRegressor à estimator, "neg_mean_squared_error" à scoring, et 4 à cv. Indiquez également verbose=1 pour mieux comprendre le résultat.
  • Ajustez l’objet GridSearchCV sur X et y.
  • Affichez les meilleures valeurs de paramètres et le RMSE le plus bas, en utilisant respectivement les attributs .best_params_ et .best_score_ de grid_mse.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Create the parameter grid: gbm_param_grid
gbm_param_grid = {
    '____': [____, ____],
    '____': [____],
    '____': [____, ____]
}

# Instantiate the regressor: gbm
gbm = ____

# Perform grid search: grid_mse
grid_mse = ____


# Fit grid_mse to the data
____

# Print the best parameters and lowest RMSE
print("Best parameters found: ", ____)
print("Lowest RMSE found: ", np.sqrt(np.abs(____)))
Modifier et exécuter le code