Polydesk-logotype
Polydesk.ai — Header

Dataset

Un dataset (ou jeu de données) est un ensemble structuré de données collectées, organisées et préparées pour entraîner, valider ou tester un modèle de machine learning.

Sans dataset de qualité, même l’algorithme le plus sophistiqué ne produira que des résultats médiocres. Le dataset est la matière première de tout projet d’intelligence artificielle : il détermine ce que le modèle apprend, la précision de ses prédictions et sa capacité à se généraliser à des cas réels. Comprendre ce qu’est un dataset, ses différentes formes et comment le construire correctement est une compétence fondamentale pour quiconque travaille avec l’IA.

Fiche rapide : Dataset
Catégorie
Concept fondamental en machine learning
Aussi appelé
Jeu de données, corpus, data set
Composants
Exemples (lignes), features (colonnes), labels (étiquettes)
Splits classiques
Training set (~70-80%), Validation set (~10-15%), Test set (~10-15%)
Sources majeures
Hugging Face Hub, Kaggle, UCI ML Repository, Google Dataset Search
Formats courants
CSV, JSON, Parquet, Arrow, TFRecord, images, audio

Pourquoi le dataset est la pièce maîtresse du machine learning

Un modèle de machine learning apprend en extrayant des patterns statistiques à partir des données qu’on lui fournit. Concrètement, le dataset joue trois rôles fondamentaux dans le cycle de développement :

Entraînement. Le training set fournit les exemples à partir desquels le modèle ajuste ses poids internes. Plus ces exemples sont représentatifs du problème réel, plus le modèle sera performant en production. Un dataset d’entraînement biaisé ou incomplet produira un modèle biaisé ou incomplet.

Validation. Le validation set sert à régler les hyperparamètres (taux d’apprentissage, architecture, etc.) sans contaminer l’évaluation finale. C’est le garde-fou contre l’overfitting pendant l’entraînement.

Test. Le test set évalue la performance réelle du modèle sur des données qu’il n’a jamais vues. C’est la seule mesure fiable de sa capacité à généraliser.

Erreur classique Utiliser le test set pour ajuster des hyperparamètres revient à tricher : vous optimisez votre modèle sur des données censées être inconnues, ce qui fausse complètement l’évaluation de sa performance réelle. La séparation training/validation/test doit être étanche.

Anatomie d’un dataset

Un dataset se compose de plusieurs éléments structurels qu’il faut bien distinguer pour travailler efficacement.

Exemples (observations)

Chaque ligne du dataset représente un exemple, aussi appelé observation, instance ou sample. Dans un dataset tabulaire de prédiction immobilière, un exemple correspond à un bien immobilier avec toutes ses caractéristiques. Dans un dataset d’images, chaque exemple est une image accompagnée de ses métadonnées.

Features (attributs)

Les features sont les variables d’entrée que le modèle utilise pour apprendre. On parle aussi de colonnes, d’attributs ou de variables explicatives. Dans notre exemple immobilier : surface, nombre de pièces, localisation, année de construction sont des features. La qualité des features impacte directement la performance du modèle. C’est pourquoi le feature engineering (la création et la sélection de features pertinentes) reste une compétence clé en data science.

Labels (étiquettes)

Le label est la variable de sortie, ce que le modèle doit prédire. En apprentissage supervisé, chaque exemple est associé à un label. Pour une tâche de classification (spam/pas spam, chat/chien), le label est catégoriel. Pour une tâche de régression (prix, température), le label est numérique continu.

En apprentissage non supervisé, il n’y a pas de labels : le modèle découvre lui-même la structure sous-jacente des données (clusters, réductions de dimension, etc.).

Métadonnées

Les métadonnées décrivent le dataset lui-même : sa source, sa date de collecte, la méthodologie de labellisation, la licence d’utilisation, le format, les statistiques descriptives. Des standards comme Croissant (adopté par Kaggle, Hugging Face et OpenML) permettent de normaliser ces métadonnées pour faciliter la découverte et l’interopérabilité des datasets.

Les différents types de datasets

Les datasets se classent selon la nature des données qu’ils contiennent et selon leur usage. Voici les principales catégories.

Par structure des données

