Een gradient boosting-model
Nu gaan we een gradient boosting (GB)-model fitten. Er wordt wel gezegd dat een lineair model als een Toyota Camry is, en GB als een Black Hawk-helikopter. GB kan beter presteren dan random forests, maar dat is niet altijd zo. Dit heet de no free lunch-theorem, wat betekent dat je voor elk probleem meerdere modellen zou moeten proberen.
GB lijkt op random forest-modellen, maar het verschil is dat bomen opeenvolgend worden gebouwd. Bij elke iteratie past de volgende boom de residuele fouten van de vorige boom om de fit te verbeteren.
Voor nu gaan we niet naar hyperparameters zoeken — dat is al voor je gedaan.
Deze oefening maakt deel uit van de cursus
Machine Learning voor finance in Python
Oefeninstructies
- Maak een
GradientBoostingRegressor-object met de hyperparameters die al voor je zijn ingesteld. - Fit het
gbr-model op detrain_featuresentrain_targets. - Print de scores voor de trainings- en testfeatures en -targets.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
from sklearn.ensemble import GradientBoostingRegressor
# Create GB model -- hyperparameters have already been searched for you
gbr = ____(max_features=4,
learning_rate=0.01,
n_estimators=200,
subsample=0.6,
random_state=42)
gbr.fit(____)
print(gbr.score(train_features, train_targets))
____