R++ est un logiciel d’analyse statistique haute performance. Simple, rapide, efficace. Pour mettre les statistiques à la portée de tous.

Prédictions météo, avec la régression linéaire

La régression linéaire

Qu’est-ce que la régression linéaire ?

La régression linéaire est une méthode statistique puissante pour construire un modèle linéaire à partir d’un ensemble de données collectées.

Par exemple, considérons un scientifique essayant de comprendre la tendance de la concentration de dioxyde de carbone (CO2) dans l’atmosphère au cours des 60 dernières années (de 1959 à 2017).

Il collecte les données sur Datahub et les place dans un nuage de points, comme celui-ci :

 

photo de voitures dégageant du CO2 pour illustrer notre exemple de regression lineaire                    graphique de la pollution CO2 par an pour exemple regression lineaire

 

Ce graphique (appelé ‘diagramme dispersé’) peut l’aider à voir que la concentration de CO2 augmente d’année en année. Mais il ne peut pas répondre à des questions plus difficiles, comme

  • La concentration de CO2 augmente-t-elle de 1% chaque année? Ou de 10% ?
  • Quelle serait la concentration de CO2 en 2050?

Le diagramme dispersé donne donc un aperçu intéressant des données, mais il n’est pas vraiment utile pour connaître la tendance ou faire une prédiction.

Pour répondre à de telles questions, notre scientifique doit mettre la main sur un modèle qui décrit et résume les données existantes, de façon mathématique. Ce modèle peut alors être utilisé pour prédire la variable d’intérêt (ici les émissions de CO2) pour les cas où les données ne sont pas disponibles; par exemple la concentration de dioxyde de carbone en 2050.

 

C’est précisément là que la régression linéaire entre en jeu !

Graphique de regression lineaire

 

 

Elle permet à notre scientifique de tracer la droite (en bleue pointillée). Car, elle représente un modèle décrivant la concentration de CO2 comme une fonction linéaire de l’année, du type y= ax+b, donc ici :

CO2 (ppm) = -2721,423 + 1,552 * année

Un tel modèle linéaire peut répondre à toutes sortes de questions, comme celles qui ont été mentionnées ci-dessus :

  • Tendance : A partir de la pente du modèle linéaire (1,552), on peut voir que l’augmentation annuelle de la concentration de CO2 est de 1,552 ppm / an.
  • Prédiction : En 2050, la concentration de CO2 est alors calculée ainsi :

-2721,423 + 1,552 * 2050 = 460,177 (ppm)

Nous avons tout simplement remplacé l’année par le nombre 2050.

 


Comme nous pouvons le voir dans cet exemple simple, nous avons deux types de variables dans la régression linéaire :

  1. La variable dépendante (aussi appelée réponse), généralement désignée par y.
  2. La variable indépendante ou explicative (aussi appelée prédicteur) utilisée pour décrire ou estimer la variable dépendante. Elle est souvent noté x.

Dans notre exemple, la variable dépendante est la concentration de CO2 et l’année est la variable indépendante.


 

Mais la question que vous vous posez, bien sûr, c’est d’où vient cette formule CO2 (ppm) = -2721,423 + 1,552 * année ? Comment connaissons nous a et b ?

La régression linéaire dans R et R++

Pour trouver a et b, nous allons regarder ici dans deux outils statistiques qui ont automatisé les calculs.

  • en langage R (si vous travaillez avec Rstudio par exemple), on utilise la commande lm. Le code à taper est alors le suivant :

Regression lineaire code dans R

  • dans le logiciel R++, il suffit juste de cliquer sur les variables :  CO2 ~ année dans l’onglet Régression Linéaire. Vous obtenez bien sûr le même résultat que dans R (mais sans devoir coder !). Voici la video “R++ en une minute!” sur la régression linéaire si vous souhaitez en savoir plus.

capture d'ecran de la regression lineaire dan R++

 

Qu’est-ce que le ‘meilleur’ modèle linéaire ?

Comment est-ce que ces logiciels ont été programmés ? En fait, lorsqu’on leur demande de résoudre un calcul de régression linéaire, ils vont aller nous chercher ce qu’on appelle le “meilleur modèle linéaire”. Avant de pouvoir vous expliquer ce qu’est le ‘meilleur’ modèle linéaire, il nous faut comprendre ce qu’est un modèle linéaire !

Soit un modèle linéaire (ou estimateur linéaire) appelé η, défini ainsi :

Formule de l'estimateur de la régression linéaire

graphe pour montrer la regression ; estimateur linéaire

Cet estimateur linéaire est représenté par une ligne (ici elle est verte), comme la ligne pointillée bleue que nous avions obtenue dans notre exemple précédent.

 

Un peu de vocabulaire… nous avons deux paramètres :

  • β0 est appelé l’intersection
  • β1 représente la pente de la ligne. Elle montre à quel point le prédicteur linéaire η change en modifiant la variable indépendante x.

 

 

η est utilisé pour prédire ou estimer la réponse y; nous appelons cette valeur la réponse estimée et la désignons par ŷ, pour la différencier de y. Donc nous avons :