Type Description Exemples Cas d’usage
Structuré Données organisées en lignes et colonnes, avec un schéma fixe CSV, bases SQL, tableurs Régression, classification tabulaire
Non structuré Données sans schéma prédéfini Texte libre, images, vidéos, audio NLP, computer vision, reconnaissance vocale
Semi-structuré Données avec une organisation partielle mais flexible JSON, XML, logs, emails Extraction d’information, parsing
Séries temporelles Données indexées par le temps Cours boursiers, capteurs IoT, météo Prévision, détection d’anomalies
Graphes Données représentées sous forme de nœuds et d’arêtes Réseaux sociaux, molécules, routes Recommandation, drug discovery

Par usage en machine learning

Type Rôle Proportion typique Point d’attention
Training set Entraîner le modèle 70-80% Doit être représentatif de la distribution réelle
Validation set Régler les hyperparamètres 10-15% Ne jamais mélanger avec le test set
Test set Évaluer la performance finale 10-15% Utiliser une seule fois, à la fin

Datasets labelisés vs non labelisés

Un dataset labelisé contient des exemples associés à des réponses attendues. C’est le carburant de l’apprentissage supervisé. Le data labeling (l’annotation manuelle ou semi-automatique de ces étiquettes) représente souvent le poste de coût le plus lourd dans un projet ML.

Un dataset non labelisé ne contient que les données brutes, sans étiquettes. Il est utilisé en apprentissage non supervisé (pour le clustering, par exemple) ou en pré-entraînement auto-supervisé, comme c’est le cas pour les LLM qui s’entraînent sur d’immenses corpus de texte sans annotations explicites.

Où trouver des datasets

L’écosystème des datasets a considérablement mûri. Voici les principales sources, classées par type.

Plateformes open source

Hugging Face Hub. C’est le dépôt le plus massif : plus de 500 000 datasets publics couvrant le texte, l’image, l’audio, la vidéo et la robotique. La bibliothèque Python datasets permet de charger n’importe quel dataset en une ligne de code (load_dataset("nom_du_dataset")). Hugging Face compte plus de 13 millions d’utilisateurs et héberge aussi plus de 2 millions de modèles. Le format Parquet et le streaming natif permettent de travailler avec des datasets volumineux sans les télécharger intégralement.

Kaggle. Plateforme historique de compétitions ML, Kaggle héberge des milliers de datasets couvrant la finance, la santé, le sport, le NLP et plus. L’intégration avec les notebooks Kaggle permet d’explorer et de manipuler les données directement dans le navigateur. C’est un excellent point de départ pour les débutants.

UCI Machine Learning Repository. L’un des plus anciens dépôts de datasets ML, avec environ 700 datasets soigneusement documentés. Très utilisé dans les publications académiques pour le benchmarking d’algorithmes de classification, régression et clustering.

Google Dataset Search. Un moteur de recherche spécialisé qui indexe les datasets publiés sur le web, en s’appuyant sur le balisage schema.org. Utile pour trouver des datasets gouvernementaux, académiques ou sectoriels.

OpenML. Plateforme collaborative avec des API Python, R et Java pour télécharger des datasets, évaluer des algorithmes et comparer leurs performances. L’accent est mis sur la reproductibilité des expériences.

Datasets spécialisés par domaine

Domaine Datasets notables Usage principal
NLP SQuAD, GLUE, Common Crawl, FineWeb (15T tokens), The Pile Question answering, benchmarks linguistiques, pré-entraînement LLM
Computer vision ImageNet, COCO (330K images), LAION-5B (5,85 milliards paires image-texte) Classification d’images, détection d’objets, modèles multimodaux
Audio LibriSpeech, Common Voice, VoxCeleb Reconnaissance vocale, identification du locuteur
Santé MIMIC-IV, PhysioNet, PubMedQA Analyse clinique, recherche médicale
Robotique RoboMIND (107K+ trajectoires), Learning to Drive (L2D) Entraînement de politiques robotiques, conduite autonome
Véhicules autonomes Waymo Open Dataset, KITTI Perception, planification de trajectoire
Tendance : explosion des datasets robotiques Les datasets de robotique constituent la catégorie à la plus forte croissance sur Hugging Face Hub. Le nombre de datasets robotiques est passé d’environ 1 100 en 2024 à près de 27 000 en 2025, ce qui en fait la catégorie la plus importante devant la génération de texte. C’est un signal fort de la montée en puissance de l’IA embarquée et de la robotique.

