Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment résoudre le problème : la prédiction d’un ajustement de classement déficient peut être trompeuse



Un avertissement courant que vous pouvez rencontrer dans R est :

Warning message:
In predict.lm(model, df) :
  prediction from a rank-deficient fit may be misleading

Cet avertissement peut se produire pour deux raisons :

Raison 1 : Deux variables prédictives sont parfaitement corrélées.

Raison 2 : Vous avez plus de paramètres de modèle que d’observations dans l’ensemble de données.

Les exemples suivants montrent comment chaque problème pourrait survenir dans la pratique.

Raison n°1 : deux variables prédictives sont parfaitement corrélées

Supposons que nous adaptions le modèle de régression linéaire multiple suivant dans R et que nous essayions de l’utiliser pour faire des prédictions :

#create data frame
df <- data.frame(x1=c(1, 2, 3, 4),
                 x2=c(2, 4, 6, 8),
                 y=c(6, 10, 19, 26))

#fit multiple linear regression model
model <- lm(y~x1+x2, data=df)

#use model to make predictions
predict(model, df)

   1    2    3    4 
 4.9 11.8 18.7 25.6 
Warning message:
In predict.lm(model, df) :
  prediction from a rank-deficient fit may be misleading

Nous recevons un message d’avertissement car les variables prédictives x1 et x2 sont parfaitement corrélées .

Notez que les valeurs de x2 sont simplement égales aux valeurs de x1 multipliées par deux. Ceci est un exemple de multicolinéarité parfaite .

Cela signifie que x1 et x2 ne fournissent pas d’informations uniques ou indépendantes dans le modèle de régression, ce qui pose des problèmes lors de l’ajustement et de l’interprétation du modèle.

Le moyen le plus simple de résoudre ce problème consiste simplement à supprimer l’une des variables prédictives du modèle, car il est redondant d’avoir les deux variables prédictives dans le modèle.

Raison n°2 : il y a plus de paramètres de modèle que d’observations

Supposons que nous adaptions le modèle de régression linéaire multiple suivant dans R et que nous essayions de l’utiliser pour faire des prédictions :

#create data frame
df <- data.frame(x1=c(1, 2, 3, 4),
                 x2=c(3, 3, 8, 12),
                 x3=c(4, 6, 3, 11),
                 y=c(6, 10, 19, 26))

#fit multiple linear regression model
model <- lm(y~x1*x2*x3, data=df)

#use model to make predictions
predict(model, df)

 1  2  3  4 
 6 10 19 26 
Warning message:
In predict.lm(model, df) :
  prediction from a rank-deficient fit may be misleading

Nous recevons un message d’avertissement car nous avons tenté d’ajuster un modèle de régression avec sept coefficients totaux de modèle :

  • x1
  • x2
  • x3
  • x1*x2
  • x1*3
  • x2*x3
  • x1*x2*x3

Cependant, nous n’avons que quatre observations au total dans l’ensemble de données.

Étant donné que le nombre de paramètres du modèle est supérieur au nombre d’observations dans l’ensemble de données, nous appelons cela des données de grande dimension .

Avec des données de grande dimension, il devient impossible de trouver un modèle capable de décrire la relation entre les variables prédictives et la variable de réponse, car nous ne disposons pas de suffisamment d’observations sur lesquelles entraîner le modèle.

Le moyen le plus simple de résoudre ce problème consiste à collecter davantage d’observations pour notre ensemble de données ou à utiliser un modèle plus simple avec moins de coefficients à estimer.

Ressources additionnelles

Les didacticiels suivants expliquent comment gérer d’autres erreurs courantes dans R :

Comment gérer : glm.fit : l’algorithme n’a pas convergé
Comment gérer : glm.fit : des probabilités ajustées numériquement 0 ou 1 se sont produites

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *