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

Křížová validace pomocí sklearn

Jak jsme si vysvětlili ve 2. kapitole, přeučení modelu na trénovacích datech (overfitting) je v analýze dat běžný problém. Nastává tehdy, když si model „zapamatuje" trénovací data příliš podrobně: na nich dosahuje skvělých výsledků, ale mimo ně selhává.

Technika rozdělení na trénovací a testovací sadu, kterou jsi poznal/a ve 2. kapitole, sice chrání před přeučením na trénovacích datech, ale ladění hyperparametrů může vést k přeučení na testovací části – model je totiž postupně přizpůsobován tak, aby dosahoval co nejlepších výsledků právě na ní. Proto se doporučuje ověřovat model na více různých testovacích sadách. K tomu slouží k-násobná křížová validace (k-fold cross-validation):

  • rozdělí dataset na trénovací a testovací sadu
  • natrénuje model, provede predikce a vypočítá skóre (lze zvolit přesnost, preciznost, recall…)
  • celý proces zopakuje k-krát
  • vrátí průměr všech k skóre

V tomto cvičení použiješ křížovou validaci na našem datasetu a výsledky vyhodnotíš pomocí funkce cross_val_score.

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

HR Analytics: Predicting Employee Churn in Python

Zobrazit kurz

Pokyny k cvičení

  • Naimportuj funkci pro křížovou validaci cross_val_score() z modulu sklearn.model_selection.
  • Vypiš skóre křížové validace svého modelu s nastavením 10 foldů pomocí hyperparametru cv.

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

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

# Import the function for implementing cross validation
from sklearn.model_selection import ____

# Use that function to print the cross validation score for 10 folds
print(____(model,features,target,____=10))
Upravit a spustit kód