Apprentissage Automatique et Visualisation
Introduction
Pr: Otman MAAROUF
Université Ibnou Zohr,
Faculté des Sciences Agadir
Centre d’Excellence IT
Filière: ADIA - S6
Module: Apprentissage Automatique et Visualisation
PLAN
❑ BIBLIOTHÈQUES
❑ NUMPY
❑ MATPLOTLIB
❑ PANDAS
❑ ARTIFICIAL NEURAL NETWORKS
1
BIBLIOTHÈQUES
➢ Définition d’une Bibliothèque en Python
Une bibliothèque Python (ou module) est un ensemble de fichiers contenant
du code pré-écrit qui permet d'ajouter des fonctionnalités spécifiques à un
programme sans avoir à les coder soi-même. Ces bibliothèques facilitent le
développement en fournissant des fonctions et des classes prêtes à l'emploi
pour des tâches courantes, comme le calcul numérique, la manipulation de
données, la visualisation, l'apprentissage automatique, etc.
Python dispose d’une bibliothèque standard riche et prend également en
charge de nombreuses bibliothèques externes développées par la
communauté.
O.MAAROUF February 17, 2025 2
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
Les bibliothèques Python peuvent être classées en plusieurs catégories selon
leur domaine d'application :
1. Bibliothèques pour le Calcul Numérique et Scientifique
Ces bibliothèques sont utilisées pour effectuer des calculs mathématiques
avancés et des analyses scientifiques.
•NumPy : Manipulation de tableaux multidimensionnels et opérations
mathématiques.
•SciPy : Fonctions avancées pour l'optimisation, l'intégration et le traitement
du signal.
•SymPy : Calcul symbolique (équations algébriques, dérivées, intégrales)
O.MAAROUF February 17, 2025 3
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
2. Bibliothèques pour la Manipulation et l'Analyse de Données
Utilisées pour traiter, transformer et analyser de grands ensembles de
données.
•Pandas : Gestion et manipulation de données tabulaires (DataFrames).
•Dask : Traitement de grandes données en parallèle
O.MAAROUF February 17, 2025 4
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
3. Bibliothèques pour la Visualisation de Données
Permettent de créer des graphiques et des visualisations interactives.
•Matplotlib : Création de graphiques statiques 2D.
•Seaborn : Visualisation avancée basée sur Matplotlib.
•Plotly : Graphiques interactifs.
O.MAAROUF February 17, 2025 5
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
4. Bibliothèques pour l'Intelligence Artificielle et le Machine Learning
Utilisées pour l’apprentissage automatique et le deep learning.
•Scikit-learn : Algorithmes de machine learning (classification, régression,
clustering).
•TensorFlow et PyTorch : Frameworks de deep learning pour les réseaux de
neurones.
O.MAAROUF February 17, 2025 6
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
5. Bibliothèques pour le Traitement du Langage Naturel (NLP)
Permettent d'analyser, comprendre et générer du texte.
•NLTK : Outils pour le NLP (tokenization, stemming, parsing).
•spaCy : NLP performant et rapide pour le deep learning.
•Transformers (Hugging Face) : Utilisation de modèles de langage pré-
entraînés (BERT, GPT)
O.MAAROUF February 17, 2025 7
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
6. Bibliothèques pour le Développement Web
Facilitent la création de sites web et d'API.
•Flask et Django : Frameworks pour le développement web.
•FastAPI : API performantes et asynchrones.
O.MAAROUF February 17, 2025 8
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
7. Bibliothèques pour l'Automatisation et le Web Scraping
Aident à automatiser des tâches et extraire des données du web.
•Selenium : Automatisation des interactions avec les pages web.
•BeautifulSoup : Extraction de données à partir de pages HTML
O.MAAROUF February 17, 2025 9
BIBLIOTHÈQUES
➢ Différents Types de Bibliothèques en Python
8. Bibliothèques pour la Gestion des Fichiers et Bases de Données
Utilisées pour stocker, lire et traiter des fichiers ou interagir avec des bases
de données.
•SQLite3 : Base de données relationnelle intégrée à Python.
•Pandas : Lecture et écriture de fichiers CSV, Excel, JSON.
O.MAAROUF February 17, 2025 10
NUMPY
➢ Définition
NumPy (Numerical Python) est une bibliothèque open-source de Python
conçue pour la manipulation et le calcul efficace de tableaux
multidimensionnels (ndarray) et de matrices. Elle offre une large collection de
fonctions mathématiques optimisées, permettant des opérations rapides et
efficaces sur les données numériques.
NumPy est largement utilisé en science des données, intelligence artificielle,
machine learning, et traitement d’images, car il améliore les performances
par rapport aux structures de données Python natives comme les listes.
O.MAAROUF February 17, 2025 11
NUMPY
➢Points forts de NumPy
Performance élevée :
•NumPy est écrit en C et Fortran, ce qui le rend beaucoup plus rapide que les
listes Python pour le calcul numérique.
•Utilise des opérations vectorisées, évitant ainsi les boucles Python lentes.
Gestion des tableaux multidimensionnels (ndarray) :
•Supporte des tableaux n-dimensionnels, ce qui facilite les calculs matriciels et
algébriques.
•Permet des opérations avancées comme le broadcasting pour éviter les
répétitions de calculs inutiles.
O.MAAROUF February 17, 2025 12
NUMPY
➢Points forts de NumPy
Richesse des fonctions mathématiques et statistiques :
•Intègre des fonctions pour l’algèbre linéaire, les transformations de Fourier, et
les statistiques.
•Exemples : somme, moyenne, écart-type, produit matriciel, etc.
Compatibilité avec d'autres bibliothèques :
•NumPy est la base de nombreuses autres bibliothèques Python comme Pandas,
Scikit-learn, TensorFlow, PyTorch.
•Simplifie l'intégration avec des outils scientifiques et de machine learning.
O.MAAROUF February 17, 2025 13
NUMPY
➢Points forts de NumPy
Gestion optimisée de la mémoire :
•Utilisation efficace de la mémoire grâce à des types de données homogènes et
un stockage en mémoire contiguë.
Lecture et écriture de fichiers :
•Supporte la lecture et l’écriture de fichiers CSV, Excel, JSON, binaire (.npy,
.npz)
O.MAAROUF February 17, 2025 14
MATPLOTLIB
➢ Définition de Matplotlib
Matplotlib est une bibliothèque Python utilisée pour la visualisation de
données sous forme de graphiques 2D et 3D. Elle permet de créer des
graphiques statiques, animés et interactifs avec une grande flexibilité.
Matplotlib est couramment utilisé en science des données, intelligence
artificielle et analyse exploratoire pour mieux comprendre les tendances
et distributions des données.
O.MAAROUF February 17, 2025 15
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
1. Courbe simple (plot)
•Utilisée pour tracer une fonction mathématique ou une tendance dans les données.
•Exemples : évolution du prix d’une action, variation de température.
O.MAAROUF February 17, 2025 16
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
2. Nuage de points (scatter)
•Utilisé pour visualiser la relation entre deux variables.
•Exemples : poids vs taille d’un groupe de personnes.
O.MAAROUF February 17, 2025 17
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
3. Histogramme (hist)
•Permet d’analyser la distribution des données.
•Exemples : distribution des notes d’un examen, répartition des âges
O.MAAROUF February 17, 2025 18
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
4. Diagramme en barres (bar)
•Utile pour comparer des catégories ou des valeurs discrètes.
•Exemples : ventes mensuelles d’une entreprise, population de plusieurs villes.
O.MAAROUF February 17, 2025 19
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
5. Diagramme circulaire (pie)
•Représente la répartition proportionnelle des données.
•Exemples : répartition du budget, pourcentage d’utilisateurs par plateforme
O.MAAROUF February 17, 2025 20
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
7. Box Plot (Boîte à Moustaches) dans Matplotlib
Un Box Plot (ou boîte à moustaches) est un graphique statistique qui permet de
visualiser la distribution d’un ensemble de données en mettant en évidence :
•La médiane (ligne centrale de la boîte).
•Le premier quartile (Q1) et le troisième quartile (Q3) (limites de la boîte).
•Les valeurs minimales et maximales (moustaches).
•Les valeurs aberrantes (points situés en dehors des moustaches).
Il est très utile pour analyser la dispersion, la symétrie et la présence de valeurs
extrêmes dans un jeu de données.
O.MAAROUF February 17, 2025 21
MATPLOTLIB
➢ Différents types de courbes et graphiques dans Matplotlib
O.MAAROUF February 17, 2025 22
PANDAS
➢ Définition de Pandas
Pandas est une bibliothèque Python open-source utilisée pour la
manipulation et l'analyse des données sous forme de tableaux
(DataFrame et Series). Elle permet de charger, traiter, transformer et
analyser facilement des données provenant de différentes sources (CSV,
Excel, bases de données, JSON, etc.).
Pandas est très utilisée en data science, machine learning, finance et
analyse statistique, car elle simplifie la gestion des grandes quantités de
données.
O.MAAROUF February 17, 2025 23
PANDAS
➢ Points forts de Pandas
1. Manipulation efficace des données tabulaires (DataFrame &
Series)
•Structure optimisée pour gérer des données indexées en lignes et colonnes.
•Supporte des types de données hétérogènes (numériques, textes, dates...).
2. Chargement et export de fichiers divers
•Peut lire et écrire dans plusieurs formats :
CSV - Excel - JSON - SQL
O.MAAROUF February 17, 2025 24
PANDAS
➢ Points forts de Pandas
3. Manipulation rapide et intuitive des données
•Filtrage et sélection (df[df["colonne"] > 10])
•Ajout et suppression de colonnes (df["nouvelle_col"] = valeur)
•Fusion et jointure de tables (pd.merge(df1, df2, on="id"))
4. Gestion des valeurs manquantes et des données aberrantes
•Détection (df.isnull().sum())
•Remplacement (df.fillna(moyenne))
•Suppression (df.dropna())
O.MAAROUF February 17, 2025 25
PANDAS
➢ Points forts de Pandas
5. Analyse et statistiques rapides
•Résumé des données (df.describe())
•Moyenne, médiane, écart-type (df.mean(), df.std())
•Groupement (df.groupby("colonne").sum()
6. Compatibilité avec d'autres bibliothèques Python
•Fonctionne avec NumPy, Matplotlib, Scikit-learn, TensorFlow, etc.
7. Performance et gestion efficace de grandes données
•Optimisé pour traiter des millions de lignes rapidement.
O.MAAROUF February 17, 2025 26
ARTIFICIAL NEURAL NETWORKS
➢ Définition des Réseaux de Neurones Artificiels (ANN)
Un réseau de neurones artificiels (ANN - Artificial Neural Network)
est un modèle computationnel inspiré du cerveau humain. Il est utilisé en
intelligence artificielle et en machine learning pour reconnaître des
motifs, classer des données et faire des prédictions.
Les ANN sont composés de neurones artificiels, organisés en couches
interconnectées, et apprennent à partir de données grâce à un processus
d’optimisation appelé apprentissage supervisé, non supervisé ou par
renforcement.
O.MAAROUF February 17, 2025 27
ARTIFICIAL NEURAL NETWORKS
➢ Les parties d’un Réseaux de Neurones Artificiels (ANN)
Un ANN est composé de plusieurs couches de neurones, chacune jouant un
rôle spécifique :
1️⃣ Couche d’entrée (Input Layer)
•Reçoit les données d’entrée (images, texte, chiffres…).
•Chaque neurone d’entrée correspond à une caractéristique (feature) des
données.
•Exemple : un réseau analysant des images peut avoir des pixels comme
entrée.
O.MAAROUF February 17, 2025 29
ARTIFICIAL NEURAL NETWORKS
➢ Les parties d’un Réseaux de Neurones Artificiels (ANN)
2️⃣ Couches cachées (Hidden Layers)
•Effectuent les calculs et transformations grâce aux poids (weights) et
biais (bias).
•Utilisent des fonctions d’activation (ReLU, Sigmoid, Tanh) pour
introduire de la non-linéarité.
•Plus il y a de couches cachées, plus le modèle est profond (Deep
Learning).
O.MAAROUF February 17, 2025 30
ARTIFICIAL NEURAL NETWORKS
➢ Les parties d’un Réseaux de Neurones Artificiels (ANN)
3️⃣ Couche de sortie (Output Layer)
•Génère le résultat final après traitement des données.
•Contient des neurones de sortie, selon le type de tâche :
• Classification : un neurone par classe avec Softmax ou Sigmoid.
• Régression : un seul neurone avec une activation linéaire
O.MAAROUF February 17, 2025 31
RÉSUMÉ
Bibliothèque Définition Principales caractéristiques Utilisation
NumPy Bibliothèque pour le Opérations rapides sur les tableaux, fonctions Utilisée en calcul scientifique,
calcul numérique et la mathématiques, algèbre linéaire, diffusion science des données et
gestion de tableaux (broadcasting), utilisation efficace de la apprentissage automatique.
multidimensionnels. mémoire.
Matplotlib Bibliothèque pour la Courbes, nuages de points, histogrammes, Utilisée pour l’analyse
visualisation de données diagrammes en barres et circulaires, exploratoire des données
en 2D et 3D. personnalisation des graphiques, visualisations (EDA), les tracés scientifiques
interactives. et les rapports.
Pandas Bibliothèque pour la Structures DataFrame et Series, nettoyage des Utilisée en science des
manipulation et l'analyse données, gestion des valeurs manquantes, données, analyse financière
des données. filtrage, fusion, agrégation, lecture/écriture de et prétraitement des données
fichiers. pour le machine learning.
ANN (Réseaux Modèles computationnels Couche d’entrée, couches cachées, couche de Utilisés en deep learning,
de Neurones inspirés des réseaux sortie, fonctions d’activation, rétropropagation, vision par ordinateur,
Artificiels neuronaux biologiques, algorithmes d’optimisation. traitement du langage naturel
utilisés en deep learning. (NLP) et applications basées
sur l’IA.
O.MAAROUF February 17, 2025 32