Model blending
Je gaat model-ensembles bouwen met een blending-techniek.
Je doel is om 2 verschillende modellen te trainen op de New York City Taxi-competitiedata. Maak voorspellingen op de testdata en blend die vervolgens met een simpel rekenkundig gemiddelde.
De DataFrames train en test zijn al beschikbaar in je werkruimte. features is een lijst met kolommen die je voor het trainen gebruikt en is ook beschikbaar in je werkruimte. De naam van de doelvariabele is "fare_amount".
Deze oefening maakt deel uit van de cursus
Een Kaggle-competitie winnen met Python
Oefeninstructies
- Train een Gradient Boosting-model op de traindata met de lijst
features, en gebruik de kolom "fare_amount" als doelvariabele. - Train op dezelfde manier een Random Forest-model.
- Maak voorspellingen op de testdata met zowel het Gradient Boosting- als het Random Forest-model.
- Neem het gemiddelde van de voorspellingen van beide modellen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
from sklearn.ensemble import GradientBoostingRegressor, RandomForestRegressor
# Train a Gradient Boosting model
gb = GradientBoostingRegressor().____(____[features], ____.fare_amount)
# Train a Random Forest model
rf = RandomForestRegressor().____(____[features], ____.fare_amount)
# Make predictions on the test data
test['gb_pred'] = ____.____(test[features])
test['rf_pred'] = ____.____(test[features])
# Find mean of model predictions
test['blend'] = (____[____] + ____[____]) / 2
print(test[['gb_pred', 'rf_pred', 'blend']].head(3))