Glossaire

Ingénierie de pointe

Augmente la précision de l'apprentissage automatique grâce à l'ingénierie des caractéristiques des experts. Apprends les techniques de création, de transformation et de sélection de caractéristiques percutantes.

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

En savoir plus

L'ingénierie des caractéristiques est le processus critique de sélection, de transformation et de création de caractéristiques (variables d'entrée) à partir de données brutes afin d'améliorer les performances des modèles d'apprentissage machine (ML). Elle est considérée davantage comme un art que comme une science stricte, nécessitant souvent une expertise du domaine, de l'intuition et de l'expérimentation. La qualité des caractéristiques introduites dans un modèle a un impact direct sur sa capacité à apprendre des modèles et à faire des prédictions précises, ce qui fait de l'ingénierie des caractéristiques une pierre angulaire des projets d'apprentissage automatique réussis. De meilleures caractéristiques peuvent conduire à des modèles plus simples, à des temps de formation plus rapides et à une meilleure précision.

Qu'est-ce que l'ingénierie des fonctionnalités ?

À la base, l'ingénierie des caractéristiques traduit des données brutes, souvent désordonnées, en un format structuré que les algorithmes peuvent comprendre et dont ils peuvent tirer des enseignements de manière efficace. Cela implique de comprendre les données, le contexte du problème et le modèle de ML choisi. L'objectif est de créer des caractéristiques d'entrée informatives, discriminantes et indépendantes, qui mettent en évidence les modèles sous-jacents pertinents pour la tâche de prédiction. Ce processus comble le fossé entre la collecte des données brutes et la formation du modèle, ce qui influence considérablement le résultat du pipeline d'apprentissage automatique.

Techniques clés

Plusieurs techniques sont employées dans l'ingénierie des caractéristiques, souvent en combinaison :

  • Création de fonctionnalités : Générer de nouvelles caractéristiques en combinant ou en transformant des caractéristiques existantes. Les exemples incluent la création de termes d'interaction (par exemple, la multiplication de deux variables), de caractéristiques polynomiales ou la dérivation de mesures spécifiques à un domaine (comme le ratio dette/revenu en finance).
  • Transformation des caractéristiques: Modifier les caractéristiques existantes pour répondre aux hypothèses du modèle ou améliorer les performances. Les méthodes courantes comprennent la mise à l'échelle (comme la normalisation), la transformation logarithmique pour les données asymétriques, ou la classification des variables continues en catégories. Dans le domaine de la vision artificielle, des techniques telles que l'augmentation des données peuvent également être considérées comme une forme de transformation des caractéristiques appliquée aux données d'image.
  • Extraction de caractéristiques: Création d'un ensemble plus petit de nouvelles caractéristiques plus informatives à partir de l'ensemble original, souvent utilisé pour la réduction de la dimensionnalité. Des techniques telles que l'analyse en composantes principales (ACP) entrent dans cette catégorie. Bien qu'elle soit liée à la sélection des caractéristiques, l'extraction crée de nouvelles caractéristiques, tandis que la sélection choisit un sous-ensemble de caractéristiques existantes.
  • Sélection des caractéristiques : Identifier et sélectionner les caractéristiques les plus pertinentes à partir de l'ensemble de données original, en écartant celles qui ne sont pas pertinentes ou redondantes. Cela permet de réduire la complexité du modèle, d'éviter l'ajustement excessif et d'améliorer l'efficacité des calculs. Les méthodes vont de la simple analyse de corrélation à des méthodes plus complexes d'enveloppement et d'intégration.

Exemples concrets

L'ingénierie des caractéristiques est omniprésente dans diverses applications d'intelligence artificielle :

  1. Maintenance prédictive : Pour prédire les défaillances de l'équipement, les données brutes des capteurs (température, vibration, pression) peuvent être bruyantes et à haute dimension. L'ingénierie des caractéristiques pourrait impliquer la création de caractéristiques telles que les moyennes glissantes, les écarts types sur des fenêtres temporelles, les composantes de fréquence des données de vibration (à l'aide des transformations de Fourier), ou le temps écoulé depuis le dernier événement de maintenance. Ces caractéristiques élaborées fournissent des signaux plus clairs pour les modèles de prédiction des défaillances. C'est un aspect crucial de l'IA dans le secteur de la fabrication.
  2. Traitement du langage naturel (NLP) : Pour des tâches telles que l'analyse des sentiments, le texte brut a besoin d'être transformé. L'ingénierie des caractéristiques peut impliquer la création de vecteurs TF(Term Frequency-Inverse Document Frequency), de décomptes de mots, de n-grammes (séquences de mots), de scores de lisibilité ou l'extraction de caractéristiques linguistiques spécifiques (par exemple, l'utilisation de mots positifs/négatifs). Bien que les modèles transformateurs modernes apprennent automatiquement les représentations, l'ingénierie explicite des caractéristiques peut encore améliorer les performances, en particulier avec des ensembles de données plus petits ou des tâches spécialisées.

Ingénierie des fonctionnalités et concepts connexes

  • Prétraitement des données: Une catégorie plus large qui comprend l'ingénierie des caractéristiques, le nettoyage des données, le traitement des valeurs manquantes et le formatage initial des données. L'ingénierie des caractéristiques se concentre spécifiquement sur l'optimisation des variables d'entrée du modèle. Voir le guide Ultralytics sur le prétraitement des données annotées.
  • Extraction de caractéristiques dans l'apprentissage profond : Les modèles de Deep Learning (DL), en particulier les CNN, apprennent automatiquement des caractéristiques hiérarchiques à partir de données brutes (comme des pixels). Cela réduit le besoin d'ingénierie manuelle des caractéristiques, mais ne l'élimine pas entièrement, car le prétraitement des entrées ou l'ingénierie des caractéristiques pour les métadonnées à côté des données primaires peuvent encore être bénéfiques.
  • Apprentissage automatique de la machine (AutoML): Des outils comme Google Cloud AutoML visent à automatiser diverses étapes de l'apprentissage automatique, notamment l'ingénierie des fonctionnalités. Cependant, la perspicacité humaine et la connaissance du domaine conduisent souvent à une conception de fonctionnalités plus efficace que les approches purement automatisées.

Ingénierie des fonctionnalités et Ultralytics

Bien que les modèles avancés comme Ultralytics YOLO excellent dans des tâches telles que la détection d'objets et la segmentation d'images en apprenant automatiquement les caractéristiques visuelles pertinentes grâce à leurs architectures de réseaux neuronaux profonds(colonne vertébrale, cou, tête), les principes d'ingénierie des caractéristiques restent pertinents. Par exemple, le prétraitement des images d'entrée (égalisation de l'histogramme pour les variations d'éclairage, réduction du bruit) avant de les introduire dans un modèle YOLO est une forme d'ingénierie des caractéristiques qui peut améliorer la robustesse. De plus, les résultats de YOLO (comme les coordonnées de la boîte englobante, les classes d'objets, les comptages) peuvent être transformés en caractéristiques pour les tâches en aval ou combinés avec d'autres sources de données pour une analyse plus complexe, éventuellement gérée par des plateformes comme Ultralytics HUB qui aide à organiser les ensembles de données et les modèles. Explore la documentation d'Ultralytics pour en savoir plus sur l'utilisation et la personnalisation des modèles.

Tout lire