Zacznij terazZacznij za darmo

Kroswalidacja prostego modelu czasu trwania lotu

Masz już za sobą budowę kilku modeli do przewidywania czasu trwania lotu i oceniałeś je za pomocą prostego podziału na zbiór treningowy i testowy. Kroswalidacja oferuje jednak znacznie lepszy sposób oceny wydajności modelu.

W tym ćwiczeniu wytrenujemy prosty model czasu trwania lotu z użyciem kroswalidacji. Czas podróży jest zwykle silnie skorelowany z odległością, więc sama kolumna km powinna wystarczyć do zbudowania przyzwoitego modelu.

Dane zostały losowo podzielone na flights_train i flights_test.

Następujące klasy zostały już zaimportowane: LinearRegression, RegressionEvaluator, ParamGridBuilder oraz CrossValidator.

To ćwiczenie jest częścią kursu

Uczenie maszynowe z PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz pustą siatkę parametrów.
  • Utwórz obiekty służące do budowania i oceny modelu regresji liniowej. Model powinien przewidywać pole "duration".
  • Utwórz obiekt kroswalidatora. Podaj wartości argumentów estimator, estimatorParamMaps i evaluator. Wybierz kroswalidację 5-krotną.
  • Wytrenuj i przetestuj model na wielu złożeniach danych treningowych.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Create an empty parameter grid
params = ____().____()

# Create objects for building and evaluating a regression model
regression = ____(____)
evaluator = ____(____)

# Create a cross validator
cv = ____(estimator=____, estimatorParamMaps=____, evaluator=____, ____)

# Train and test model on multiple folds of the training data
cv = cv.____(____)

# NOTE: Since cross-validation builds multiple models, the fit() method can take a little while to complete.
Edytuj i uruchom kod