Validation croisée de votre modèle XGBoost
Dans cet exercice, vous allez plus loin en utilisant le pipeline que vous avez créé pour prétraiter ET valider votre modèle par validation croisée.
Cette activité fait partie du cours
Amorçage de gradient avancé avec XGBoost
Instructions de l’exercice
- Créez un pipeline nommé
xgb_pipelineà l'aide desteps. - Effectuez une validation croisée à 10 plis avec
cross_val_score(). Vous devrez lui passer le pipeline,X(sous forme de dictionnaire, avec.to_dict("records")),y, le nombre de plis à utiliser, etscoring("neg_mean_squared_error"). - Affichez la RMSE à 10 plis.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Import necessary modules
from sklearn.feature_extraction import DictVectorizer
from sklearn.pipeline import Pipeline
from sklearn.model_selection import cross_val_score
# Fill LotFrontage missing values with 0
X.LotFrontage = ____
# Setup the pipeline steps: steps
steps = [("ohe_onestep", DictVectorizer(sparse=False)),
("xgb_model", xgb.XGBRegressor(max_depth=2, objective="reg:squarederror"))]
# Create the pipeline: xgb_pipeline
xgb_pipeline = ____
# Cross-validate the model
cross_val_scores = ____
# Print the 10-fold RMSE
print("10-fold RMSE: ", np.mean(np.sqrt(np.abs(____))))