Začněte nyníZačněte zdarma

Nastavení parametrů GridSearch

Hyperparametr je parametr uvnitř funkce. Například max_depth nebo min_samples_leaf jsou hyperparametry funkce DecisionTreeClassifier(). Ladění hyperparametrů je proces testování různých hodnot, jehož cílem je najít ty optimální – tedy takové, které dávají nejlepší předpovědi podle tvých cílů. V sklearn můžeš k testování různých kombinací hyperparametrů použít GridSearch. A ještě lépe: GridSearchCV() ti umožní kombinace nejen otestovat, ale zároveň na nich spustit křížovou validaci – vše v jedné funkci!

V tomto cvičení připravíš různé hodnoty, které chceš otestovat pro max_depth a min_samples_leaf. Uložíš je do slovníku, protože přesně takový formát GridSearchCV() vyžaduje:

  • klíče slovníku budou názvy hyperparametrů
  • hodnoty slovníku budou atributy (hodnoty hyperparametrů), které chceš otestovat

Místo ručního vypisování všech hodnot použiješ funkci range(), která umožňuje generovat hodnoty postupně. Například range(1, 10, 2) vygeneruje seznam hodnot od 1 (včetně) do 10 (bez 10) s krokem 2 – výsledek tedy bude [1, 3, 5, 7, 9].

Toto cvičení je součástí kurzu

HR Analytics: Predicting Employee Churn in Python

Zobrazit kurz

Pokyny k cvičení

  • Podle formátu z příkladu výše vygeneruj hodnoty maximální hloubky v rozsahu od 5 do 20 s krokem 1
  • Totéž udělej pro minimální velikost vzorku s hodnotami od 50 do 450 s krokem 50
  • Vytvoř slovník zadáním hodnot max_depth a min_samples_leaf, které chceš vyzkoušet, pomocí proměnných, které jsi právě vytvořil/a

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Generate values for maximum depth
depth = [i for i in ____(5,21,1)]

# Generate values for minimum sample size
samples = [i for i in range(____,500,____)]

# Create the dictionary with parameters to be checked
parameters = dict(max_depth=depth, min_samples_leaf=____)
Upravit a spustit kód