Dans ce tutoriel, vous verrez comment effectuer une régression linéaire multiple en Python en utilisant à la fois sklearn et statsmodels.,s à couvrir:

  1. Revoir l’exemple à utiliser dans ce tutoriel
  2. Vérifier la linéarité
  3. Effectuer la régression linéaire multiple en Python
  4. Ajouter une interface utilisateur graphique (GUI) tkinter pour recueillir les données des utilisateurs, puis afficher les résultats de prédiction

À la fin de ce tutoriel, vous pourrez créer l’interface suivante en Python:

Exemple de Régression linéaire multiple en Python

Dans l’exemple suivant, nous utiliserons la régression linéaire multiple pour prédire le prix de l’indice boursier (i.,e., la variable dépendante) d’une économie fictive en utilisant 2 variables indépendantes/d’entrée:

  • Taux d’intérêt
  • Taux de chômage

Veuillez noter que vous devrez valider que plusieurs hypothèses sont satisfaites avant d’appliquer des modèles de régression linéaire. Plus particulièrement, vous devez vous assurer qu’une relation linéaire existe entre la variable dépendante et la variable indépendante/s (plus qu’en vertu de la vérification de la linéarité de la section).,

Passons maintenant à l’ensemble de données que nous utiliserons:

Pour commencer, vous pouvez capturer l’ensemble de données ci-dessus en Python en utilisant Pandas DataFrame (pour les ensembles de données plus volumineux, vous pouvez envisager d’importer vos données):

Vérification de la linéarité

Avant certaines hypothèses sont satisfaites.

Comme indiqué précédemment, vous voudrez peut-être vérifier qu’une relation linéaire existe entre la variable dépendante et la variable indépendante/s.,

Dans notre exemple, vous voudrez peut-être vérifier qu’une relation linéaire existe entre la:

Pour effectuer une rapide linéarité vérifier, vous pouvez utiliser des diagrammes de dispersion (en utilisant la bibliothèque matplotlib). Par exemple, vous pouvez utiliser le code ci-dessous afin de tracer la relation entre le Stock_Index_Price et l’Interest_Rate:

Vous remarquerez qu’en effet une relation linéaire existe entre le Stock_Index_Price et l’Interest_Rate.,dans le deuxième cas, vous pouvez utiliser ce code afin de tracer la relation entre le Stock_Index_Price et le taux de chômage:

Comme vous pouvez le voir, une relation linéaire existe également entre le Stock_Index_Price et le taux de chômage – lorsque les taux de chômage augmentent, le prix de l’indice boursier augmente.down (ici, nous avons toujours une relation linéaire, mais avec une pente négative):

Ensuite, nous allons effectuer la régression linéaire multiple réelle en Python.,

Effectuer la Régression linéaire multiple

Une fois que vous avez ajouté les données dans Python, vous pouvez utiliser sklearn et statsmodels pour obtenir les résultats de la régression.

L’une ou l’autre méthode fonctionnerait, mais examinons les deux méthodes à des fins d’illustration.

Vous pouvez ensuite copier le code ci-dessous en Python:

Une fois que vous exécutez le code en Python, vous observerez trois parties:

(1) La première partie montre la sortie générée par sklearn:

Cette sortie comprend l’interception et les coefficients., Vous pouvez utiliser ces informations pour construire l’équation de régression linéaire multiple comme suit:

Stock_Index_Price = (Intercept) + (Interest_Rate coef)*X1 + (Unemployment_Rate coef)*X2

Et une fois que vous avez branché les chiffres:

Stock_Index_Price = (1798.4040) + (345.5401)*X1 + (-250.1466)*X2

(2) La deuxième partie affiche la sortie prévue en utilisant sklearn:

Imaginez que vous souhaitez prédire le prix de l’indice boursier après avoir collecté les données suivantes:

  • Taux d’intérêt = 2,75 (c.-à-d.,, X1= 2.75)
  • Taux de chômage = 5.3 (c’est-à-dire X2= 5.3)

Si vous branchez ces données dans l’équation de régression, vous obtiendrez le même résultat prédit que celui affiché dans la deuxième partie:

Stock_Index_Price = (1798.4040) + (345.5401)*(2.75) + (-250.1466)*(5.3) = 1422.86

(3) La troisième partie affiche un tableau complet avec des informations statistiques générées par statsmodels.,

Ces informations peuvent vous fournir des informations supplémentaires sur le modèle utilisé (telles que l’ajustement du modèle, les erreurs types, etc.):

Notez que les coefficients capturés dans ce tableau (surlignés en rouge) correspondent aux coefficients générés par sklearn.

C’est bon signe! nous avons obtenu des résultats cohérents en appliquant à la fois sklearn et statsmodels.

Ensuite, vous verrez comment créer une interface graphique en Python pour recueillir les entrées des utilisateurs, puis afficher les résultats de prédiction.,

interface graphique utilisée pour la Régression Linéaire Multiple en Python

C’est là que le fun commence!

Pourquoi ne pas créer une Interface Utilisateur Graphique (GUI) qui permet aux utilisateurs d’entrer les variables indépendantes afin d’obtenir le résultat prévu?

Il se peut que certains utilisateurs ne sachent pas grand-chose sur la saisie des données dans le code Python lui-même, il est donc logique de leur créer une interface simple où ils peuvent gérer les données de manière simplifiée.,

Vous pouvez même créer un fichier batch pour lancer le programme en Python, et donc, les utilisateurs doivent simplement double-cliquez sur le fichier batch pour lancer l’interface graphique.

Voici le code Python complet pour votre GUI de régression ultime:

Une fois que vous exécutez le code, vous verrez cette GUI, qui comprend la sortie générée par sklearn et les diagrammes de dispersion:

Rappelez-vous que nous avons précédemment fait une prédiction en utilisant les valeurs suivantes:

    aux de chômage = 5.,3

Tapez ces valeurs dans les zones de saisie, puis cliquez sur le bouton ‘Prédire le cours de l’indice boursier’:

Vous verrez maintenant le résultat prédit de 1422.86, qui correspond à la valeur que vous avez vue auparavant.

Vous pouvez également consulter le tutoriel suivant pour en savoir plus sur l’incorporation de graphiques sur une interface graphique tkinter.

Conclusion

La régression linéaire est souvent utilisée dans l’apprentissage automatique. Vous avez vu quelques exemples de la façon d’effectuer une régression linéaire multiple en Python en utilisant à la fois sklearn et statsmodels.,

Avant d’appliquer des modèles de régression linéaire, assurez-vous de vérifier qu’il existe une relation linéaire entre la variable dépendante (c’est-à-dire ce que vous essayez de prédire) et la ou les variables indépendantes (c’est-à-dire la ou les variables d’entrée).