Arbres de décision comme apprenants de base
C'est maintenant le moment de construire un modèle XGBoost pour prédire les prix des maisons — pas à Boston, Massachusetts, comme dans la vidéo, mais à Ames, Iowa! Cet ensemble de données sur les prix des maisons a été préchargé dans un DataFrame nommé df. Si vous l'explorez dans le Shell, vous verrez qu'il contient diverses caractéristiques sur la maison et son emplacement dans la ville.
Dans cet exercice, votre objectif est d'utiliser des arbres comme apprenants de base. Par défaut, XGBoost utilise des arbres comme apprenants de base, donc vous n'avez pas à préciser ici que vous souhaitez utiliser des arbres avec booster="gbtree".
xgboost a été importé sous le nom xgb et les tableaux pour les caractéristiques et la cible sont disponibles respectivement dans X et y.
Cette activité fait partie du cours
Amorçage de gradient avancé avec XGBoost
Instructions de l’exercice
- Divisez
dfen ensembles d'entraînement et de test, en réservant 20 % pour le test. Utilisezrandom_stateà123. - Instanciez
XGBRegressorsous le nomxg_reg, avecseedà123. Spécifiez l'objectif"reg:squarederror"et utilisez 10 arbres. Remarque : Vous n'avez pas à préciserbooster="gbtree", car c'est la valeur par défaut. - Ajustez
xg_regsur les données d'entraînement et prédisez les étiquettes de l'ensemble de test. Enregistrez les prédictions dans une variable appeléepreds. - Calculez la
rmseen utilisantnp.sqrt()et la fonctionmean_squared_error()desklearn.metrics, qui a été préimportée.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Create the training and test sets
X_train, X_test, y_train, y_test = ____(____, ____, ____=____, random_state=123)
# Instantiate the XGBRegressor: xg_reg
xg_reg = ____
# Fit the regressor to the training set
____
# Predict the labels of the test set: preds
preds = ____
# Compute the rmse: rmse
rmse = ____(____(____, ____))
print("RMSE: %f" % (rmse))