Étant donné deux ensembles de données simples:
head(training_set)
x y
1 1 2.167512
2 2 4.684017
3 3 3.702477
4 4 9.417312
5 5 9.424831
6 6 13.090983
head(test_set)
x y
1 1 2.068663
2 2 4.162103
3 3 5.080583
4 4 8.366680
5 5 8.344651
Je veux ajuster une ligne de régression linéaire sur les données d'entraînement et utiliser cette ligne (ou les coefficients) pour calculer le "test MSE" ou l'erreur quadratique moyenne des résidus sur les données de test une fois que cette ligne est adaptée.
model = lm(y~x,data=training_set)
train_MSE = mean(model$residuals^2)
test_MSE = ?
Dans ce cas, il est plus précis de l'appeler MSPE (erreur quadratique moyenne de prédiction) :
mean((test_set$y - predict.lm(model, test_set)) ^ 2)
Il s'agit d'une mesure plus utile car tous les modèles visent la prédiction. Nous voulons un modèle avec un minimum de MSPE.
En pratique, si nous avons un ensemble de données de test de rechange, nous pouvons directement calculer MSPE comme ci-dessus. Cependant, très souvent, nous n'avons pas de données de rechange. En statistiques, la validation croisée avec ou sans sortie est une estimation de la MSPE à partir de l'ensemble de données de formation.
Il existe également plusieurs autres statistiques pour évaluer l'erreur de prédiction, comme statistique de Mallows et AIC .