Modell för flygtid: Fler särdrag!
Nu lägger vi till fler särdrag i modellen. Det leder inte nödvändigtvis till ett bättre resultat – vissa särdrag kan förbättra modellen, andra kan försämra den.
Fler särdrag gör alltid modellen mer komplex och svårare att tolka.
Dessa är de särdrag som ingår i nästa modell:
kmorg(ursprungsflygplats, one-hot-kodad, 8 nivåer)depart(avgångstid, indelad i 3-timmarsintervall, one-hot-kodad, 8 nivåer)dow(avgångsdag i veckan, one-hot-kodad, 7 nivåer) ochmon(avgångsmånad, one-hot-kodad, 12 nivåer).
Dessa har sammanställts i kolumnen features, som är en gles representation av 32 kolumner (kom ihåg att one-hot-kodning ger ett antal kolumner som är ett färre än antalet nivåer).
Data finns tillgängliga som flights, slumpmässigt uppdelade i flights_train och flights_test.
Den här övningen bygger på ett litet urval av flygdata.
Den här övningen är en del av kursen
Maskininlärning med PySpark
Övningsinstruktioner
- Anpassa en linjär regressionsmodell till träningsdata.
- Generera förutsägelser för testdata.
- Beräkna RMSE på testdata.
- Undersök modellkoefficienterna. Är någon av dem noll?
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
from pyspark.ml.regression import ____
from pyspark.ml.evaluation import ____
# Fit linear regression model to training data
regression = ____(____).____(____)
# Make predictions on testing data
predictions = regression.____(____)
# Calculate the RMSE on testing data
rmse = ____(____).____(____)
print("The test RMSE is", rmse)
# Look at the model coefficients
coeffs = regression.____
print(coeffs)