Glossaire

Normalisation

Découvre la puissance de la normalisation dans l'apprentissage automatique ! Apprends comment elle améliore la formation des modèles, booste les performances et garantit des solutions d'IA robustes.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

La normalisation est une technique fondamentale de prétraitement des données très utilisée dans l'apprentissage automatique (ML) et la science des données. Son objectif principal est de remettre à l'échelle les caractéristiques des données numériques dans une plage commune et standard, souvent comprise entre 0 et 1 ou entre -1 et 1, sans fausser les différences dans les plages de valeurs. Ce processus garantit que toutes les caractéristiques contribuent de manière plus égale à la formation du modèle, en empêchant les caractéristiques ayant des valeurs intrinsèquement plus importantes (comme le salaire) d'influencer le résultat de manière disproportionnée par rapport aux caractéristiques ayant des valeurs plus petites (comme les années d'expérience). La normalisation est particulièrement cruciale pour les algorithmes sensibles à la mise à l'échelle des caractéristiques, comme les méthodes basées sur la descente de gradient utilisées dans l'apprentissage profond (DL).

Pourquoi la normalisation est-elle importante ?

Les ensembles de données du monde réel contiennent souvent des caractéristiques avec des échelles et des unités très différentes. Par exemple, dans un ensemble de données visant à prédire le désabonnement des clients, le "solde du compte" peut aller de plusieurs centaines à plusieurs millions, tandis que le "nombre de produits" peut aller de 1 à 10. Sans normalisation, les algorithmes de ML qui calculent des distances ou utilisent des gradients, comme les machines à vecteurs de support (SVM) ou les réseaux neuronaux (NN), pourraient percevoir à tort la caractéristique avec la plus grande plage comme plus importante simplement en raison de son échelle. La normalisation uniformise les règles du jeu, en veillant à ce que la contribution de chaque caractéristique soit basée sur son pouvoir prédictif, et non sur son ampleur. Cela permet d'accélérer la convergence pendant la formation, d'améliorer la précision du modèle et d'obtenir des modèles plus stables et plus robustes, ce qui est bénéfique lorsque l'on forme des modèles tels que Ultralytics YOLO pour des tâches telles que la détection d'objets.

Techniques de normalisation courantes

Il existe plusieurs méthodes pour remettre les données à l'échelle :

  • Échelle Min-Max : Il s'agit sans doute de la technique de normalisation la plus courante. Elle remet les caractéristiques à l'échelle de façon linéaire dans une plage fixe, généralement [0, 1]. La valeur minimale de la caractéristique originale devient 0, la valeur maximale devient 1, et toutes les autres valeurs se situent proportionnellement entre les deux. Elle est sensible aux valeurs aberrantes.
  • Normalisation du score Z : Bien qu'elle soit souvent regroupée avec la normalisation, la normalisation est techniquement différente. Contrairement à la mise à l'échelle Min-Max, elle ne limite pas les valeurs à une plage spécifique, ce qui peut être bénéfique pour les algorithmes qui supposent des données centrées sur zéro. En savoir plus sur le prétraitement Scikit-learn.

Le choix entre ces techniques dépend souvent de l'ensemble de données spécifique et des exigences de l'algorithme de ML utilisé. Tu peux trouver des guides sur le prétraitement des données annotées qui implique souvent des étapes de normalisation.

Normalisation vs. normalisation vs. normalisation par lots

Il est important de distinguer la normalisation des concepts connexes :

  • Normalisation (échelle Min-Max) : Met les données à l'échelle d'une plage fixe (par exemple, de 0 à 1). Utile lorsque les valeurs des caractéristiques doivent être limitées.
  • Normalisation (Z-score) : Centre les données autour d'une moyenne de 0 et d'un écart-type de 1. Moins affectée par les valeurs aberrantes que l'échelle Min-Max, elle est souvent préférée pour les algorithmes supposant des données normalement distribuées ou centrées sur zéro.
  • Normalisation par lots: Il s'agit d'une technique appliquée au sein des couches du réseau neuronal profond pendant la formation, et non d'une étape générale de prétraitement des données appliquée au préalable. Elle normalise les activations d'une couche précédente pour chaque mini-lot, ce qui contribue à stabiliser l'entraînement et à réduire le décalage interne des covariables.

Applications de la normalisation

La normalisation est une étape omniprésente dans la préparation des données pour diverses tâches d'IA et de ML :

  1. Traitement des images : Dans le domaine de la vision par ordinateur (VA), les valeurs des pixels dans les images (généralement comprises entre 0 et 255) sont souvent normalisées dans la plage [0, 1] ou [-1, 1] avant d'être introduites dans les modèles pour des tâches telles que la classification ou la segmentation d'images. Cela permet de garantir une mise à l'échelle cohérente des entrées pour les réseaux neuronaux convolutionnels (CNN). De nombreux ensembles de données CV populaires bénéficient de ce prétraitement.
  2. Fusion de données multi-capteurs : Lorsque l'on combine des données provenant de différents capteurs dont les échelles de mesure varient (par exemple, température, pression, humidité) pour un modèle prédictif, la normalisation permet de s'assurer qu'aucun relevé d'un seul capteur ne domine les autres uniquement en raison de son échelle. Ceci est important dans des domaines tels que la robotique ou les véhicules autonomes.
  3. Analyse d'images médicales : Comme pour le traitement général des images, l'analyse des images médicales nécessite souvent la normalisation de l'intensité des pixels ou des voxels sur différents scans (par exemple, IRM, CT) pour tenir compte des variations dans l'équipement et les protocoles d'imagerie, ce qui facilite les tâches telles que la détection des tumeurs.

En résumé, la normalisation est une étape de prétraitement essentielle qui met à l'échelle les caractéristiques des données dans une fourchette cohérente, améliorant ainsi le processus de formation, la stabilité et les performances de nombreux modèles d'apprentissage automatique, y compris ceux développés et formés à l'aide d'outils tels que le HUBUltralytics . Elle garantit une contribution équitable des caractéristiques et est essentielle pour les algorithmes sensibles à l'échelle d'entrée.

Tout lire