Metryki dokładności: modele regresji

Walidacja modeli w Pythonie

Kasey Jones

Data Scientist

Modele regresji

Modele regresji klasyfikują zmienne ciągłe, takie jak liczba punktów, galonów czy szczeniąt!

Walidacja modeli w Pythonie

Średni błąd bezwzględny (MAE)

 

$$ MAE = \frac{\sum_{i=1}^{n} |y_i - \hat{y}_i|}{n} $$

  • Najprostsza i najbardziej intuicyjna metryka
  • Traktuje wszystkie punkty jednakowo
  • Nie jest wrażliwa na wartości odstające
Walidacja modeli w Pythonie

Średni błąd kwadratowy (MSE)

 

$$ MSE = \frac{\sum_{i=1}^{n} (y_i - \hat{y}_i) ^2}{n} $$

  • Najczęściej stosowana metryka regresji
  • Wartości odstające mają większy wpływ na błąd całkowity
  • Przypadkowe zdarzenia mogą powodować duże błędy predykcji
Walidacja modeli w Pythonie

MAE a MSE

  • Metryki dokładności są zawsze zależne od zastosowania
  • Błędy MAE i MSE mają różne jednostki i nie należy ich porównywać
Walidacja modeli w Pythonie

Średni błąd bezwzględny

rfr = RandomForestRegressor(n_estimators=500, random_state=1111)
rfr.fit(X_train, y_train)
test_predictions = rfr.predict(X_test)

sum(abs(y_test - test_predictions))/len(test_predictions)
9.99
from sklearn.metrics import mean_absolute_error
mean_absolute_error(y_test, test_predictions)
9.99
Walidacja modeli w Pythonie

Błąd średniokwadratowy

sum(abs(y_test - test_predictions)**2)/len(test_predictions)
141.4
from sklearn.metrics import mean_squared_error
mean_squared_error(y_test, test_predictions)
141.4
Walidacja modeli w Pythonie

Dokładność dla podzbioru danych

chocolate_preds = rfr.predict(X_test[X_test[:, 1] == 1])
mean_absolute_error(y_test[X_test[:, 1] == 1], chocolate_preds)
8.79
nonchocolate_preds = rfr.predict(X_test[X_test[:, 1] == 0])
mean_absolute_error(y_test[X_test[:, 1] == 0], nonchocolate_preds)
10.99
Walidacja modeli w Pythonie

Czas na ćwiczenia!

Walidacja modeli w Pythonie

Preparing Video For Download...