Model blending
Inizierai a creare ensemble di modelli con una tecnica di blending.
Il tuo obiettivo è addestrare 2 modelli diversi sui dati della competizione New York City Taxi. Fai le previsioni sui dati di test e poi esegui il blending usando una semplice media aritmetica.
I DataFrame train e test sono già disponibili nel tuo workspace. features è un elenco di colonne da usare per l'addestramento ed è anch’esso disponibile nel tuo workspace. La variabile target si chiama "fare_amount".
Questo esercizio fa parte del corso
Vincere una competizione Kaggle con Python
Istruzioni dell'esercizio
- Addestra un modello di Gradient Boosting sui dati di train usando l’elenco
featurese la colonna "fare_amount" come variabile target. - Addestra un modello di Random Forest nello stesso modo.
- Effettua le previsioni sui dati di test usando sia il modello Gradient Boosting che il modello Random Forest.
- Calcola la media delle previsioni dei due modelli.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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))