Kompromis mezi vychýlením a rozptylem

Validace modelů v Pythonu

Kasey Jones

Data Scientist

Rozptyl

  • Rozptyl: příliš těsné přizpůsobení trénovacím datům
    • Model špatně generalizuje na testovací data
    • Nízká chyba na trénovacích, vysoká na testovacích datech
    • Nastává u přetrénovaných modelů s vysokou složitostí
Validace modelů v Pythonu

Přetrénované modely (vysoký rozptyl)

Overfitting nastane, když předpovědi příliš těsně sledují trénovací data. Pokud by byly všechny předpovědi přesně v souladu se skutečnými hodnotami, model je pravděpodobně přetrénován.

Validace modelů v Pythonu

Vychýlení

  • Vychýlení: neschopnost zachytit vztah mezi daty a odezvou
    • Vysoká chyba na trénovacích i testovacích datech
    • Nastává u nedostatečně trénovaných modelů
Validace modelů v Pythonu

Nedostatečně trénované modely (vysoké vychýlení)

Underfitting nastane, když existuje vztah mezi predikovanou proměnnou a prediktory v modelu, ale tento vztah se nepodařilo zachytit.

Validace modelů v Pythonu

Optimální výkon

Validace modelů v Pythonu

Parametry způsobující over/underfitting

rfc = RandomForestClassifier(n_estimators=100, max_depth=4)
rfc.fit(X_train, y_train)

print("Training: {0:.2f}".format(accuracy_score(y_train, train_predictions)))
Training: .84
print("Testing: {0:.2f}".format(accuracy_score(y_test, test_predictions)))
Testing: .77
Validace modelů v Pythonu
rfc = RandomForestClassifier(n_estimators=100, max_depth=14)
rfc.fit(X_train, y_train)

print("Training: {0:.2f}".format(accuracy_score(y_train, train_predictions)))
Training: 1.0
print("Testing: {0:.2f}".format(accuracy_score(y_test, test_predictions)))
Testing: .83
Validace modelů v Pythonu
rfc = RandomForestClassifier(n_estimators=100, max_depth=10)
rfc.fit(X_train, y_train)

print("Training: {0:.2f}".format(accuracy_score(y_train, train_predictions)))
Training: .89
print("Testing: {0:.2f}".format(accuracy_score(y_test, test_predictions)))
Testing: .86
Validace modelů v Pythonu

Nezapomeňte – overfittingu lze předejít!

Validace modelů v Pythonu

Preparing Video For Download...