Перекрёстная проверка простой модели времени перелёта
Вы уже построили несколько моделей для предсказания времени перелёта и оценили их с помощью простого разбиения на обучающую и тестовую выборки. Однако перекрёстная проверка позволяет значительно точнее оценить качество модели.
В этом упражнении вы обучите простую модель времени перелёта с использованием перекрёстной проверки. Время в пути обычно тесно связано с расстоянием, поэтому одного столбца km должно быть достаточно для построения неплохой модели.
Данные случайным образом разделены на flights_train и flights_test.
Следующие классы уже импортированы: LinearRegression, RegressionEvaluator, ParamGridBuilder и CrossValidator.
Это упражнение является частью курса
Машинное обучение с PySpark
Инструкции к упражнению
- Создайте пустую сетку параметров.
- Создайте объекты для построения и оценки модели линейной регрессии. Модель должна предсказывать поле "duration".
- Создайте объект перекрёстной проверки. Укажите значения аргументов
estimator,estimatorParamMapsиevaluator. Выберите 5-кратную перекрёстную проверку. - Обучите и протестируйте модель на нескольких разбиениях обучающих данных.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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-validation builds multiple models, the fit() method can take a little while to complete.