Validación cruzada del modelo simple de duración de vuelo
Ya has construido unos cuantos modelos para predecir la duración del vuelo y los has evaluado con una simple división tren/prueba. Sin embargo, la validación cruzada proporciona una forma mucho mejor de evaluar el rendimiento del modelo.
En este ejercicio vas a entrenar un modelo sencillo de duración de vuelo utilizando la validación cruzada. El tiempo de viaje suele estar fuertemente correlacionado con la distancia, por lo que utilizar sólo la columna km
debería dar un modelo decente.
Los datos se han dividido aleatoriamente en flights_train
y flights_test
.
Ya se han importado las siguientes clases LinearRegression
, RegressionEvaluator
, ParamGridBuilder
y CrossValidator
.
Este ejercicio forma parte del curso
Machine learning con PySpark
Instrucciones del ejercicio
- Crea una cuadrícula de parámetros vacía.
- Crea objetos para construir y evaluar un modelo de regresión lineal. El modelo debe predecir el campo "duración".
- Crea un objeto validador cruzado. Proporciona valores para los argumentos
estimator
,estimatorParamMaps
yevaluator
. Elige la validación cruzada de 5 pliegues. - Entrena y prueba el modelo en varios pliegues de los datos de entrenamiento.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# 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.