Goodness-of-Fit

Introductie tot lineaire modellering in Python

Jason Vestuto

Data Scientist

3 verschillende R's

Modellen bouwen:

  • RSS

Modellen beoordelen:

  • RMSE
  • R-squared
Introductie tot lineaire modellering in Python

RMSE

residuals = y_model - y_data
RSS = np.sum( np.square(residuals) )
mean_squared_residuals = np.sum( np.square(residuals) ) / len(residuals)
MSE = np.mean( np.square(residuals) )
RMSE = np.sqrt(np.mean( np.square(residuals)))
RMSE = np.std(residuals)
Introductie tot lineaire modellering in Python

R-squared in code

Afwijkingen:

deviations = np.mean(y_data) - y_data
VAR = np.sum(np.square(deviations))

Residuals:

residuals = y_model - y_data
RSS = np.sum(np.square(residuals))

R-squared:

r_squared = 1 - (RSS / VAR)
r = correlation(y_data, y_model)
Introductie tot lineaire modellering in Python

R-squared met data

Spreidingsdiagram van hoogte versus afstand met modellijn in rood door de punten, beide horizontaal met helling nul

Introductie tot lineaire modellering in Python

R-squared met data

Spreidingsdiagram van hoogte versus afstand met modellijn in rood door de punten, beide met kleine, lichte helling

Introductie tot lineaire modellering in Python

R-squared met data

Spreidingsdiagram van hoogte versus afstand met modellijn in rood door de punten, beide met matige helling, zichtbaar als een gematigde stijging

Introductie tot lineaire modellering in Python

R-squared met data

Spreidingsdiagram van hoogte versus afstand met modellijn in rood door de punten, beide met matige helling, zichtbaar als een steile stijging

Introductie tot lineaire modellering in Python

RMSE vs R-squared

  • RMSE: hoeveel variatie is residueel
  • R-squared: welk deel van de variatie is lineair
Introductie tot lineaire modellering in Python

Laten we oefenen!

Introductie tot lineaire modellering in Python

Preparing Video For Download...