Křížová validace pipeline modelu pro délku letu
Model s křížovou validací, který jsi právě sestavil/a, byl jednoduchý – k předpovědi duration používal pouze km.
Dalším důležitým prediktorem délky letu je výchozí letiště. Z rušných letišť trvá odlet obvykle déle. Podívejme se, jestli přidání tohoto prediktoru model vylepší!
V tomto cvičení přidáš do modelu pole org. Protože je org kategorická proměnná, je potřeba ji nejdříve upravit: převést na index a zakódovat metodou one-hot encoding, než ji lze sestavit dohromady s km a použít k trénování regresního modelu. Všechny tyto kroky zabalíme do pipeline.
Následující objekty už jsou připravené:
params— prázdná mřížka parametrůevaluator— vyhodnocovač regreseregression— objektLinearRegressionslabelCol='duration'.
Třídy StringIndexer, OneHotEncoder, VectorAssembler a CrossValidator jsou už naimportované.
Toto cvičení je součástí kurzu
Machine Learning with PySpark
Pokyny k cvičení
- Vytvoř string indexer. Jako vstupní a výstupní pole zadej
orgaorg_idx. - Vytvoř one-hot encoder. Výstupní pole pojmenuj
org_dummy. - Sestav pole
kmaorg_dummydo jediného pole s názvemfeatures. - Vytvoř pipeline z následujících operací: string indexer, one-hot encoder, assembler a lineární regrese. Na základě toho vytvoř křížový validátor.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Create an indexer for the org field
indexer = ____(____, ____)
# Create an one-hot encoder for the indexed org field
onehot = ____(____, ____)
# Assemble the km and one-hot encoded fields
assembler = ____(____, ____)
# Create a pipeline and cross-validator.
pipeline = ____(stages=[____, ____, ____, ____])
cv = ____(estimator=____,
estimatorParamMaps=____,
evaluator=____)