Kom igångKom igång gratis

Beslutsträd som baslärandemaskiner

Nu är det dags att bygga en XGBoost-modell för att förutsäga huspriser – inte i Boston, Massachusetts, som i videon, utan i Ames, Iowa! Datamängden med huspriser har redan laddats in i en DataFrame som heter df. Om du utforskar den i Shell ser du att det finns en rad olika särdrag om husen och deras placering i staden.

I den här övningen är målet att använda träd som baslärandemaskiner. Som standard använder XGBoost träd som baslärandemaskiner, så du behöver inte ange booster="gbtree" explicit.

xgboost har importerats som xgb och arrayerna för särdragen och målvariabeln finns tillgängliga i X respektive y.

Den här övningen är en del av kursen

Extreme Gradient Boosting med XGBoost

Visa kurs

Övningsinstruktioner

  • Dela upp df i tränings- och testmängder, där 20 % hålls undan för testning. Använd random_state=123.
  • Instansiera XGBRegressor som xg_reg med seed=123. Ange "reg:squarederror" som målsättningsfunktion och använd 10 träd. Obs: Du behöver inte ange booster="gbtree" eftersom det är standardvärdet.
  • Träna xg_reg på träningsdata och förutsäg etiketterna för testmängden. Spara förutsägelserna i en variabel kallad preds.
  • Beräkna rmse med hjälp av np.sqrt() och funktionen mean_squared_error() från sklearn.metrics, som redan har importerats.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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))
Redigera och kör kod