Model doby letu: Více příznaků!
Přidáme do modelu více příznaků. To nutně neznamená, že bude model lepší – některé příznaky ho mohou zlepšit, jiné naopak zhoršit.
Více příznaků vždy zvyšuje složitost modelu a ztěžuje jeho interpretaci.
V dalším modelu použijeme tyto příznaky:
kmorg(letiště odletu, zakódované metodou one-hot encoding, 8 úrovní)depart(čas odletu, rozdělený do 3hodinových intervalů, zakódovaný metodou one-hot encoding, 8 úrovní)dow(den odletu v týdnu, zakódovaný metodou one-hot encoding, 7 úrovní) amon(měsíc odletu, zakódovaný metodou one-hot encoding, 12 úrovní).
Tyto příznaky jsou sestaveny do sloupce features, který je řídkou reprezentací 32 sloupců (připomeň si, že one-hot encoding vytvoří o jeden sloupec méně, než je počet úrovní).
Data jsou dostupná jako flights a jsou náhodně rozdělena na flights_train a flights_test.
Toto cvičení vychází z malé části datasetu letů.
Toto cvičení je součástí kurzu
Machine Learning with PySpark
Pokyny k cvičení
- Natrénuj model lineární regrese na trénovacích datech.
- Vygeneruj predikce pro testovací data.
- Vypočítej RMSE na testovacích datech.
- Podívej se na koeficienty modelu. Je některý z nich nulový?
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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)