Projets Réalisés

Projets Réalisés en Entreprise et en Milieu Académique

Les applications de Souleymane daffe

Si vous cliquez sur l’une des applications et que l’écran « Zzz » apparaît, cliquez sur le bouton bleu puis patientez 30–60 s.

.

Application de détection de l'obésité : Obesity Detection

Application de prediction d'énergie : prediction d'énergie

Assurance-maladie-powerbi : Dashboard Power BI - Analyse de la performance (Assurance Maladie)

Analyse des Ventes en Ligne : Prédiction des Ventes

Prédicteur de rentabilité de commande : Prédiction de rentabilité de commande

Application de détection de Fraude Bancaire : Détection de Fraude

Prédiction manuelle de prix d’une voiture d’occasion : Prédiction de prix d’une voiture d’occasion

IA de Classement Automatique des Candidats : Analyse les CV

Analyse du Désabonnement des Clients dans Télécom : Désabonnement des Clients

Analyse sur Netflix: Analyse avancer sur Netflix

Prévision de la consommation d’énergie électrique

Contexte : Analyse de séries temporelles visant à prévoir la consommation électrique et à détecter des anomalies ou des effets saisonniers. L’objectif principal est :

Tâches effectuées : J’ai analysé une série temporelle de 2012 à 2021 afin de :

J’ai utilisé la méthode SARIMA pour réaliser les prédictions, en automatisant la sélection des meilleurs paramètres grâce à une fonction Python dédiée. Le modèle final a été évalué à l’aide de visualisations et d’indicateurs statistiques.

Outils : Python, ARIMA, SARIMA, SARIMAX, matplotlib, seaborn, statsmodels

Prédiction du Prix des Appartements avec le Machine Learning

Contexte :
Le marché immobilier est influencé par de nombreux facteurs tels que la localisation, la surface habitable, le nombre de pièces ou encore l'année de construction. Dans ce projet, j’ai cherché à créer un modèle prédictif fiable du prix de vente d’un appartement en me basant sur ses caractéristiques principales. L’objectif est d’aider les agences, les particuliers ou les investisseurs à estimer plus justement la valeur d’un bien.

Tâches effectuées :

  1. Collecte de données
    J’ai utilisé un dataset public provenant de la plateforme Kaggle. Il contient des informations détaillées sur des appartements : surface, nombre de pièces, localisation, année de construction, ainsi que le prix de vente. J’aurais également pu recourir au web scraping (sur des sites comme LeBonCoin ou SeLoger), mais j’ai préféré une base déjà structurée pour me concentrer sur l’analyse et la modélisation.
  2. Exploration et Prétraitement des Données
    • Analyse exploratoire (EDA) : j’ai utilisé des statistiques descriptives et des visualisations (histogrammes, boxplots, heatmap de corrélation) pour mieux comprendre la distribution des variables et identifier les relations avec le prix.
    • Nettoyage des données : j’ai supprimé ou imputé les valeurs manquantes, éliminé les doublons et vérifié la cohérence des données.
    • Transformation des variables :
      • J’ai encodé les variables catégorielles (comme la localisation) avec OneHotEncoder.
      • J’ai standardisé et normalisé les variables numériques pour les modèles sensibles à l’échelle (comme KNN).
      • J’ai également créé de nouvelles variables comme le prix au m² ou l’âge du bâtiment.
  3. Modélisation avec le Machine Learning
    • J’ai divisé le dataset en deux parties : 80 % pour l'entraînement et 20 % pour les tests.
    • J’ai entraîné plusieurs modèles de régression afin de comparer leurs performances :
      • Régression Linéaire
      • K-Nearest Neighbors (KNN)
      • Random Forest Regressor
      • Gradient Boosting (XGBoost et LightGBM)
    • Pour les évaluer, j’ai utilisé les métriques suivantes :
      • MAE (Mean Absolute Error)
      • RMSE (Root Mean Squared Error)
      • R² (coefficient de détermination)
      • Et des graphes de prédiction vs valeurs réelles
  4. Optimisation des modèles
    • J’ai optimisé les hyperparamètres grâce à GridSearchCV et RandomizedSearchCV.
    • J’ai effectué une sélection des variables les plus importantes pour simplifier les modèles et éviter l’overfitting.
  5. Visualisation et interprétation
    • J’ai affiché une heatmap de corrélation pour visualiser les dépendances entre variables.
    • J’ai analysé l’importance des variables dans les modèles basés sur les arbres (Random Forest, XGBoost).
    • J’ai utilisé des courbes d’apprentissage pour détecter d’éventuels problèmes de sous-apprentissage ou sur-apprentissage.

Outils & Bibliothèques utilisés :

Calcul de la performance commerciale, analyse de données et visualisation avec Power BI

Contexte : Création d’un tableau de bord Power BI mettant en avant :

