LoslegenKostenlos loslegen

Das beste Flugdauermodell herausfinden

Du hast gerade eine CrossValidator eingerichtet, um gute Parameter für das lineare Regressionsmodell zur Vorhersage der Flugdauer zu finden.

Die Modellpipeline hat mehrere Stufen (Objekte vom Typ StringIndexer, OneHotEncoder, VectorAssembler und LinearRegression), die nacheinander arbeiten. Die Stufen sind als Attribut stages auf dem Pipeline-Objekt verfügbar. Sie werden durch eine Liste dargestellt und die Schritte werden in der Reihenfolge ausgeführt, in der sie in der Liste stehen.

Jetzt siehst du dir die Pipeline genauer an, teilst die Phasen auf und nutzt sie, um Vorhersagen über die Testdaten zu treffen.

Die folgenden Objekte sind bereits erstellt worden:

  • cv - ein geschultes CrossValidatorModel Objekt und
  • evaluator - ein RegressionEvaluator Objekt.

Die Flugdaten wurden nach dem Zufallsprinzip in flights_train und flights_test aufgeteilt.

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit PySpark

Kurs anzeigen

Anleitung zur Übung

  • Finde das beste Modell.
  • Schau dir die Stufen im besten Modell an.
  • Isoliere die lineare Regressionsstufe und extrahiere ihre Parameter.
  • Verwende das beste Modell, um Vorhersagen für die Testdaten zu erstellen und berechne den RMSE.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Get the best model from cross validation
best_model = cv.____

# Look at the stages in the best model
print(best_model.____)

# Get the parameters for the LinearRegression object in the best model
best_model.____.extractParamMap()

# Generate predictions on testing data using the best model then calculate RMSE
predictions = ____.____(____)
print("RMSE =", ____.____(____))
Code bearbeiten und ausführen