Modelo de duração de voo: Mais recursos!
Vamos adicionar mais recursos ao nosso modelo. Isso não necessariamente resultará em um modelo melhor. A adição de alguns recursos pode melhorar o modelo. A adição de outros recursos pode piorar a situação.
Mais recursos sempre tornarão o modelo mais complicado e difícil de interpretar.
Esses são os recursos que você incluirá no próximo modelo:
km
org
(aeroporto de origem, codificado em um único ponto, 8 níveis)depart
(horário de partida, em intervalos de 3 horas, codificado em um ponto, 8 níveis)dow
(dia da semana da partida, codificado em um único ponto, 7 níveis) emon
(mês de partida, codificado em um ponto, 12 níveis).
Eles foram reunidos na coluna features
, que é uma representação esparsa de 32 colunas (lembre-se de que a codificação one-hot produz um número de colunas que é um a menos do que o número de níveis).
Os dados estão disponíveis em flights
, divididos aleatoriamente em flights_train
e flights_test
.
Este exercício se baseia em um pequeno subconjunto dos dados dos voos.
Este exercício faz parte do curso
Aprendizado de máquina com PySpark
Instruções de exercício
- Ajuste um modelo de regressão linear aos dados de treinamento.
- Gerar previsões para os dados de teste.
- Calcule o RMSE nos dados de teste.
- Observe os coeficientes do modelo. Algum deles é zero?
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
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)