Tâches effectuées : Pour évaluer la performance, j’ai d’abord mis en place une table de dates. Ensuite, j’ai réalisé plusieurs opérations : création d’une colonne pour le montant total des ventes, définition d’une mesure pour le total des ventes, puis calcul des ventes des années précédentes afin de mesurer les performances des produits. J’ai également créé une mesure nommée "Ventes précédentes", permettant cette comparaison, ainsi qu’une mesure "Évolution des ventes" pour visualiser les tendances par produit.

Outils : Power BI, DAX, Power Query, mesures, colonnes calculées, Excel

Scraping de données web et traitement analytique

Contexte : Ce projet s’inscrit dans une démarche d’apprentissage du traitement et de l’analyse de données. Il consistait à extraire des informations librement accessibles sur Internet, notamment depuis Wikipedia. Le sujet portait sur une liste de pays avec des indicateurs comme la population et la superficie, disponibles sous forme de tableaux HTML. L’objectif était de transformer ces données brutes en un jeu de données structuré, exploitable pour l’analyse et la visualisation. Ce projet a permis de développer des compétences en web scraping, manipulation de données et visualisation avec Python.

Tâches effectuées : J’ai identifié une page Wikipedia contenant des données sur les pays (population, superficie, etc.). À l’aide de l’inspecteur HTML, j’ai localisé les balises <table> pertinentes, puis utilisé la bibliothèque requests pour récupérer le contenu. Ensuite, j’ai extrait les données ciblées à l’aide de BeautifulSoup, nettoyé les formats, supprimé les balises HTML inutiles, et converti les types de données. Les informations ont été structurées dans un DataFrame avec pandas, analysées selon différents critères, puis visualisées via des graphiques. Enfin, le jeu de données a été exporté au format CSV.

Outils : Python, requests, BeautifulSoup, pandas, matplotlib, seaborn (utilisés dans un Jupyter Notebook).

Extraction de données depuis des documents PDF

Contexte : L’objectif était de collecter des données à partir de documents PDF (avec ou sans couche texte), d’extraire automatiquement des informations clés et de les structurer dans un fichier CSV contenant les colonnes suivantes : "enterprise_name", "raison_d_etre", "objectifs_sociaux", "objectifs_environnementaux", "mission_nature". Le projet s’appuie sur des techniques d’OCR, de traitement de texte et d’intelligence artificielle (modèle OpenAI GPT).

Tâches effectuées : - Identification des PDF contenant une couche texte ou non à l’aide de pdfplumber ;
- Utilisation de pdfplumber pour les PDF textuels, et de pytesseract pour l’OCR des PDF scannés ;
- Développement d’une fonction de découpage du texte en fragments pour respecter les limites de tokens des modèles IA ;
- Création d’un système de requêtes structurées vers le modèle GPT pour extraire des informations spécifiques (nom d’entreprise, raison d’être, missions RSE, etc.) ;
- Implémentation d’une logique d’agrégation des résultats issus de plusieurs pages (chunks) ;
- Traitement automatisé d’un dossier complet de PDF, avec sauvegarde des résultats dans un fichier CSV ;
- Gestion des erreurs, vérification des réponses de l’API, gestion des cas d’échec avec fallback JSON sécurisé.

Outils : Python, pdfplumber, pytesseract, OpenAI API, CSV, JSON

Analyse des Risques d'Obésité dans les Populations du Mexique, du Pérou et de la Colombie : Application de l'Intelligence Artificielle aux Habitudes Alimentaires et à la Condition Physique

Contexte :
L’obésité est un enjeu de santé publique croissant en Amérique latine, notamment au Mexique, au Pérou et en Colombie. Ce projet vise à analyser les facteurs de risque (alimentation, activité physique, habitudes de vie) liés à l’obésité dans ces pays, en utilisant des techniques d’intelligence artificielle.
Les données collectées concernent 2111 individus avec 18 variables (9 qualitatives, 8 quantitatives et 1 calculée : l’IMC). La variable cible est "NObeyesdad", qui catégorise 7 niveaux d’obésité.

Objectifs :

Tâches effectuées :

  1. Compréhension & Préparation des Données
    • Analyse des variables qualitatives et quantitatives
    • Ajout de l’IMC (poids / taille²)
    • Détection des valeurs manquantes et aberrantes
    • Recodage des variables numériques décimales (FCVC, NCP, CH2O, FAF, TUE)
    • Encodage des variables catégorielles avec LabelEncoder()
  2. Nettoyage et Structuration
    • Suppression de variables non pertinentes : TUE, CALC, CH2O, SMOKE, Gender
    • Création de plusieurs DataFrames : obese, obesecluster, obesecluster_array, attributs_data, target_data
  3. Analyse exploratoire
    • Matrice de corrélation pour étudier les relations entre les variables
    • Identification des variables influentes dans la prédiction de l’obésité
  4. Apprentissage non supervisé
    • Clustering K-Means avec 7 puis 5 clusters
    • Réduction de dimension (PCA) pour visualisation 2D
  5. Apprentissage supervisé

    Modèles utilisés :

    • DecisionTreeClassifier (Accuracy ≈ 96%)
    • DecisionTreeRegressor (≈ 96.5%)
    • Gaussian Naive Bayes (≈ 83.7%)
    • Régression Logistique (≈ 96.7%)
    • Support Vector Machine (SVM) (≈ 96.06%)
    • K-Nearest Neighbors (KNN) (≈ 92.27%)

    Évaluation des modèles :

    • Accuracy, Précision, Rappel, F1-Score
    • Matrices de confusion, courbes ROC
    • Erreurs : absolue, quadratique (EQ), EQM
  6. Sélection du modèle optimal
    • Modèles les plus performants : Régression logistique, DecisionTreeRegressor, SVM
  7. Règles de classification interprétables
    • Création de règles simples basées sur l’IMC, la taille, le poids, les antécédents familiaux, etc.
  8. Évaluation financière (étude complémentaire)
    • Analyse coût-bénéfice des politiques publiques de prévention
    • Évaluation du retour sur investissement (ROI), bénéfices économiques et sociaux

