CommencerCommencer gratuitement

Arbres de décision comme apprenants de base

Il est temps de construire un modèle XGBoost pour prédire les prix des maisons — non pas à Boston (Massachusetts) comme dans la vidéo, mais à Ames (Iowa) ! Ce jeu de données sur les prix de l’immobilier a été préchargé dans un DataFrame nommé df. Si vous l’explorez dans le terminal, vous verrez qu’il contient diverses caractéristiques sur la maison et sa localisation 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 ; vous n’avez donc pas besoin de préciser que vous voulez des arbres ici avec booster="gbtree".

xgboost a été importé sous le nom xgb et les tableaux pour les variables explicatives et la cible sont disponibles respectivement dans X et y.

Cet exercice fait partie du cours

Extreme Gradient Boosting avec XGBoost

Afficher le cours

Instructions

  • Scindez df en jeux d’entraînement et de test, en réservant 20 % pour le test. Utilisez un random_state de 123.
  • Instanciez XGBRegressor sous le nom xg_reg, avec un seed de 123. Spécifiez un objectif "reg:squarederror" et utilisez 10 arbres. Remarque : vous n’avez pas besoin d’indiquer booster="gbtree", c’est la valeur par défaut.
  • Ajustez xg_reg sur les données d’entraînement et prédisez les étiquettes du jeu de test. Enregistrez les prédictions dans une variable appelée preds.
  • Calculez la rmse avec np.sqrt() et la fonction mean_squared_error() de sklearn.metrics, déjà importée.

Exercice interactif pratique

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

# 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))
Modifier et exécuter le code