0% ont trouvé ce document utile (0 vote)
38 vues2 pages

TP Régression Linéaire avec Scikit-learn

Ce TP se concentre sur la régression linéaire en utilisant un jeu de données contenant treize variables explicatives pour prédire la concentration d'ozone. Les étapes incluent l'exploration des données, l'utilisation de la bibliothèque Scikit-learn pour construire et évaluer le modèle, ainsi que la normalisation des données. Les résultats incluent des métriques de performance et des visualisations des prédictions par rapport aux valeurs réelles.

Transféré par

Dhauha Jouini
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
38 vues2 pages

TP Régression Linéaire avec Scikit-learn

Ce TP se concentre sur la régression linéaire en utilisant un jeu de données contenant treize variables explicatives pour prédire la concentration d'ozone. Les étapes incluent l'exploration des données, l'utilisation de la bibliothèque Scikit-learn pour construire et évaluer le modèle, ainsi que la normalisation des données. Les résultats incluent des métriques de performance et des visualisations des prédictions par rapport aux valeurs réelles.

Transféré par

Dhauha Jouini
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TP ML - Régression Linéaire

LCS3 - GLSI
1- Exploration des données.
Dans ce TP, nous utiliserons un jeu de données constitué de treize variables explicatives et une
variable à prédire.
Ces observations se trouvent dans le fichier ozone.csv.

Les variables explicatives sont définies comme suit :


- Les variables T9, T12 et T15 correspondent respectivement à des prélèvement de température à
9h, 12h et 15h.
- Les variables Ne9, Ne12 et Ne15 correspondent respectivement à des prélèvements de nébulosité
à 9h, 12h et 15h.
- Les variables Vx9, Vx12 et Vx15 correspondent respectivement à des prélèvements de vent à 9h,
12h et 15h.
- Deux variables qualitatives Vent et Pluie. Ces deux variables ne seront pas utilisées lors de
l’estimation des paramètres du modèle qu’on compte construire. On pourra, tout de même, les
transformer en valeurs numériques.
Par exemple, pour la variable Pluie, la modalité sec peut prendre la valeur 1 et la modalité Pluie on
peut lui attribuer la valeur 2.
De même pour la variable Vent les modalité peuvent être transformées comme suit : Nord=1,
Sud=2, Est=3 et Ouest=4.
- La variable Date correspond aux dates de prélèvements. Cette variable ne sera pas utilisée.
- Enfin, la variable Max03v correspond à la mesure maximum de la concentration d’ozone la veille.

Dans cet exemple, la variable à expliquer (à prédire) est la variable Max03. L’objectif du modèle
que nous allons construire est donc de prédire la valeur que prendra le lendemain la variable
Max03v en fonction des valeurs enregistrées aujourd’hui pour les dix variables prédictives T9, T12,
T15, Ne9, Ne12, Ne15, Vx9, Vx12, Vx15 et Max03.

2- Utilisation de Scikit-learn

La bibliothèque Scikit-learn est une bibliothèque composée de plusieurs modules dédiés à la Data
Science. La mise en œuvre d’un algorithme avec cette bibliothèque peut être synthétisé par les
étapes suivantes :
1. Instanciation d’un algorithme
2. Lancement de la fonction de l’apprentissage
3. Réalisation des prédictions
4. Évaluation des performances

En plus des algorithmes d’apprentissage, Scikit-learn fournit plusieurs modules permettant de


manipuler les données.
3- Construction du modèle.

a- Importation des modules

Pour ce TP, nous aurons besoin de :


- La bibliothèque pandas pour manipuler les données
- importer sqrt de la bibliothèque math nécessaire pour le calcul des métriques
- Importer la bibliothèque matplotlib.pyplot pour dessiner des courbes
- De la bibliothèque scikit-learn nous importerons
- la fonction train_test_split du module sklearn.model_selection (diviser les données en
données d’entraînement et données de test)
- la fonction LinearRegression du module sklearn.linear_model (cette fonction nous
permettra d’instancier l’algorithme de régression linéaire)
- les fonctions mean_squared_error et r2_score du module sklearn.metrics (permettant de
calculer la performance du modèle)
- le module preprocessing (permettant de manipuler les données, dans notre cas la
normalisation de quelques données)

b- Lecture des données dans un Dataframe

• Lire le fichier ozone.csv et afficher ses données


• Isoler la variable à prédire
• Dans le jeu de données restant, garder seulement les 10 données prédictives

c- Normalisation des données

• Afficher les statistiques de la Dataframe comportant les données prédictives. Un


déséquilibre dans les échelles sur lesquels les variables sont définies.
• Procéder à une normalisation des données en utilisant le module preprocessing
• Afficher les stats de la Dataframe après normalisation.

d- Construction d’un modèle linéaire

• Diviser les données en données d’entraînement et données de test (les données de test
représentent 20 % de l’ensemble des données).
• Instancier un algorithme de régression linéaire
• Entraîner le modèle

e- Évaluer le modèle

• appliquer le modèle sur les données de test


• calculer les deux métriques mean_squared_error et r2_score et les afficher
• afficher les coefficients associés aux dix variables prédictives
• afficher la valeur du coefficient a0
• réaliser une courbe affichant les prédictions du modèle et les vrai valeurs de la variable à
prédire des données de test

Vous aimerez peut-être aussi