Données synthétiques

Les données synthétiques sont générées artificiellement par des algorithmes (LLM, GAN, simulateurs) pour compléter ou remplacer des données réelles. Elles sont particulièrement utiles quand les données réelles sont rares, coûteuses à collecter ou soumises à des contraintes de confidentialité (RGPD, données médicales). Des plateformes comme Gretel.ai se spécialisent dans la génération de données synthétiques pour l’entreprise.

Les critères de qualité d’un dataset

Un bon dataset n’est pas simplement un gros dataset. Voici les critères qui déterminent réellement sa qualité.

Représentativité

Le dataset doit refléter fidèlement la distribution des données que le modèle rencontrera en production. Un modèle de reconnaissance faciale entraîné uniquement sur des visages européens échouera sur des visages africains ou asiatiques. Un modèle de NLP entraîné sur du texte formel ne comprendra pas le langage SMS.

Équilibre des classes

Dans un dataset de classification, un déséquilibre prononcé entre les classes (par exemple, 95% de cas négatifs et 5% de cas positifs) pousse le modèle à toujours prédire la classe majoritaire. Des techniques comme le suréchantillonnage (SMOTE), le sous-échantillonnage ou l’ajustement des poids de classe permettent de corriger ce problème.

Précision des labels

Des labels erronés injectent du bruit dans l’apprentissage. Un taux d’erreur de labellisation même faible (2-5%) peut dégrader significativement les performances, surtout sur des tâches fines. Le processus de data labeling doit inclure des contrôles de qualité : double annotation, métriques d’accord inter-annotateurs (kappa de Cohen), revue par des experts.

Complétude

Les valeurs manquantes sont un problème courant. Chaque feature incomplète doit être traitée : suppression de l’exemple (si peu d’exemples sont concernés), imputation par la moyenne/médiane, ou utilisation d’un modèle prédictif pour estimer les valeurs manquantes. L’ajout d’une colonne indicatrice (« cette valeur a été imputée ») peut aider le modèle à mieux exploiter l’information.

Fraîcheur

Pour les applications où le contexte évolue (finance, actualités, e-commerce), un dataset obsolète produit un modèle dépassé. La fréquence de mise à jour du dataset doit correspondre au rythme de changement du domaine. C’est ce qu’on appelle le concept drift : les relations statistiques apprises par le modèle changent au fil du temps.

Diversité

Un dataset diversifié couvre un large spectre de cas, y compris les edge cases (cas limites). Plus le modèle a vu de situations variées pendant l’entraînement, mieux il gère les situations inhabituelles en production. La data augmentation est une technique courante pour augmenter artificiellement cette diversité.

Construire un dataset de A à Z

La construction d’un dataset de qualité suit un processus méthodique. Voici les étapes clés.

Étape 1 : Cadrer le problème

Avant de collecter la moindre donnée, définissez précisément ce que votre modèle doit prédire, les features disponibles et la volumétrie nécessaire. Un cadrage flou produit un dataset flou. Posez-vous ces questions :

Quelle est la tâche exacte (classification binaire, multiclasse, régression, génération) ? Quelles sont les features accessibles en production (pas seulement en théorie) ? Quel volume de données est réaliste à collecter et annoter ? Quelles sont les contraintes légales (RGPD, consentement, anonymisation) ?

Étape 2 : Collecter les données

Les sources de données sont multiples : bases de données internes, API tierces, web scraping, capteurs, formulaires, datasets publics. La collecte doit être documentée : quelle source, quelle période, quels filtres appliqués. Cette traçabilité est indispensable pour la reproductibilité et la conformité réglementaire.

Étape 3 : Nettoyer et prétraiter

Le nettoyage consomme typiquement 60 à 80% du temps d’un projet data science. Les opérations courantes incluent : suppression des doublons, correction des formats incohérents, traitement des valeurs manquantes, détection et gestion des outliers, normalisation ou standardisation des features numériques, encodage des variables catégorielles.

Conseil pratique Automatisez vos pipelines de nettoyage avec des outils comme Pandas, Polars ou DuckDB. Un script de nettoyage reproductible vaut mieux qu’un traitement manuel ponctuel. Et versionnez vos datasets comme vous versionnez votre code (DVC, Git LFS, ou directement via le Hub Hugging Face).

Étape 4 : Annoter (si supervisé)

L’annotation consiste à attribuer des labels à chaque exemple. Pour les grands volumes, vous pouvez combiner annotation manuelle (Labelbox, Prodigy, Label Studio) et annotation semi-automatique (pré-labellisation par un modèle, puis correction humaine). Le coût d’annotation varie énormément selon la complexité de la tâche : de quelques centimes par exemple pour de la classification simple à plusieurs euros pour de la segmentation sémantique d’images médicales.

Étape 5 : Séparer en train/validation/test

La séparation doit être aléatoire mais stratifiée (même proportion de chaque classe dans chaque split). Pour les séries temporelles, la séparation est chronologique : on entraîne sur le passé et on teste sur le futur. Pour les données groupées (plusieurs images du même patient), le split doit se faire au niveau du groupe pour éviter la fuite de données (data leakage).

Étape 6 : Documenter

Un dataset non documenté est un dataset inutilisable à moyen terme. Documentez au minimum : la source et la méthode de collecte, le processus d’annotation et les guidelines utilisées, les statistiques descriptives (distribution des classes, taille, etc.), les biais connus, la licence d’utilisation. Le format « datasheet for datasets » proposé par Google est une bonne référence pour structurer cette documentation.

Formats de fichiers et outils

Le choix du format de stockage impacte les performances de chargement, la compatibilité avec les outils et la taille sur disque.

Format Type Avantages Inconvénients
CSV Texte Universel, lisible par un humain Pas de typage, lent sur gros volumes, pas de compression native
JSON / JSONL Texte Flexible, supporte les données imbriquées Verbeux, lent à parser en masse
Parquet Binaire (colonnes) Très rapide, compression efficace, typage strict Moins lisible à l’œil nu
Arrow Binaire (en mémoire) Lecture zero-copy, interopérable (Python, R, Rust) Fichiers volumineux sans compression
TFRecord Binaire Optimisé pour TensorFlow Spécifique à l’écosystème TensorFlow
HDF5 Binaire Gestion de très grands volumes, accès partiel API moins intuitive
Recommandation Pour la plupart des projets ML modernes, Parquet est le format de référence. Il offre le meilleur compromis entre performance de lecture, compression et compatibilité avec l’écosystème (Pandas, Polars, DuckDB, Spark, Hugging Face). Réservez le CSV aux datasets de petite taille ou aux échanges avec des non-techniciens.

Outils de manipulation de datasets

Voici les bibliothèques et outils les plus utilisés pour charger, transformer et analyser des datasets.

Hugging Face datasets. Bibliothèque Python qui unifie le chargement de datasets depuis le Hub, le disque local ou des sources distantes. Supporte le streaming (pas besoin de tout télécharger), le format Arrow pour des opérations rapides et l’intégration directe avec PyTorch, TensorFlow et JAX. C’est l’outil standard pour les projets NLP et multimodaux.

Pandas. La bibliothèque historique pour la manipulation de données tabulaires en Python. Excellente pour l’exploration et le prototypage, mais limitée par la mémoire RAM sur les gros volumes (tout est chargé en mémoire).

Polars. Alternative à Pandas, écrite en Rust, nettement plus rapide et plus économe en mémoire. Idéale pour les datasets qui dépassent quelques Go. Son API basée sur les expressions paresseuses (lazy evaluation) permet d’optimiser automatiquement les chaînes de transformation.

DuckDB. Base de données analytique en mémoire qui permet d’interroger des fichiers Parquet, CSV ou JSON avec du SQL, sans serveur. Parfaite pour l’exploration rapide de datasets volumineux depuis un notebook.

Apache Spark. Pour les datasets véritablement massifs (dizaines de To et au-delà), Spark distribue le traitement sur un cluster. Souvent utilisé dans les pipelines de data pipeline en production.

Pièges courants et biais dans les datasets

Les datasets ne sont jamais neutres. Voici les problèmes les plus fréquents et leurs conséquences.

Biais de sélection

Si votre méthode de collecte exclut systématiquement certaines populations ou certains cas, votre modèle aura un angle mort. Un dataset de NLP construit exclusivement à partir de textes en ligne ne représente pas la population générale : il surreprésente les utilisateurs d’Internet, les anglophones et les personnes d’un certain niveau socio-économique.

Biais de labellisation

