IniziaInizia gratis

Convalida incrociata di un semplice modello di durata del volo

Hai già costruito alcuni modelli per prevedere la durata del volo e li hai valutati con una semplice suddivisione train/test. Tuttavia, la convalida incrociata offre un modo molto migliore per valutare le prestazioni del modello.

In questo esercizio allenerai un semplice modello per la durata del volo usando la convalida incrociata. Il tempo di viaggio è di solito fortemente correlato con la distanza, quindi usare solo la colonna km dovrebbe fornire un modello discreto.

I dati sono stati suddivisi casualmente in flights_train e flights_test.

Sono già state importate le seguenti classi: LinearRegression, RegressionEvaluator, ParamGridBuilder e CrossValidator.

Questo esercizio fa parte del corso

Machine Learning con PySpark

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una griglia di parametri vuota.
  • Crea gli oggetti per costruire e valutare un modello di regressione lineare. Il modello deve prevedere il campo "duration".
  • Crea un oggetto di convalida incrociata. Fornisci i valori per gli argomenti estimator, estimatorParamMaps ed evaluator. Scegli una convalida incrociata a 5 fold.
  • Allena e testa il modello su più fold dei dati di training.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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-valdiation builds multiple models, the fit() method can take a little while to complete.
Modifica ed esegui il codice