Vytváření trénovacích, testovacích a validačních datových sad

Validace modelů v Pythonu

Kasey Jones

Data Scientist

Tradiční rozdělení na trénovací a testovací sadu

  • Viděná data (použitá k trénování)
  • Neviděná data (nedostupná při trénování)

Rozdělení dat spočívá v použití části všech dostupných dat k trénování a menší části k vytvoření testovací sady.

Validace modelů v Pythonu

Definice datových sad a poměry dělení

Datová sada Definice
Trénovací Vzorek dat používaný při trénování modelů
Testovací (výběrový vzorek) Vzorek dat pro hodnocení výkonu modelu

Příklady poměrů

  • 80:20
  • 90:10 (při malém množství dat)
  • 70:30 (při výpočetně náročném modelu)
Validace modelů v Pythonu

Datové sady X a y

import pandas as pd

tic_tac_toe = pd.read_csv("tic-tac-toe.csv")
X = pd.get_dummies(tic_tac_toe.iloc[:,0:9])
y = tic_tac_toe.iloc[:, 9]

Kurzy Pythonu věnované dummy proměnným:

Validace modelů v Pythonu

Vytváření výběrových vzorků

X_train, X_test, y_train, y_test  =\
    train_test_split(X, y, test_size=0.2, random_state=1111)

Parametry:

  • test_size
  • train_size
  • random_state
Validace modelů v Pythonu

Datová sada pro předběžné testování?

Co dělat při testování různých parametrů modelu?

  • 100 versus 1000 stromů
Validace modelů v Pythonu

Pro testování parametrů modelu je nutné rozdělit dostupná data do tří částí: trénovací, validační a testovací.

Validace modelů v Pythonu

Trénovací, validační a testovací sada – pokračování

X_temp, X_test, y_temp, y_test  =\
    train_test_split(X, y, test_size=0.2, random_state=1111)
X_train, X_val, y_train, y_val =\
    train_test_split(X_temp, y_temp, test_size=0.25, random_state=11111)
Validace modelů v Pythonu

Čas na výběrový vzorek

Validace modelů v Pythonu

Preparing Video For Download...