Modellstackning II
Bra jobbat! Det här har du gjort hittills i stackningsimplementationen:
- Delat upp träningsdata i två delar
- Tränat flera modeller på del 1
- Gjort prediktioner på del 2
- Gjort prediktioner på testdata
Nu är målet att skapa en andra nivåns modell med prediktionerna från steg 3 och 4 som särdrag. Den här modellen tränas alltså på del 2-data, och sedan kan du göra stackningsprediktioner på testdata.
DataFrames:en part_2 och test finns redan i din arbetsyta. Prediktionerna från Gradient Boosting och Random Forest lagras i dessa DataFrames under namnen "gb_pred" respektive "rf_pred".
Den här övningen är en del av kursen
Vinna en Kaggle-tävling i Python
Övningsinstruktioner
- Träna en linjär regressionsmodell på del 2-data med prediktionerna från Gradient Boosting- och Random Forest-modellerna som särdrag.
- Gör prediktioner på testdata med prediktionerna från Gradient Boosting- och Random Forest-modellerna som särdrag.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
from sklearn.linear_model import LinearRegression
# Create linear regression model without the intercept
lr = LinearRegression(fit_intercept=False)
# Train 2nd level model on the Part 2 data
lr.____(part_2[['gb_pred', '____']], part_2.fare_amount)
# Make stacking predictions on the test data
test['stacking'] = lr.____(test[['gb_pred', '____']])
# Look at the model coefficients
print(lr.coef_)