Les annotateurs humains apportent leurs propres biais. Des études ont montré que la perception de la toxicité d’un texte varie significativement selon le profil culturel de l’annotateur. La diversité de l’équipe d’annotation et des guidelines claires aident à atténuer ce problème.

Data leakage (fuite de données)

Le data leakage survient quand des informations du test set « fuient » dans le training set, gonflant artificiellement les métriques. Causes fréquentes : normalisation calculée sur l’ensemble du dataset avant le split, features qui encodent indirectement le label, ou exemples dupliqués entre train et test. Ce piège est insidieux car les résultats semblent excellents en évaluation mais s’effondrent en production.

Distribution shift

Quand la distribution des données en production diffère de celle du dataset d’entraînement, les performances se dégradent. C’est un problème courant quand le modèle vieillit sans être ré-entraîné. La solution : monitorer les distributions d’entrée en production et déclencher un ré-entraînement quand un drift significatif est détecté.

Le cas particulier des datasets pour LLM

L’entraînement des grands modèles de langage nécessite des datasets d’une échelle radicalement différente des projets ML classiques.

Pré-entraînement

Les LLM modernes sont pré-entraînés sur des corpus de plusieurs milliers de milliards de tokens. Les sources typiques incluent Common Crawl (plus de 100 To de données web brutes), des archives de livres, des articles scientifiques, du code source et des données conversationnelles. Le dataset FineWeb, par exemple, contient environ 15 000 milliards de tokens filtrés et nettoyés à partir de Common Crawl.

Le nettoyage de ces corpus est un défi en soi : déduplication (des pages web entières sont copiées des milliers de fois), filtrage du contenu toxique ou de faible qualité, et respect des droits d’auteur.

Fine-tuning et alignement

Après le pré-entraînement, les LLM sont affinés sur des datasets plus petits mais de très haute qualité. Le fine-tuning supervisé utilise des paires instruction/réponse curatées par des humains. L’alignement via RLHF ou DPO nécessite des données de préférences humaines (l’annotateur choisit la meilleure réponse parmi plusieurs). La qualité de ces datasets d’alignement a un impact disproportionné sur le comportement final du modèle.

Benchmarks et évaluation

Les benchmarks comme MMLU, GPQA, ARC-AGI-2 ou HumanEval sont eux-mêmes des datasets conçus pour mesurer des capacités spécifiques (raisonnement, codage, connaissances générales). La communauté crée régulièrement de nouveaux benchmarks pour suivre les progrès rapides des modèles et détecter les contaminations (quand un modèle a vu les données du benchmark pendant son entraînement).

Aspects légaux et éthiques

L’utilisation de datasets soulève des questions juridiques et éthiques de plus en plus pressantes.

RGPD et protection des données

En Europe, le RGPD impose des contraintes strictes sur la collecte et l’utilisation de données personnelles. Tout dataset contenant des données personnelles doit respecter : le principe de minimisation (ne collecter que le nécessaire), la base légale du traitement (consentement, intérêt légitime, etc.), le droit d’accès, de rectification et d’effacement, et l’anonymisation ou la pseudonymisation quand c’est possible.

Droits d’auteur

La question des droits d’auteur sur les données d’entraînement des LLM fait l’objet de multiples procédures judiciaires. L’AI Act européen exige une transparence accrue sur les données utilisées pour entraîner les modèles d’IA à usage général. Les licences des datasets (Apache 2.0, CC-BY, CC-BY-SA, etc.) déterminent les usages autorisés. Vérifiez toujours la licence avant d’utiliser un dataset dans un contexte commercial.

Biais et équité

Un dataset biaisé produit un modèle biaisé, qui peut avoir des conséquences réelles sur les personnes (discrimination à l’embauche, au crédit, dans la justice). Les pratiques émergentes incluent : audits de biais systématiques, datasheets et model cards documentant les biais connus, et évaluations d’équité sur des sous-populations spécifiques.

Bonnes pratiques pour vos projets

Pour résumer, voici les principes à appliquer systématiquement quand vous travaillez avec des datasets.

Investissez dans la qualité plutôt que dans la quantité. Un dataset de 10 000 exemples propres et bien annotés vaut souvent mieux qu’un million d’exemples bruités. Les LLM eux-mêmes montrent qu’un petit dataset d’alignement de haute qualité peut avoir un impact considérable sur le comportement du modèle.

