Validação cruzada de um modelo simples de duração de voo
Você já criou alguns modelos para prever a duração do voo e os avaliou com uma simples divisão de treinamento/teste. No entanto, a validação cruzada oferece uma maneira muito melhor de avaliar o desempenho do modelo.
Neste exercício, você treinará um modelo simples para a duração do voo usando a validação cruzada. Em geral, o tempo de viagem está fortemente correlacionado com a distância, portanto, se você usar apenas a coluna km
, obterá um modelo decente.
Os dados foram divididos aleatoriamente em flights_train
e flights_test
.
As classes a seguir já foram importadas: LinearRegression
, RegressionEvaluator
, ParamGridBuilder
e CrossValidator
.
Este exercício faz parte do curso
Aprendizado de máquina com PySpark
Instruções de exercício
- Crie uma grade de parâmetros vazia.
- Criar objetos para criar e avaliar um modelo de regressão linear. O modelo deve prever o campo "duração".
- Crie um objeto de validação cruzada. Forneça valores para os argumentos
estimator
,estimatorParamMaps
eevaluator
. Escolha a validação cruzada 5 vezes. - Treine e teste o modelo em várias dobras dos dados de treinamento.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# 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.