Pour rechercher le meilleur modèle, on peut commencer par réaliser une régression linéaire sur l'ensemble du jeu de données, afin de repérer les prédicteurs les plus significatifs.
Pour rechercher le meilleur modèle, on peut commencer par réaliser une régression linéaire sur l'ensemble du jeu de données, afin de repérer les prédicteurs les plus significatifs.
plot(x = c(1:16), y = models.subsets.error, xlab = "modèle", ylab = "espérance de l'erreur quadratique")
#plot(x = c(1:16), y = models.subsets.error, xlab = "modèle", ylab = "espérance de l'erreur quadratique")
```
```
espérance
lm13 1539.681
lasso13 1541.783
lm18 1348.237
lasso18 1345.840
lmAIC 1347.019
lassoAIC 1367.446
lmBIC 1298.314
lassoBIC 1620.786
lm23 1274.732
lasso23 1292.388
lm24 1273.862
lasso24 1266.733
lm25 1276.925
lasso25 1277.970
lm26 1274.081
lasso26 1283.311
On remarque que la plus faible valeur de l'espérance est obtenue cette fois encore pour le modèle de régression lasso avec un sous-ensemble de 24 prédicteurs.
On remarque que la plus faible valeur de l'espérance est obtenue cette fois encore pour le modèle de régression lasso avec un sous-ensemble de 24 prédicteurs.
On peut noter cependant que l'écart entre les plus faibles valeurs de l'espérance est toujours de + ou - 10 (valeurs comprises entre 1266 et 1277), les valeurs minimum étant obtenues pour les sous-ensembles à 23, 24, 25 et 26 prédicteurs. De plus, étant donné que les résultats de ces modèles sont proches, et que les valeurs de l'espérance varient d'une exécution à l'autre, le modèle obtenant le meilleur résultat varie également d'une exécution à l'autre.
On peut noter cependant que l'écart entre les plus faibles valeurs de l'espérance est toujours de + ou - 10 (valeurs comprises entre 1266 et 1277), les valeurs minimum étant obtenues pour les sous-ensembles à 23, 24, 25 et 26 prédicteurs. De plus, étant donné que les résultats de ces modèles sont proches, et que les valeurs de l'espérance varient d'une exécution à l'autre, le modèle obtenant le meilleur résultat varie également d'une exécution à l'autre.
...
@@ -497,13 +511,23 @@ for(model in reg.models.subsets.best) # Pour chaque modele
...
@@ -497,13 +511,23 @@ for(model in reg.models.subsets.best) # Pour chaque modele
print(models.subsets.error.best)
print(models.subsets.error.best)
```
```
Le meilleur modèle est ici la régression linéaire à 24 prédicteurs, avec une espérance d'erreur quadratique égale à 1264.330.
espérance
lm23 1275.108
lasso23 1273.076
lm24 1264.330
lasso24 1269.377
lm25 1274.778
lasso25 1271.424
lm26 1280.144
lasso26 1280.023
Le meilleur modèle est ici la régression linéaire à 24 prédicteurs, bien que l'espérance de la régression lasso avec les mêmes prédicteurs soit très proche.
On choisit donc le modèle suivant : régression linéaire avec les 24 prédicteurs : X1, X2, X3, X9, X10, X14, X16, X17, X18, X19, X24, X27, X28, X32, X34, X35, X37, X38, X39, X40, X41, X43, X46 et X49.
On choisit donc le modèle suivant : régression linéaire avec les 24 prédicteurs : X1, X2, X3, X9, X10, X14, X16, X17, X18, X19, X24, X27, X28, X32, X34, X35, X37, X38, X39, X40, X41, X43, X46 et X49.
On pourrait également envisager une régression non linéaire, mais l'analyse des résidus en fonction de chacun des prédicteurs du modèle ne montre aucune variation du bruit en fonction d'un prédicteur, ce qui ne nous incite pas à complexifier le modèle.
On pourrait également envisager une régression non linéaire, mais l'analyse des résidus en fonction de chacun des prédicteurs du modèle ne montre aucune variation du bruit en fonction d'un prédicteur, ce qui ne nous incite pas à complexifier le modèle.