Data Visualization
La visualisation de données représente les données sous forme de graphiques, de diagrammes et de cartes pour rendre visibles les tendances, les valeurs aberrantes et les erreurs, de l’audit des jeux de données aux courbes d’entraînement.
La visualisation de données est la représentation graphique des données : elle encode les valeurs par leur position, leur longueur, leur couleur ou leur forme dans des graphiques, des tracés, des cartes et des images annotées, afin de rendre visibles les motifs, les valeurs aberrantes et les erreurs que masquent les tableaux de nombres. La visualisation exploratoire aide les analystes à comprendre les données lors de l’analyse exploratoire des données, une pratique défendue par John Tukey dans son livre éponyme de 1977 ; la visualisation explicative, elle, communique des résultats. En apprentissage automatique et en vision par ordinateur, elle permet aux spécialistes d’auditer les jeux de données, de suivre l’entraînement, de diagnostiquer les erreurs des modèles et d’expliquer leurs prédictions.
Pourquoi la visualisation est importante#
En 1973, le statisticien Francis Anscombe l’a démontré avec quatre petits jeux de données, désormais appelés quartet d’Anscombe, qui partagent presque les mêmes statistiques récapitulatives :
import matplotlib.pyplot as plt
import numpy as np
# Anscombe's quartet: four datasets of 11 (x, y) points each
x = [10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 5]
quartet = {
"I": (x, [8.04, 6.95, 7.58, 8.81, 8.33, 9.96, 7.24, 4.26, 10.84, 4.82, 5.68]),
"II": (x, [9.14, 8.14, 8.74, 8.77, 9.26, 8.10, 6.13, 3.10, 9.13, 7.26, 4.74]),
"III": (x, [7.46, 6.77, 12.74, 7.11, 7.81, 8.84, 6.08, 5.39, 8.15, 6.42, 5.73]),
"IV": ([8] * 7 + [19] + [8] * 3, [6.58, 5.76, 7.71, 8.84, 8.47, 7.04, 5.25, 12.50, 5.56, 7.91, 6.89]),
}
# Print each dataset's summary statistics and draw its scatter plot side by side
fig, axes = plt.subplots(1, 4, figsize=(12, 3), sharex=True, sharey=True)
for ax, (name, (xs, ys)) in zip(axes, quartet.items()):
r = np.corrcoef(xs, ys)[0, 1]
print(f"{name}: mean y {np.mean(ys):.2f}, variance y {np.var(ys, ddof=1):.2f}, correlation {r:.3f}")
ax.scatter(xs, ys)
ax.set_title(f"Dataset {name}")
fig.savefig("anscombe.png")Les quatre jeux de données affichent une moyenne de y de 7,50, une variance de 4,12 ou 4,13 et une corrélation de 0,816 ou 0,817, mais leurs graphiques enregistrés n’ont rien de semblable : le jeu I présente une tendance linéaire bruitée, le II une courbe lisse, le III une droite parfaite avec une valeur aberrante, et le IV un alignement vertical de points dont la corrélation est entièrement due à un point très éloigné. En 2017, des chercheurs d’Autodesk ont prolongé cette idée avec le Datasaurus Dozen, soit treize jeux de données partageant les mêmes statistiques, dont l’un forme un dinosaure sur le graphique.
Choisir un graphique#
Un graphique est efficace lorsque son encodage correspond à la question posée. Les graphiques à barres conviennent aux comparaisons entre catégories, les graphiques linéaires aux tendances dans le temps, les histogrammes et les boîtes à moustaches aux distributions, les nuages de points aux relations entre deux variables, et les cartes et cartes de chaleur aux motifs spatiaux. Dans leurs expériences de perception graphique de 1984, William Cleveland et Robert McGill ont constaté que les personnes évaluent le plus précisément une position sur une échelle commune, puis la longueur, l’angle, la surface et enfin la nuance de couleur ; c’est pourquoi les graphiques à barres et à points sont plus efficaces que les diagrammes circulaires pour les comparaisons précises. La couleur représente au mieux les catégories et les magnitudes avec des palettes perceptuellement uniformes et adaptées aux daltoniens, comme viridis, la palette par défaut de Matplotlib depuis la version 2.0.
La visualisation en apprentissage automatique#
- Audits des biais des jeux de données : les histogrammes de classes révèlent les déséquilibres, les cartes des positions et dimensions des boîtes révèlent les objets qui apparaissent toujours dans une même région ou à une même échelle, et les grilles d’images mettent en évidence les erreurs d’étiquetage.
- Courbes de la fonction de perte : les courbes de perte d’entraînement et de validation par époque montrent la convergence ; une perte de validation qui augmente tandis que la perte d’entraînement diminue signale un surapprentissage.
- Matrices de confusion et courbes précision-rappel : elles montrent quelles classes le modèle confond et comment la précision évolue par rapport au rappel lorsque le seuil de confiance change.
- Cartes d’incorporations avec t-SNE : les projections telles que t-SNE placent les échantillons similaires à proximité les uns des autres en deux dimensions, faisant ressortir les groupes, les doublons et les valeurs aberrantes.
- Cartes de saillance et superpositions de prédictions : elles dessinent des boîtes, des masques ou des points clés sur les images et mettent en évidence les pixels qui ont influencé une décision.
Les outils de suivi d’expériences tels que TensorBoard et Weights & Biases affichent ces métriques en temps réel sur de nombreux cycles d’entraînement ; le surapprentissage apparaît dès que la perte de validation augmente. Ultralytics YOLO enregistre également par défaut les graphiques principaux dans le dossier de chaque cycle d’entraînement : labels.jpg présente le nombre d’instances par classe, un échantillon de formes de boîtes et des histogrammes 2D des centres des boîtes englobantes, ainsi que des largeurs de boîtes en fonction de leurs hauteurs ; results.png trace chaque perte et métrique par époque, tandis que la validation ajoute des matrices de confusion et des courbes précision-rappel.
Visualisation des données et termes associés#
- Analyse de données : processus plus large d’inspection, de nettoyage et de modélisation des données pour répondre à des questions. La visualisation est l’un de ses principaux outils d’exploration et de présentation des résultats.
- IA explicable (XAI) : explique pourquoi un modèle a pris une décision ; les visualisations comme les cartes de saillance comptent parmi ses principaux résultats.
- Exploration de données : utilise des algorithmes pour trouver automatiquement des motifs dans de grands jeux de données ; la visualisation présente souvent les motifs ainsi découverts.
- Tableaux de bord : ensembles de graphiques affichés sur un même écran pour suivre l’évolution de métriques clés ; ils sont courants dans les outils d’informatique décisionnelle et de surveillance des modèles en production.










