Notre dataset contient des observations sur le pourcentage de personnes se rendant au
travail à vélo chaque jour, le pourcentage de fumeurs et le pourcentage de personnes
souffrant de maladies cardiaques dans un échantillon imaginaire de 500 villes.
Overview – Linear Regression
En statistique, la régression linéaire est utilisée pour modéliser une relation entre une
variable dépendante continue et une ou plusieurs variables indépendantes. La variable
indépendante peut être qualitative ou quantitative. Le cas où nous n'avons qu'une seule
variable indépendante, cela s'appelle une régression linéaire simple. Si nous avons plus
d'une variable indépendante, cela s'appelle une régression multivariée ou multiple.
Une représentation mathématique d'un modèle de régression linéaire multiple est la
suivante :
Y i=β 0 + β 1 × X 1 + β 2 × X 2 +…+ β n × X n + ε i
Dans l'équation ci-dessus, le coefficient β_0 représente l'interception et le coefficient β_i
représente la pente.
Examinons les six principales observations des données de notre dataset.
Insert output
Exploratory Data Analysis
L'exercice d'analyse exploratoire des données est essentiel à tout projet lié à a la
modelisation statistique. C'est une approche pour comprendre et synthétiser les principales
caractéristiques d'une donnée donnée. La plupart du temps, cela implique le découpage en
tranches et en dés des données à différents niveaux, et les résultats sont souvent présentés
avec des méthodes visuelles. S'il est fait correctement, il peut révéler de nombreux aspects
des données, ce qui nous aidera sûrement à créer de meilleurs modèles.
Chaque ensemble de données est différent et, par conséquent, il n'est pas facile de
répertorier les étapes à suivre dans le cadre de l'exploration des données. Cependant, la clé
d'une EDA réussie est de continuer à poser les questions qui, selon nous, aident à résoudre
le problème commercial ou à formuler toutes sortes d'hypothèses, puis de les tester à l'aide
de tests statistiques appropriés.
En d'autres termes, essayez de déterminer s'il existe une relation statistiquement
significative entre la cible et les variables indépendantes. Quelles sont les choses qui
dérivent des variables cibles ?
Voici quelques éléments que nous devrions envisager d'explorer d'un point de vue
statistique :
1. Checking distribution of target variable : Tout d'abord, nous allons essayer de
comprendre la nature de notre variable cible. Pour ce faire, nous allons
dessiner un histogramme avec un diagramme de densité.
Insert output and commentary
2. Analyzing Summary Statistics : Ici, nous allons simplement créer des
statistiques récapitulatives pour toutes les variables afin de comprendre le
comportement de toutes les variables indépendantes. Il fournira également
des informations sur les valeurs manquantes ou les valeurs aberrantes, le cas
échéant
Insert output and commentary
3. Checking Outliers Using Boxplots : Nous utilisons une boîte à moustaches pour
tracer la distribution de chaque variable numérique afin de vérifier les valeurs
aberrantes. Si les points se situent au-delà des chuchotements, alors nous
avons des valeurs aberrantes présentes. Pour l'instant, nous nous contentons
d'une analyse univariée des valeurs aberrantes.
Insert output and commentary
4. Correlation Matrix Visualization : Nous utiliserons le package corrgram pour
visualiser et analyser la matrice de corrélation.
Insert output and commentary
Training Regression Model
Pour construire une régression linéaire, nous utiliserons la fonction lm(). La fonction
prend deux arguments principaux.
Formule indiquant les variables dépendantes et indépendantes séparées par
~(tilder).
Le nom du jeu de données.
Diving data into train and test subsets.
Les données sont divisées en 70:30 d’entrainement et de test. La répartition 70:30 est la plus
courante et est principalement utilisée pendant la phase d'entraînement. 70 % des données
sont utilisées pour la formation, et les 30 % restants servent à tester la qualité de notre
model .
Insert output and commentary
Building Model
Insert output and commentary
Interpreting Regression Coefficients
Dans la sortie ci-dessus, Intercept représente la valeur minimale de ‘’ ‘’ qui sera reçue, si
toutes les variables sont constantes ou absentes.
Validating Regression Coefficients
and Models
Nous devons nous assurer que la valeur de chaque coefficient bêta est significative et n'est
pas venue par hasard. Dans R, la fonction lm exécute un t-test à un échantillon par rapport à
chaque coefficient bêta pour s'assurer qu'ils sont significatifs et ne sont pas venus par
hasard. De même, nous devons valider le modèle global. Tout comme un t-test à un
échantillon, la fonction lm génère également trois statistiques, qui aident les scientifiques
des données à valider le modèle. Ces statistiques incluent R-Square, R-Square ajusté et F-
test, également connu sous le nom de test global.
Pour afficher ces statistiques, nous devons passer l'objet lmModel à la fonction summary().
Insert output and commentary
Dans la sortie ci-dessus, Pr(>|t|) représente la valeur p, qui peut être comparée à la valeur
alpha de 0,05 pour vérifier si le coefficient bêta correspondant est significatif ou non. La
fonction lm prête ici un coup de main. Toutes les valeurs de la sortie qui ont un point (.) ou
un astrique (*) par rapport aux noms de variable indiquent que ces valeurs sont
significatives. Sur cette base, nous savons maintenant que toutes les variables sont
statistiquement significatives, à l'exception de ‘’ ‘’.
Pour la précision globale du modèle, discutons des statistiques générées par la fonction lm
une par une.
1. R-carré multiple : ‘’ ‘’ – La valeur R-carré est formellement appelée coefficient de
détermination. Ici, ‘’ ‘’ indique que les variables d'interception, ‘’ ‘’, lorsqu'elles sont mises
ensemble, peuvent expliquer ‘’ ‘’% de la variance de la variable ‘’ ‘’. La valeur de R au carré est
comprise entre 0 et 1. Dans les applications pratiques, si la valeur R2 est supérieure à 0,70,
nous considérons qu'il s'agit d'un bon modèle.
2. R-carré ajusté : ‘’ ‘’ – La valeur du R-carré ajusté indique si l'ajout de nouvelles informations
(variable) apporte ou non une amélioration significative au modèle. Donc, pour l'instant,
cette valeur ne fournit pas beaucoup d'informations. Cependant, l'augmentation de la valeur
R au carré ajustée avec l'ajout d'une nouvelle variable indiquera que la variable est utile et
apporte une amélioration significative au modèle.
3. F-statistic : ‘’ ‘’ sur ‘’ ‘’ et ‘’ ‘’ DF, p-value : < ‘’ ‘’– Cette ligne parle du test global du modèle. La
fonction lm exécute un test ANOVA pour vérifier la signification du modèle global. Ici,
l'hypothèse nulle est que le modèle n'est pas significatif, et l'alternative est que le modèle est
significatif. D'après les p-values < 0,05, notre modèle est significatif.
Cependant, il suffit de regarder ces statistiques pour prendre un appel sur la signification du
modèle. Mais il existe d'autres méthodes de validation pour la régression linéaire qui
peuvent être utiles pour décider si le modèle est bon ou mauvais. Certains d'entre eux sont
mentionnés ci-dessous:
4. Valeurs AIC et BIC - L'AIC (critère d'information d'Akaike, 1974) et le BIC (critère
d'information bayésien, 1978) sont des critères de probabilité pénalisés. Ces deux mesures
utilisent une « mesure d'ajustement + pénalité de complexité » pour obtenir les valeurs
finales.
AIC = – 2 * ln(vraisemblance) + 2 * p
BIC = – 2 * ln(probabilité) + ln(N) * p
Ici p = nombre de paramètres estimés et N = taille de l'échantillon.
Les valeurs AIC et BIC peuvent être utilisées pour choisir les meilleurs sous-ensembles de
prédicteurs dans la régression et pour comparer différents modèles. Lors de la comparaison
de différents modèles, le modèle avec les valeurs AIC et BIC minimales est considéré comme
le meilleur modèle.
Noter
AIC est susceptible de sur-ajuster les données, tandis que BIC est susceptible de sous-ajuster
les données.
Insert output
Checking Assumptions of Linear
Regression
La régression linéaire est paramétrique, ce qui signifie que l'algorithme fait certaines
hypothèses sur les données. Un modèle de régression linéaire n'est jugé adapté que si ces
hypothèses sont satisfaites. Il y a environ quatre hypothèses et sont mentionnées ci-
dessous. Si le modèle ne respecte pas ces hypothèses, nous ne pouvons tout simplement
pas utiliser ce modèle.
1. Les erreurs doivent suivre la distribution normale - Cela peut être vérifié en dessinant
un histogramme des résidus ou en utilisant la fonction plot(). La fonction de tracé
crée 4 graphiques différents. L'un d'eux est une NPP. Le graphique confirme si les
erreurs suivent une distribution normale ou non.
Generating histogram
Insert output and commentary
Generating NPP plot
Insert output and commentary
2. Il ne doit pas y avoir d'hétéroscédasticité - Cela signifie que la variance des termes
d'erreur doit être constante. Nous ne verrons aucun pattern lorsque nous tracerons
un graphique entre les résidus et les valeurs ajustées. Et la ligne moyenne devrait
être proche de zéro.
Generating the scatterplot between residuals and fitted values
3. Il ne devrait pas y avoir de multicolinéarité – Le modèle linéaire suppose que les
variables prédictives ne sont pas corrélées entre elles. S'ils présentent une
corrélation élevée, c'est un problème et on parle de multicolinéarité. Un test du
facteur d'inflation de variation peut aider à vérifier l'hypothèse de multicolinéarité.
VIF = 1/(1-R2)
VIF est un processus itératif. La fonction supprime une variable à la fois, ce qui est à
l'origine de la multicolinéarité et répète le processus jusqu'à ce que toutes les
variables à l'origine du problème soient supprimées. Donc, finalement, il nous reste
la liste des variables qui n'ont pas ou très peu de corrélation entre elles.
Insert output and commentary
3. Il ne devrait pas y avoir de corrélation sérielle automatique - L'autocorrélation signifie
que les termes d'erreur ne doivent pas être corrélés les uns avec les autres. Pour
vérifier cela, nous pouvons exécuter le test de Durbin-Watson (test dw). Le test
renvoie une valeur comprise entre 0 et 4. Si la valeur est deux, nous disons qu'il n'y a
pas de corrélation sérielle automatique. Cependant, une valeur supérieure à 2
représente une corrélation (-) ve et une valeur inférieure à 2 représente une
corrélation (+) ve.
Insert output and commentary
Predicting Dependent Variable(Y) in Test Dataset
Nous testons les performances du modèle sur un ensemble de données de test pour nous
assurer que notre modèle est stable, et nous obtenons des résultats identiques ou
suffisamment proches pour utiliser ce modèle formé pour prédire et prévoir les valeurs
futures des variables dépendantes. Pour prédire, nous utilisons la fonction de prédiction,
puis nous générons une valeur R-Squared pour voir si nous obtenons ou non le même
résultat que celui obtenu dans l'ensemble de données d'apprentissage.
Insert output and commentary
Generating R-Squared Value for the test dataset
Insert output and commentary
Conclusion: