Régression exponentielle en Python (étape par étape)



La régression exponentielle est un type de régression qui peut être utilisé pour modéliser les situations suivantes :

1. Croissance exponentielle : La croissance commence lentement puis s’accélère rapidement et sans limite.

2. Décroissance exponentielle : La décroissance commence rapidement puis ralentit pour se rapprocher de plus en plus de zéro.

L’équation d’un modèle de régression exponentielle prend la forme suivante :

y = ab x

où:

  • y : la variable de réponse
  • x : la variable prédictive
  • a, b : les coefficients de régression qui décrivent la relation entre x et y

L’exemple étape par étape suivant montre comment effectuer une régression exponentielle en Python.

Étape 1 : Créer les données

Tout d’abord, créons de fausses données pour deux variables : x et y :

import numpy as np

x = np.arange(1, 21, 1)
y = np.array([1, 3, 5, 7, 9, 12, 15, 19, 23, 28,
              33, 38, 44, 50, 56, 64, 73, 84, 97, 113])

Étape 2 : Visualisez les données

Créons ensuite un nuage de points rapide pour visualiser la relation entre x et y :

import matplotlib.pyplot as plt

plt.scatter(x, y)
plt.show()

D’après le graphique, nous pouvons voir qu’il existe un schéma de croissance exponentielle clair entre les deux variables.

Ainsi, il semble judicieux d’ajuster une équation de régression exponentielle pour décrire la relation entre les variables, par opposition à un modèle de régression linéaire.

Étape 3 : Ajuster le modèle de régression exponentielle

Ensuite, nous utiliserons la fonction polyfit() pour ajuster un modèle de régression exponentielle, en utilisant le logarithme naturel de y comme variable de réponse et x comme variable prédictive :

#fit the model
fit = np.polyfit(x, np.log(y), 1)

#view the output of the model
print(fit)

[0.2041002  0.98165772]

Sur la base du résultat, l’équation de régression exponentielle ajustée peut s’écrire comme suit :

ln(y) = 0,9817 + 0,2041(x)

En appliquant e aux deux côtés, nous pouvons réécrire l’équation comme suit :

y = 2,6689 * 1,2264x

Nous pouvons utiliser cette équation pour prédire la variable de réponse, y , en fonction de la valeur de la variable prédictive, x . Par exemple, si x = 12, alors nous prédirions que y serait 30,897 :

y = 2,6689 * 1,2264 12 = 30,897

Bonus : n’hésitez pas à utiliser ce calculateur de régression exponentielle en ligne pour calculer automatiquement l’équation de régression exponentielle pour un prédicteur et une variable de réponse donnés.

Ressources additionnelles

Comment effectuer une régression linéaire simple en Python
Comment effectuer une régression polynomiale en Python
Comment effectuer une régression quantile en Python

Ajouter un commentaire

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