Outils :

Détection de fake news via Deep Learning

Contexte : Lutte contre la désinformation diffusée sur les réseaux sociaux, notamment concernant la santé des dirigeants.

Tâches effectuées : Collecte de données (Facebook, Twitter, etc.), traitement en CSV, NLP, entraînement de modèles pour la détection automatique de fausses nouvelles.

Pour ce projet, j’ai choisi de m’appuyer sur l’intelligence artificielle (IA), qui offre une solution prometteuse pour automatiser la détection des fake news. En utilisant des techniques avancées de traitement du langage naturel (NLP), j’ai récolté des données à partir de diverses sources telles que Facebook, Google, Twitter, la presse et YouTube.

Par exemple, j’ai récupéré toutes les vidéos évoquant les fausses nouvelles sur la santé du président. Je me suis concentré sur les commentaires trouvés sur Google, j’ai collecté des tweets liés à ce sujet sur Twitter, rassemblé des articles de presse, et analysé les publications et commentaires sur Facebook.

J’ai ensuite structuré mes données dans un fichier CSV comportant quatre colonnes :

Après avoir préparé ces fichiers CSV, j’ai utilisé la bibliothèque Pandas en Python pour les concaténer en un seul fichier. Grâce à la fonction concat(), j’ai pu fusionner toutes les données en un fichier consolidé prêt à l’analyse.

Ce fichier unique contient l’ensemble des données structurées. La colonne "sources" permet de retracer l’origine de chaque entrée, "commentaire" fournit le contenu textuel, "malade" permet d’identifier les fausses nouvelles liées à la santé, et "auteur" indique l’origine du contenu.

Ce processus de collecte et de structuration des données est essentiel pour entraîner un système d’IA performant. Il facilite l’analyse des tendances, la détection des motifs récurrents dans les fausses nouvelles, et l’identification de sources peu fiables.

En résumé, j’ai pris en charge l’intégralité de la collecte et de l’organisation des données, créant ainsi une base robuste pour mon projet de détection de fake news.

Outils : Python, Pandas, NumPy, Scikit-learn, TensorFlow, Matplotlib, Seaborn, CountVectorizer, TfidfVectorizer, Stopwords, Logistic Regression, Random Forest, SVM, accuracy_score, f1_score, confusion_matrix.

Assistant IA – Jeux Olympiques 2024

Contexte : Développement d’un chatbot prédictif basé sur l’IA pour répondre à toutes les questions liées aux Jeux Olympiques de Paris 2024, notamment les classements, les performances des athlètes, et les prévisions de médailles.

Tâches effectuées : J’ai conçu et testé plusieurs prompts spécialisés afin d’adapter les réponses du chatbot selon le contexte :

Ce système de prompts permet une réponse contextuelle, fiable et nuancée selon le type de requête utilisateur.

Outils : Python, OpenAI API, Streamlit

Développement d'une application carbone

Contexte : Développement d’un outil innovant dans Revit pour estimer l’empreinte carbone des projets architecturaux dès les phases d’études préliminaires et d’avant-projet. Cet outil permet de calculer une estimation globale du bilan carbone à partir des données disponibles dans le modèle Revit. Il aide les décideurs à comprendre rapidement l’impact environnemental potentiel de leurs constructions et à prendre des décisions plus durables.

L’outil a été conçu pour être facilement intégrable et simple d’utilisation. Il permet également de générer des rapports automatisés ainsi que des vues 3D colorées pour visualiser l’impact carbone de chaque composant du bâtiment. j'ai joué un rôle clé dans son développement, notamment dans la programmation en Python et l’intégration technique avec Revit. Grâce à ma contribution, l’outil sera déployé chez AREP à l’été 2025.

Tâches effectuées : Développement d’une application sur Revit (Python/C#), génération automatique du calcul d’empreinte carbone, visualisation interactive avec Dash & Power BI, assistance à la prise de décision écologique.

Outils : Python, Revit, C#, Dash, Power BI, Git, GitHub.