Data Science
Lotfi NAJDI
Année Universitaire 2022 / 2023
Finance et Ingénierie Décisionnelle
ENSA Agadir
Processus de la data science
• L'apprentissage automatique est un élément essentiel pour le « data scientist »
afin de traiter un problème métier spécifique.
• La data science en tant que terme plus large se concentre non seulement sur les
algorithmes de ML et les statistiques appliquées, mais prend également en
charge l'ensemble de la méthodologie de traitement des données.
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Formulation du problème
Chaque projet commence par la compréhension de l’activité ou du métier en question.
• Objectif du projet?
• Dirigeants et autres partenaires concernés?
• Problème métier à résoudre ?
• Comment traduire les demandes ambiguës en un problème de data science concret
et bien défini ?
• Métriques convenables pour mesurer la réalisation des objectifs .
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Collecte et intégration des données
Objectif : Identifier et acquérir toutes les données appropriées pour répondre aux
questions définissant les objectifs du projet.
Identifier les sources de données
Collecter les données brutes
Ingérer les données
Dans le cas ou les résultats de la modélisation ne sont pas satisfaisantes, ces
données doivent être enrichies
Collecte et intégration des données
• Ces données sont-elles déjà disponibles?
• Si oui, quelles parties des données sont utiles? Sinon, de quelles autres données
avez-vous besoin?
• Quels types de ressources (temps, argent, infrastructure) faudrait-il pour
collecter ces données sous un format exploitable ?
Collecte et intégration des données
Données internes
• Enterprise Resource Planning (ERP)
• Données sur les clients
• Customer Relationship Management (CRM)
• Transaction financières
• Supplier Relationship Management (SRM)
• Données sur la logistique
• Supply Chain Management (SCM)
• Données sur la production
• Human Capital Management (HCM)
• Application de gestion
Collecte et intégration des données
Données internes
• Data warehouse
• Data lake
• Fichiers de logs (serveurs, application web)
• Email et autres documents numériques
• Objets connectés
Collecte et intégration des données
Données provenant du Web
Données ouverte (open data)
APIs
Web Scraping
Collecte et intégration des données
Open data
«La notion de données ouvertes, et en particulier de données gouvernementales
auxquelles toute personne peut accéder librement et réutiliser à n'importe quelle
fin, existe depuis quelques années. En 2009, les données ouvertes ont commencé à
devenir accessible par le grand public, et divers gouvernements (tels que les
États-Unis, le Royaume-Uni, le Canada et la Nouvelle-Zélande) ont annoncé de
nouvelles initiatives Open data. »
Open data handbook
Collecte et intégration des données
Open data
• Transparence et contrôle démocratique
• Création et amélioration des Produits et services L'innovation
• Amélioration de l'efficacité des services gouvernementaux
• Nouvelles connaissances provenant de sources de données combinées et de
modèles dans de gros volumes de données
Open data handbook
Collecte et intégration des données
Open data
European Union Open Data Portal
U.S. Census Bureau
Data.gov
World Bank Open Data
UNICEF Dataset
World Health Organization) — Open data repository
Google Public Data Explorer
Registry of Open Data on AWS (RODA)
Kaggle
Collecte et intégration des données
Data APIs (Application Programming Interface )
Une API est une interface de programmation qui permet de se « brancher » sur une
application pour échanger des données. Une API est ouverte et proposée par le
propriétaire du programme.
Collecte et intégration des données
Data APIs (Application Programming Interface )
• Twitter • Alpha Vantage
• Bloomberg
• Wikipédia
• Quandl
• Google Maps
• Yahoo Finance
Collecte et intégration des données
Web Scraping
Extraire des données directement à partir d’un site Web pour les utiliser dans un
contexte différent.
• Parcourir le contenu d’une page web pour le rendre exploitable par un langage
donnée (Déterminer URL et structure )
• récupérer les informations clefs moyennant l’HTML
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Prétraitement des données(data Preprocessing)
Prétraitement des données
Objectif : Préparer les données pour l’analyse et la modélisation
• Nettoyage des données (data cleaning )
• Data wrangling (Manipulation des données) et data remodeling
• Feature Engineering : transformation des données en une représentation
adaptée à l’algorithme de M.L
Prétraitement des données
Existence de plusieurs sources de données avec différents formats
• Filtrage des données
• Combinaison de données provenant de plusieurs sources de données
• Consolidation des données
Besoin de nettoyer les données :
• Suppression des Données redondantes
• Traitement des données incohérentes
• Traitement des données manquantes( Missing values )
• Traitement d'éventuelles exceptions, erreurs ou valeurs atypiques ou aberrantes
(Outliers )
Prétraitement des données
• les données brutes sont souvent désorganisées :
• Plusieurs variables sont dans une seule colonne
• Variables sont en lignes et en colonnes
• Besoin en manipulation et remaniement des données pour que :
• chaque colonne représente une variable
• chaque ligne correspond à une observation
Feature Engineering
Après le prétraitement de données : Besoin en transformation des données en une
représentation adaptée au modèle d'apprentissage automatique.
• Feature Creation and Transformation
• Feature extraction
• Feature Selection
Feature Engineering
Feature Creation and Transformation : La construction manuelle de nouvelles features à
partir de données brutes.
• Pour la classification, les variables catégorielles peuvent être encodées sous forme
d'une représentation numérique par en variables indicatrices (dummy variables)
• Les données numériques peuvent être discrétisées afin de réduire un large nombre de
valeurs de données en un ensemble fini d'intervalles (âge en tranche d'âge ).
• La transformation logarithmique peut être utilisée pour modifier la forme de la
distribution et réduire l'asymétrie.
• Normalisation ou mise à l’échelle (scaling) afin de garantir les mêmes plages de
valeurs pour les variables d'entrée , réduire le bruit et améliorer la précision du
modèle.
Feature Engineering
Feature Creation and Transformation
• Combiner des features existantes pour en créer de nouvelles.
• Décomposer des features existantes pour en créer de nouvelles.
• Décomposer une date en plusieurs features (jour, mois, année, heure ) pour avoir le
contexte de l'événement (relation entre l'heure ou le jour de la semaine avec la cible )
• Créer des features en agrégeant les données brutes
Feature Engineering
Feature extraction : La construction automatique de nouvelles features (
caractéristiques) à partir de données brutes
• Pour les données tabulaires, il peut s'agir de méthodes Réduction de
dimensionnalité telles PCA afin de simplifier les attributs des données
• Pour les données comprenant du texte, les mots sont convertis en un vecteur
de mots (bag of words, TF-IDF , Word2Vec ..)
Feature Engineering
Feature Selection : Sélection automatiquement d’un sous-ensemble de features les plus
pertinentes pour le problème traité .En général, un ensemble de données comporte de
nombreuses caractéristiques, dont certaines peuvent être redondantes ou sans intérêt pour
la valeur à prédire.
La sélection des caractéristiques se révèle nécessaire dans les cas suivants :
• Simplifier les modèles afin qu'ils soient faciles à interpréter
• Réduire le temps nécessaire à la phase d'apprentissage
• Améliorer la précision et la généralisation des modèles construits
Feature Engineering
Feature Selection
• Filter Methods : En évaluant la corrélation entre chaque feature et la cible, ces méthodes
utilisent une mesure statistique pour attribuer un score à chaque feature. Les features sont triées
selon ce score, ce qui permet de prendre en considération ou éliminer certaines de ces features.
• Wrapper Methods : Différentes combinaisons sont évaluées et comparées. Un modèle prédictif
est utilisé pour évaluer une combinaison de features et attribuer un score basé sur la précision
du modèle (Recursive feature elimination)
• Embedded Methods : la sélection fait partie intégrante de la construction du modèle. Cette
méthode détermine les features qui contribuent le mieux à la précision du modèle lors de la
création de ce dernier (exemple lasso et random forest)
Feature Engineering
“Feature selection is different from dimensionality reduction. Both methods seek to reduce
the number of attributes in the dataset, but a dimensionality reduction method do so by
creating new combinations of attributes, where as feature selection methods include and
exclude attributes present in the data without changing them.”
An-introduction-to-feature-selection
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Exploratory Data Analysis (EDA)
Objectif : Développer une compréhension profonde des données.
Inspectez les données et leurs propriétés afin de :
• dégager les principales caractéristiques des données
• Auditer la qualité des données afin de repérer des anomalies ((valeur manquantes et outlier )
• Utiliser la visualisation et la synthèse des données pour :
• découvrir des motifs et tendances , vérifier des hypothèses:
• identifier des relations entre variables
• identifier les tendances générales.
• Production des représentations graphiques/visuelles (histogrammes, graphiques)
Exploratory Data Analysis (EDA)
Statistiques descriptives
• Statistiques générales
• Nombre d'instances ou observations (nombre de lignes)
• Nombre de features (nombre de colonnes)
• Statistiques univariées (une seule variable )
• Statistiques pour les variables numériques (moyenne, médiane , IQR , histogramme)
• Statistiques pour les variables catégorielles (barplot, valeurs les plus/les moins fréquentes,
pourcentage, nombre de valeurs uniques)
• Statistiques relatives à la cible (distribution )
• Statistiques multivariées (plusieurs variables ) : Correlations entre les paires de variables.
Exploratory Data Analysis (EDA)
Exploratory Data Analysis (EDA)
Exploratory Data Analysis (EDA)
Exploratory Data Analysis (EDA)
Exploration des valeurs manquantes
Exploratory Data Analysis (EDA)
Exemple de la visualisation des distributions pour les variables catégorielles
Exploratory Data Analysis (EDA)
Exploration de la relation entre la cible Status et la variable Records.
Exploratory Data Analysis (EDA)
Exploration de la relation entre la cible Status et la variable Job.
Exploratory Data Analysis (EDA)
Distribution des variables continues selon les valeurs prises par la cible Status
Exploratory Data Analysis (EDA)
Analyse de corrélation entre Status_bad et le reste des variables.
Exploratory Data Analysis (EDA)
Correlations
• Les variables fortement corrélées (positives ou négatives) peuvent dégrader les performances de
certains algorithmes de ML, comme la régression linéaire et logistique.
• Sélectionnez l'une des caractéristiques corrélées et écartez les autres.
• D'autres algorithmes comme les arbres de décision, sont généralement moins sensibles à ce
problème.
• En revanche, les variables fortement corrélées avec la cible peuvent améliorer les performances des
algorithmes de machines Learning comme la régression linéaire et logistique.
Exploratory Data Analysis (EDA)
• Etudier et comprendre de manière avancée les données
• Attirer l’attention des décideur en préparant des visualisation qui expliquent le
problème en question ( le coût du désabonnement par catégorie de produit ou
service)
• Soulever de nouvelles questions sur vos données.
• Produire des graphes élégants et informatifs pour mieux comprendre les données
• Explorer des patterns inattendues à l’aide des visualisations avancées .
Exploratory Data Analysis (EDA)
• Mettre en lumière les caractéristiques de chaque variables
• Découvrir les relations entre les différentes variables
• Identifier les relations entre la cible (désabonnement) et diverses variables du
jeu de données.
• Rechercher des réponses en utilisant les techniques de visualisation
• Affiner vos questions initiales ou générer de nouvelles questions
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Modélisation
Objectifs : Développement des modèles prédictifs ou descriptifs
• Sélection les techniques de modélisation à utiliser selon l’objectif
• Entrainement et optimisation du modèle de machine Learning (model training and
tuning)
• Évaluation des résultats (Model Evaluation)
• Sélection du modèle le plus approprié
Modélisation
• Les modèles sont des outils qui viennent compléter les visualisations.
• Effectuer une analyse approfondie (apprentissage automatique )
• Découvrir des patterns (insights )
• Permettre de faire des prédictions précises
Modélisation
• Développement des modèles prédictifs ou descriptifs
• Intérêt à essayer d'utiliser plusieurs algorithmes
• Processus hautement itératif (préparation de données et évaluation)
Modélisation
L'évaluation du modèle est effectuée pendant le développement du modèle et avant le
déploiement du modèle:
• Apprécier la qualité et les performance du modèle construit
• S'assurer qu'il répond correctement au problème en question
Critères d’évaluation
• Dépendent du type d’apprentissage
• Training/Testing set
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Communication des résultats
Communication des résultats
Objectif : Communiquer les résultats et les actions recommandées
à un public non technique
• Expliquer , simplifier et résumer les résultats de tous les modèles construits
• Résumer et partager vos analyses sous forme de rapports et des présentations
• Permettre aux utilisateurs finaux d'avoir une expérience interactive
Communication des résultats
Communication des résultats
• Permettre à d'autres personnes de reproduire et vérifier le travail réalisé.
• Générer des rapports de synthèse pour appuyer la capacité à influencer les
décideurs et transmettre les idées et conclusions tirées.
Communication des résultats
Communication des résultats
• Décrire l'algorithme utilisé et les caractéristiques prises en compte (une vue de haut niveau)
• Décrire la logique générale du modèle en termes d'impact des features , règles ou d'arbres
de décision.
• Décrire l’ordre d’importance des features dans la prédiction faite par le modèle à un
niveau global.
• Expliquer le comportement du modèle dans son ensemble afin de :
• Validation de la part des managers avant déploiement
• Comparaison du modèle avec les connaissance d’un expert métier
• Conformité à la réglementation en vigueur.
Communication des résultats
Communication des résultats
Décrire la logique générale du modèle :
• Les modèles qui sont directement interprétables comprennent les arbres de décision, les
ensembles de règles booléennes et les modèles additifs généralisés, qui sont facilement
compréhensibles par les gens.
• Parfois besoin d'expliquer avec un modèle simple de substitution en s’appuyant sur les
modèles de type black box « boîte noire » afin de fournir une compréhension globale
aux décideurs.
Communication des résultats
Communication des résultats
• Expliquer les décisions individuelles faite par le modèle
• Pour une instance (enregistrement donnée ) , pourquoi le modèle a-t-il pris cette décision?
• Illustrer l'importance des features derrière la prédiction faite par le modèle pour un
enregistrement spécifique.
• Cette capacité d’interprétation et explication locale constitue un outil puissant permettant de
suggérer des actions afin d'agir pour changer la décision du modèle.
Communication des résultats
• Utiliser des techniques comme LIME pour expliquer la probabilité du churn pour chaque
client.
• Trier les features en fonction de leur contribution à une probabilité de churn (désabonnement
) pour chaque client.
• Développer une intuition sur la manière avec laquelle le modèle fait ses prédictions.
• Cette intuition peut contribuer à mieux comprendre, à faire confiance et à ajuster le modèle en
question.
• Analyser et recommander les possibilités de réduire la probabilité de désabonnement d'un
Communication des résultats
fastforwardlabs
Communication des résultats
Communication des résultats
“It doesn’t matter how great your analysis is unless you can explain it to others:
you need to communicate your results.” Hadley Wickham
• Présenter vos approches et vos recommandations à un public non technique est
une compétence cruciale pour un data scientist
• Savoir expliquer efficacement comment vous êtes arrivé à une conclusion
spécifique est essentiel, au même titre que le savoir-faire technique pour
analyser les données, créer des modèles prédictifs
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Déploiement
Objectif : mettre les modèles dans un environnement de production
• Une fois le modèle fonctionne correctement il devrait être déployé pour qu’il soit à
disposition des autres utilisateurs métiers et des autres application
• Le déploiement peut prendre les formes suivantes : rapport, Dashboard, API,
application web.
• les utilisateurs et autres applications peuvent envoyer des données à votre modèle
et obtenir des prédictions.
Processus de la data science
Problème métier Formulation
(Business Problem) du problème
Collecte et intégration Prétraitement et nettoyage Exploration et visualisation
Feature Engineering
des données des données (Preprocessing) (Exploratory data analysis )
Modélisation
Communication des résultats Déploiement
(Model building)
Programmation
• Outil générique, utilisé à toutes les étapes du projet data science
• Programmer pour :
• Concevoir les opérations de manipulation de données comme un flux de
traitement organisé
• Automatiser des tâches courantes depuis la collecte des données , la
Préparation des données, la modélisation et la communication des résultats .