ПочатиПочніть безкоштовно

Розбір найкращої моделі тривалості польоту

Ви щойно налаштували CrossValidator, щоб знайти вдалi параметри для моделі лінійної регресії, яка передбачає тривалість польоту.

Конвеєр моделі має кілька етапів (об'єкти типів StringIndexer, OneHotEncoder, VectorAssembler і LinearRegression), які виконуються послідовно. Етапи доступні як атрибут stages у об'єкта конвеєра. Вони подані у вигляді списку, і виконуються в тій самій послідовності, у якій розміщені в списку.

Тепер ви детальніше розглянете конвеєр, виокремите етапи та використаєте його для формування прогнозів на тестових даних.

Уже створено такі об'єкти:

  • cv — навчений об'єкт CrossValidatorModel і
  • evaluator — об'єкт RegressionEvaluator.

Дані про рейси було випадково поділено на flights_train і flights_test.

Ця вправа є частиною курсу

Machine Learning з PySpark

Переглянути курс

Інструкції до вправи

  • Отримайте найкращу модель.
  • Перегляньте етапи в найкращій моделі.
  • Виокремте етап лінійної регресії та витягніть його параметри.
  • Використайте найкращу модель, щоб згенерувати прогнози на тестових даних і обчислити RMSE.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Get the best model from cross validation
best_model = cv.____

# Look at the stages in the best model
print(best_model.____)

# Get the parameters for the LinearRegression object in the best model
best_model.____.extractParamMap()

# Generate predictions on testing data using the best model then calculate RMSE
predictions = ____.____(____)
print("RMSE =", ____.____(____))
Редагувати та запускати код