Dein XGBoost-Modell per Cross-Validation prüfen
In dieser Übung gehst du einen Schritt weiter und verwendest die erstellte Pipeline, um dein Modell sowohl vorzuverarbeiten als auch per Cross-Validation zu prüfen.
Diese Übung ist Teil des Kurses
Extreme Gradient Boosting mit XGBoost
Anleitung zur Übung
- Erstelle eine Pipeline namens
xgb_pipelinemitsteps. - Führe eine 10-fache Cross-Validation mit
cross_val_score()durch. Du musst die Pipeline,X(als Dictionary mit.to_dict("records")),y, die gewünschte Anzahl an Folds undscoring("neg_mean_squared_error") übergeben. - Gib die 10-fache RMSE aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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(____))))