Modellblandning
Nu ska du börja skapa modellensembler med hjälp av blending-tekniken.
Målet är att träna 2 olika modeller på data från tävlingen New York City Taxi. Gör prediktioner på testdata och kombinera dem sedan med ett enkelt aritmetiskt medelvärde.
DataFrame-objekten train och test finns redan i din arbetsmiljö. features är en lista med kolumner som ska användas för träning och finns också tillgänglig i din arbetsmiljö. Målvariabeln heter "fare_amount".
Den här övningen är en del av kursen
Vinna en Kaggle-tävling i Python
Övningsinstruktioner
- Träna en Gradient Boosting-modell på träningsdata med listan
featuresoch kolumnen "fare_amount" som målvariabel. - Träna en Random Forest-modell på samma sätt.
- Gör prediktioner på testdata med både Gradient Boosting- och Random Forest-modellerna.
- Beräkna medelvärdet av de båda modellernas prediktioner.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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))