Comment calculer le RMSE dans SAS
Une façon d’évaluer dans quelle mesure un modèle de régression s’adapte à un ensemble de données consiste à calculer l’ erreur quadratique moyenne , qui est une métrique qui nous indique la distance moyenne entre les valeurs prédites du modèle et les valeurs réelles de l’ensemble de données.
Plus le RMSE est bas, plus un modèle donné est capable de « s’adapter » à un ensemble de données.
La formule pour trouver l’erreur quadratique moyenne, souvent abrégée RMSE , est la suivante :
RMSE = √ Σ(P je – O je ) 2 / n
où:
- Σ est un symbole qui représente la « somme »
- P i est la valeur prédite pour la ième observation dans l’ensemble de données
- O i est la valeur observée pour la ième observation dans l’ensemble de données
- n est la taille de l’échantillon
L’exemple étape par étape suivant montre comment calculer le RMSE pour un modèle de régression linéaire simple dans SAS.
Étape 1 : Créer les données
Pour cet exemple, nous allons créer un ensemble de données contenant le nombre total d’heures étudiées et la note de l’examen final de 15 étudiants.
Nous allons ajuster un modèle de régression linéaire simple en utilisant les heures comme variable prédictive et le score comme variable de réponse.
Le code suivant montre comment créer cet ensemble de données dans SAS :
/*create dataset*/ data exam_data; input hours score; datalines; 1 64 2 66 4 76 5 73 5 74 6 81 6 83 7 82 8 80 10 88 11 84 11 82 12 91 12 93 14 89 ; run; /*view dataset*/ proc print data=exam_data;
Étape 2 : Ajuster le modèle de régression linéaire simple
Ensuite, nous utiliserons proc reg pour ajuster le modèle de régression linéaire simple :
/*fit simple linear regression model*/ proc reg data=exam_data; model score = hours; run;
Notez que le RMSE dans la sortie est 3.64093 .
Étape 3 : Extraire le RMSE du modèle de régression
Si vous souhaitez uniquement afficher le RMSE de ce modèle et aucun des autres résultats de sortie, vous pouvez utiliser le code suivant :
/*fit simple linear regression model*/ proc reg data=exam_data outest=outest noprint; model score = hours / rmse; run; quit; /*print RMSE of model*/ proc print data=outest; var _RMSE_; run;
Notez que seule la valeur RMSE de 3,64093 est affichée dans la sortie.
Remarque : L’argument noprint dans proc reg indique à SAS de ne pas imprimer l’intégralité de la sortie des résultats de régression comme il l’a fait à l’étape précédente.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans SAS :
Comment effectuer une régression linéaire simple dans SAS
Comment effectuer une régression linéaire multiple dans SAS
Comment effectuer une régression polynomiale dans SAS
Comment effectuer une régression logistique dans SAS