Formule de la réponse estimée en régression linéaire

 


Pour les plus avancés

Notez que ŷ = η définit la régression linéaire. Il existe une version généralisée de la régression linéaire, le modèle dit ‘linéaire généralisé’ (GLM), pour lequel on pose ŷ = g (η) où g est une fonction générale (comme une exponentielle, soit g (η) = e exposant n). Un tel modèle peut décrire des nuages de points non linéaires et sera détaillé dans les prochains articles.


 

Le but de la régression linéaire est de déterminer le meilleur estimateur / modèle pour nos données, ce qui signifie qu’il faut trouver les paramètres β0 et β1 pour que le modèle soit optimal ! Mais que signifie optimal ? «être le meilleur modèle» ?

 

Pour répondre à cette question, j’ai illustré la réponse estimée ŷ pour l’exemple CO2, en utilisant plusieurs valeurs pour β0 et β1 :

graphiques de la meilleure estimation regression lineaire

(A) β0=1350, β1= -0.5 (B) β0=-2700, β1= 1.55 (C) β0=-3220, β1= 1.8

Alors quel est le meilleur modèle selon vous ? Il est clair que le choix de β0 et β1 modifie la réponse estimée y, les droites en pointillés changent beaucoup selon les exemples !

Oui, vous avez raison, c’est le modèle (C) alors que (A) et (B) sont vraiment loin des points, donc loin des données.

 

Maintenant, plutôt que de nous fier à notre instinct pour définir β0 et β1, il nous faudrait une approche plus exacte (plus mathématique !) pour déterminer le modèle le plus proche de nos données.

Vous comprendrez ainsi l’utilité d’un logiciel statistique comme R ++, car il vous fournit les paramètres du meilleur modèle en un clic. Nous savons ainsi que :

β0 = -2731,423 et β1 = 1,552

 

Comment obtenir le meilleur modèle ?

En d’autres termes, quelle logique se cache derrière la recherche du meilleur estimateur ?

graphique de la cost-function en regression lineaire

Supposons que nous ayons un nombre m de points. Pour chaque point, il y a une différence entre la valeur estimée (par le modèle linéaire) et la réponse (de notre ensemble de données). Nous appelons cette différence le résidu ou erreur et on le désigne par ek: formule du résidu en régression linéaire

Le meilleur modèle que nous recherchons devrait nous rendre des résidus les plus petits possibles.

Mais attention : rendre petit le résidu d’un point peut rendre plus grand le résidu d’un autre point ! C’est comme une balançoire à bascule…

Alors, plutôt que de s’occuper de chaque résidu en particulier, nous allons prendre la moyenne des résidus au carré qui s’appelle la fonction objectif E (en anglais ‘cost function’). Et pour ceux qui aiment les formules, la voilà !

Formule de la fonction_objectif pour la régression linéaire

 

Le but est alors de trouver des paramètres tels que la fonction objectif soit minimum. Donc pour chaque β0 et β1, nous allons trouver le E correspondant.

En général, E ressemble à ça (une surface convexe en 3D, en forme de bol) :

illustration de la fonction_objectif en regression lineaire; en forme de bol (convexe)

Pour trouver la meilleure ligne décrivant les données, il faut résoudre ce problème de minimisation de E. Et dès que nous avons les paramètres β0 et β1, notre modèle linéaire est déterminé ! Il peut alors être utilisé pour prédire la réponse pour n’importe quelle entrée.

 

Dans notre exemple CO2, le logiciel R++ nous a automatiquement trouvé les valeurs optimales des paramètres (-2721,423 pour β0 et 1,552 pour β1). Ce sont les meilleurs ; donc si on les change, on augmente la fonction objectif E dont le minimum est E = 10,94968.

Preuve en est avec ces deux petits tests… Dans les graphiques ci-dessous (qui sont des coupes transversales de notre bol E), nous conservons un paramètre β comme suggéré par R++ et changeons l’autre.

 

Paramètres de regression : graphique des tests

Il est clair que les paramètres de régression linéaire β0 et β1 calculés par R++ sont ceux qui minimisent E !

 

 

Et voilà ! Maintenant, nous savons ce qu’est la régression linéaire. Nous savons aussi comment elle peut être obtenue en utilisant R++, et quelle est la logique derrière les calculs.

Dans l’article suivant, nous discuterons les cas où nous avons plus d’une variable indépendante (prédicteur) et nous passerons en revue certaines mesures de la qualité de la régression linéaire ainsi que les pièges courants !

 

Est-ce que vous avez des questions ? Avez-vous déjà utilisé la régression et dans quel contexte ? Vous maîtrisez totalement le sujet ou vous êtes plutôt novice ? N’hésitez pas à me laisser des commentaires ci-dessous, je vous répondrai avec grand plaisir.

 

Hamed Zakerzadeh, mathématicien chez R++

 

Hamed Zakerzadeh

Mathématicien ++

Follow me on Twitter or LinkedIn

Pas encore de commentaire
Post a Comment