Maison  >  Article  >  développement back-end  >  Explication détaillée de la façon d'implémenter plusieurs modèles de régression linéaire en Python

Explication détaillée de la façon d'implémenter plusieurs modèles de régression linéaire en Python

WBOY
WBOYavant
2024-01-24 09:27:061729parcourir

Explication détaillée de la façon dimplémenter plusieurs modèles de régression linéaire en Python

La régression linéaire multiple est un modèle statistique largement utilisé dans l'analyse de données et l'apprentissage automatique. Il prédit la valeur d'une ou plusieurs variables dépendantes en utilisant plusieurs variables indépendantes. En Python, nous pouvons utiliser de nombreuses bibliothèques et frameworks différents pour implémenter plusieurs modèles de régression linéaire, tels que NumPy, Pandas, Scikit-Learn, etc.

Ci-dessous, nous utiliserons la bibliothèque Scikit-Learn pour construire un modèle de régression linéaire multiple afin de prédire les prix de l'immobilier. Dans cet exemple, nous utiliserons les données de l’ensemble de données House Prices. L'ensemble de données contient 506 échantillons et 13 variables indépendantes, dont le taux de criminalité urbaine, le nombre moyen de pièces dans une maison, l'âge de la maison, etc.

Tout d'abord, nous devons importer les bibliothèques et les ensembles de données requis :

import numpy as np
import pandas as pd
from sklearn.datasets import load_boston

boston = load_boston()
X = pd.DataFrame(boston.data, columns=boston.feature_names)
y = pd.DataFrame(boston.target, columns=['MEDV'])

Ici, nous utilisons la bibliothèque Pandas pour charger l'ensemble de données dans un objet DataFrame et stocker les variables indépendantes et dépendantes respectivement dans X et y.

Ensuite, nous devons diviser l'ensemble de données en un ensemble d'entraînement et un ensemble de test. L'ensemble de formation est utilisé pour ajuster le modèle, tandis que l'ensemble de test est utilisé pour évaluer les performances du modèle.

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)

Ici, nous utilisons la fonction train_test_split de la bibliothèque Scikit-Learn pour diviser l'ensemble de données en ensembles de formation et de test. Nous utilisons le paramètre test_size pour spécifier la taille de l'ensemble de test et le paramètre random_state pour définir la graine aléatoire afin de garantir la reproductibilité des résultats.

Ensuite, nous pouvons utiliser un modèle de régression linéaire pour ajuster l'ensemble de données.

from sklearn.linear_model import LinearRegression

regressor = LinearRegression()
regressor.fit(X_train, y_train)

Ici, nous utilisons la classe LinearRegression de la bibliothèque Scikit-Learn pour créer un modèle de régression linéaire et utiliser la méthode d'ajustement pour ajuster les données d'entraînement.

Nous pouvons désormais utiliser le modèle pour prédire les prix de l'immobilier dans l'ensemble de test.

y_pred = regressor.predict(X_test)

Ici, nous utilisons la méthode de prédiction pour prédire les prix de l'immobilier dans l'ensemble de test.

Enfin, nous pouvons utiliser certaines métriques d'évaluation de la bibliothèque Scikit-Learn pour évaluer les performances du modèle.

from sklearn.metrics import mean_squared_error, r2_score

print('Mean squared error: %.2f' % mean_squared_error(y_test, y_pred))
print('Coefficient of determination: %.2f' % r2_score(y_test, y_pred))

Ici, nous utilisons la fonction mean_squared_error pour calculer l'erreur quadratique moyenne et la fonction r2_score pour calculer le coefficient de détermination. Ces métriques nous aident à comprendre les performances et la précision du modèle.

En bref, la conception de modèles de régression linéaire multiple peut être très simple en utilisant Python. Il nous suffit d'importer les bibliothèques et les ensembles de données requis, d'ajuster le modèle et d'utiliser certaines métriques d'évaluation pour évaluer les performances du modèle. Dans les applications pratiques, nous devons effectuer une analyse exploratoire des données, une ingénierie des fonctionnalités et une optimisation du modèle sur les données pour obtenir de meilleurs résultats de prédiction.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer