Nauwkeurigheidsmetrics: regressiemodellen

Modelvalidatie in Python

Kasey Jones

Data Scientist

Regressiemodellen

Regressiemodellen voorspellen continue variabelen, zoals aantal punten, liters of puppy’s.

Modelvalidatie in Python

Mean absolute error (MAE)

 

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

  • Simpelste en meest intuïtieve metric
  • Behandelt alle punten gelijk
  • Niet gevoelig voor uitbijters
Modelvalidatie in Python

Mean squared error (MSE)

 

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

  • Meest gebruikte regressiemetric
  • Laat uitbijters zwaarder meetellen in de fout
  • Willekeurige gezinsritten kunnen tot grote voorspellingsfouten leiden
Modelvalidatie in Python

MAE vs. MSE

  • Nauwkeurigheidsmetrics zijn altijd toepassingsspecifiek
  • MAE- en MSE-fouten zijn in andere eenheden en niet vergelijkbaar
Modelvalidatie in Python

Mean absolute error

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
Modelvalidatie in Python

Mean squared error

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
Modelvalidatie in Python

Nauwkeurigheid voor een subset van data

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
Modelvalidatie in Python

Laten we oefenen!

Modelvalidatie in Python

Preparing Video For Download...