ComenzarEmpieza gratis

Modelo de duración del vuelo: ¡Más funciones!

Añadamos más funciones a nuestro modelo. Esto no dará lugar necesariamente a un modelo mejor. Añadir algunas características podría mejorar el modelo. Añadir otras funciones podría empeorarlo.

Más funciones siempre harán que el modelo sea más complicado y difícil de interpretar.

Éstas son las características que incluirás en el próximo modelo:

  • km
  • org (aeropuerto de origen, codificado en un punto, 8 niveles)
  • depart (hora de salida, agrupada en intervalos de 3 horas, codificada en un punto, 8 niveles)
  • dow (día de salida de la semana, codificado en un punto, 7 niveles) y
  • mon (mes de salida, codificado de un golpe, 12 niveles).

Éstas se han ensamblado en la columna features, que es una representación dispersa de 32 columnas (recuerda que la codificación de un disparo produce un número de columnas que es uno menos que el número de niveles).

Los datos están disponibles como flights, divididos aleatoriamente en flights_train y flights_test.

Este ejercicio se basa en un pequeño subconjunto de los datos de los vuelos.

Este ejercicio forma parte del curso

Machine learning con PySpark

Ver curso

Instrucciones de ejercicio

  • Ajusta un modelo de regresión lineal a los datos de entrenamiento.
  • Genera predicciones para los datos de prueba.
  • Calcula el RMSE en los datos de prueba.
  • Mira los coeficientes del modelo. ¿Alguno de ellos es cero?

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

from pyspark.ml.regression import ____
from pyspark.ml.evaluation import ____

# Fit linear regression model to training data
regression = ____(____).____(____)

# Make predictions on testing data
predictions = regression.____(____)

# Calculate the RMSE on testing data
rmse = ____(____).____(____)
print("The test RMSE is", rmse)

# Look at the model coefficients
coeffs = regression.____
print(coeffs)
Editar y ejecutar código