Rozbor nejlepšího modelu délky letu
Právě jsi nastavil/a CrossValidator pro hledání vhodných parametrů modelu lineární regrese predikujícího délku letu.
Pipeline modelu má několik fází (objekty typu StringIndexer, OneHotEncoder, VectorAssembler a LinearRegression), které se spouštějí postupně za sebou. Fáze jsou dostupné jako atribut stages na objektu pipeline. Jsou uloženy jako seznam a vykonávají se v pořadí, v jakém se v něm nacházejí.
Teď se na pipeline podíváme zblízka — rozdělíme jednotlivé fáze a použijeme ji k predikcím na testovacích datech.
Následující objekty už jsou připraveny:
cv— natrénovaný objektCrossValidatorModelaevaluator— objektRegressionEvaluator.
Data o letech byla náhodně rozdělena na flights_train a flights_test.
Toto cvičení je součástí kurzu
Machine Learning with PySpark
Pokyny k cvičení
- Získej nejlepší model.
- Prohlédni si fáze v nejlepším modelu.
- Vyizoluj fázi lineární regrese a extrahuj její parametry.
- Použij nejlepší model k vytvoření predikcí na testovacích datech a vypočítej RMSE.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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 =", ____.____(____))