CommencerCommencer gratuitement

Analyse du modèle de durée de vol le plus performant

Vous venez de configurer un modèle de régression linéaire ( CrossValidator ) afin de déterminer les paramètres adéquats pour le modèle de régression linéaire prédisant la durée des vols.

Le pipeline du modèle comporte plusieurs étapes (objets de type StringIndexer, OneHotEncoder, VectorAssembler et LinearRegression), qui s'exécutent dans l'ordre. Les étapes sont disponibles en tant qu'attribut « stages » sur l'objet pipeline. Ils sont représentés par une liste et les étapes sont exécutées dans l'ordre dans lequel elles apparaissent dans la liste.

Vous allez maintenant examiner de plus près le pipeline, le diviser en étapes et l'utiliser pour établir des prévisions sur les données de test.

Les objets suivants ont déjà été créés :

  • cv — un objet d'CrossValidatorModel formé et
  • evaluator — un objet d'RegressionEvaluator.

Les données relatives aux vols ont été réparties de manière aléatoire entre flights_train et flights_test.

Cet exercice fait partie du cours

Apprentissage automatique avec PySpark

Afficher le cours

Instructions

  • Récupérez le meilleur modèle.
  • Veuillez examiner les étapes du modèle optimal.
  • Isolez l'étape de régression linéaire et extrayez ses paramètres.
  • Veuillez utiliser le modèle le plus performant pour générer des prédictions sur les données de test et calculer l'erreur quadratique moyenne (RMSE).

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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 =", ____.____(____))
Modifier et exécuter le code