Versionnez vos datasets. Utilisez DVC, Git LFS ou le Hugging Face Hub pour tracker les modifications. Vous devez pouvoir reproduire exactement n’importe quelle expérience passée.

Documentez tout. Source, méthodologie de collecte, processus d’annotation, biais connus, licence. Un dataset sans documentation est une dette technique silencieuse.

Automatisez le nettoyage. Écrivez des pipelines de prétraitement reproductibles plutôt que des manipulations manuelles. Utilisez des tests unitaires pour valider la qualité des données (valeurs dans les plages attendues, formats corrects, etc.).

Surveillez la distribution en production. Mettez en place un monitoring de data drift pour détecter quand vos données de production s’éloignent de vos données d’entraînement.

Respectez la loi et l’éthique. Vérifiez les licences, anonymisez les données personnelles, auditez les biais. La conformité n’est pas optionnelle.


Questions fréquentes sur les datasets

Quelle est la différence entre un dataset et une base de données ?

Une base de données est un système de stockage et de gestion de données (MySQL, PostgreSQL, MongoDB) conçu pour les opérations CRUD (création, lecture, mise à jour, suppression) en temps réel. Un dataset est un extrait figé de données, structuré spécifiquement pour l’analyse ou l’entraînement d’un modèle ML. Concrètement, vous exportez des données depuis une base de données pour constituer un dataset, puis vous travaillez sur ce dataset de manière statique. La base de données est dynamique et transactionnelle ; le dataset est un snapshot orienté analytique.

Combien d’exemples faut-il dans un dataset pour entraîner un modèle ?

Il n’y a pas de réponse universelle. Pour une régression linéaire simple, quelques centaines d’exemples peuvent suffire. Pour un réseau de neurones de classification d’images, comptez au minimum quelques milliers d’exemples par classe. Pour le pré-entraînement d’un LLM, on parle de milliers de milliards de tokens. La règle empirique : commencez petit, mesurez les performances, et ajoutez des données si le modèle sous-performe et que les courbes d’apprentissage montrent qu’il bénéficierait de plus de données. Le transfer learning et le fine-tuning permettent aussi d’obtenir de bons résultats avec moins de données en partant d’un modèle pré-entraîné.

Comment détecter et corriger les biais dans un dataset ?

Commencez par une analyse exploratoire : examinez la distribution de chaque feature et du label, en particulier pour les variables sensibles (genre, âge, origine). Utilisez des métriques d’équité (disparate impact, equal opportunity) pour quantifier les écarts entre sous-groupes. Pour corriger, vous pouvez rééquilibrer les classes (suréchantillonnage, sous-échantillonnage), enrichir le dataset avec des exemples sous-représentés, ou appliquer des techniques de débiaisage algorithmique. La documentation des biais connus dans une datasheet est aussi essentielle pour informer les utilisateurs en aval.

Quelles sont les meilleures sources de datasets gratuits ?

Les cinq sources les plus fiables sont : Hugging Face Hub (plus de 500 000 datasets, toutes modalités), Kaggle (milliers de datasets avec notebooks d’exploration), UCI Machine Learning Repository (environ 700 datasets académiques de référence), Google Dataset Search (moteur de recherche de datasets indexés sur le web) et les portails de données ouvertes gouvernementales (data.gouv.fr en France, data.europa.eu pour l’UE). Pour des besoins spécifiques, des dépôts sectoriels comme PhysioNet (médical), Waymo (conduite autonome) ou LAION (vision multimodale) fournissent des datasets de très haute qualité.

Comment gérer un dataset trop volumineux pour tenir en mémoire ?

Plusieurs stratégies existent. Le streaming via la bibliothèque Hugging Face datasets permet de traiter les données en flux sans tout charger en RAM. Le format Parquet, combiné à DuckDB ou Polars, permet des requêtes SQL efficaces sur des fichiers de plusieurs Go sans serveur. Pour les datasets véritablement massifs (dizaines de To), Apache Spark distribue le traitement sur un cluster. Enfin, le lazy loading (chargement à la demande) via PyTorch DataLoader ou tf.data permet de charger les batches au fur et à mesure de l’entraînement, ce qui est la norme pour les datasets d’images ou d’audio.

Polydesk.ai — Footer