Prédiction de la consommation énergétique des bâtiments
Python, Machine Learning, Scikit-learn, Pandas, NumPy, EDA, Feature Engineering, Régression, GridSearchCV, Data Visualization
Prédiction de la consommation énergétique des bâtiments
Contexte
Dans le cadre d'un projet de Data Science, j'ai développé un modèle de Machine Learning permettant de prédire la consommation énergétique de bâtiments non résidentiels de la ville de Seattle à partir de leurs caractéristiques structurelles.
L'objectif était de proposer une solution capable d'estimer la consommation de bâtiments pour lesquels aucune mesure n'était disponible, afin d'accompagner les politiques de réduction des émissions de carbone.
Objectifs
- Réaliser une analyse exploratoire des données (EDA).
- Nettoyer et préparer les données.
- Concevoir de nouvelles variables (Feature Engineering).
- Comparer plusieurs modèles de régression.
- Optimiser le meilleur modèle.
- Identifier les facteurs ayant le plus d'influence sur les prédictions.
Architecture
Dataset Seattle Buildings
│
▼
Analyse exploratoire (EDA)
│
▼
Nettoyage des données
│
▼
Feature Engineering
│
▼
Préparation des données
(Encodage, Scaling)
│
▼
Comparaison de plusieurs modèles
│
▼
Optimisation (GridSearchCV)
│
▼
Prédictions + Feature Importance
Technologies utilisées
- Python
- Pandas
- NumPy
- Matplotlib
- Scikit-learn
- Jupyter Notebook
Réalisations
Analyse exploratoire (EDA)
- Étude de la qualité des données.
- Analyse des distributions.
- Identification des valeurs aberrantes.
- Analyse des corrélations.
- Visualisation des principales caractéristiques des bâtiments.
Préparation des données
- Gestion des valeurs manquantes.
- Suppression des données incohérentes.
- Encodage des variables catégorielles.
- Normalisation des variables numériques.
- Constitution des jeux d'entraînement et de test.
Feature Engineering
Création de nouvelles variables afin d'améliorer les performances du modèle :
- caractéristiques temporelles (année de construction, ancienneté)
- usages des bâtiments
- variables structurelles
- regroupement de catégories
- réduction du risque de data leakage
Modélisation
Comparaison de plusieurs modèles supervisés de régression :
- Régression Linéaire
- Random Forest Regressor
- Decision Tree Regressor
- Gradient Boosting Regressor
Évaluation des modèles grâce à une validation croisée afin de sélectionner le plus performant.
Optimisation
- Recherche d'hyperparamètres avec GridSearchCV
- Validation croisée
- Sélection du meilleur modèle
Interprétation
Analyse de l'importance des variables afin d'identifier les principaux facteurs influençant la consommation énergétique des bâtiments.
Compétences démontrées
Data Science
- Analyse exploratoire (EDA)
- Nettoyage de données
- Data Visualization
- Feature Engineering
- Détection d'outliers
Machine Learning
- Régression supervisée
- Validation croisée
- Évaluation de modèles
- Optimisation d'hyperparamètres
- Prévention du data leakage
Développement Python
- Manipulation de données
- Pipelines de préparation
- Notebook Jupyter
- Visualisation des résultats
Analyse métier
- Compréhension des enjeux énergétiques
- Interprétation des variables explicatives
- Restitution des résultats à un public métier
Résultat
Ce projet m'a permis de mettre en œuvre l'ensemble du cycle de vie d'un projet de Machine Learning, depuis l'analyse des données jusqu'à l'optimisation et l'interprétation d'un modèle prédictif, tout en appliquant les bonnes pratiques de préparation des données et d'évaluation des performances.
Compétences acquises
- Python
- Pandas
- NumPy
- Scikit-learn
- Machine Learning
- Régression
- Data Science
- Feature Engineering
- Data Cleaning
- Data Visualization
- EDA
- GridSearchCV
- Cross Validation
- Random Forest
- Gradient Boosting
- Decision Trees
- Linear Regression
- Feature Importance
- Jupyter Notebook