Definition

Qu'est-ce que le feature engineering ?

Le feature engineering (ingénierie des caractéristiques) est le processus qui consiste à transformer des données brutes en caractéristiques pouvant être utilisées pour créer un modèle prédictif à l'aide de l'apprentissage automatique ou de la modélisation statistique, comme l'apprentissage profond. L'objectif de l'ingénierie des caractéristiques est de préparer un ensemble de données d'entrée qui correspond le mieux à l'algorithme d'apprentissage automatique et d'améliorer les performances des modèles d'apprentissage automatique. L'ingénierie des caractéristiques peut aider les data scientists en accélérant le temps nécessaire à l'extraction des variables à partir des données, ce qui permet d'extraire davantage de variables. L'automatisation de l'ingénierie des caractéristiques aidera les organisations et les scientifiques des données à créer des modèles plus précis.

Comment fonctionne l'ingénierie des caractéristiques

Le processus d'ingénierie des caractéristiques peut ressembler à ceci :

  • Concevoir des fonctionnalités : examiner un grand nombre de données, analyser l'ingénierie des fonctionnalités sur d'autres problèmes et déterminer celles qui peuvent être utilisées.
  • Définir les caractéristiques : cela implique deux processus : l'extraction des caractéristiques, qui consiste à définir et à extraire un ensemble de caractéristiques représentant les données importantes pour l'analyse ; et la construction des caractéristiques, qui consiste à transformer un ensemble particulier de caractéristiques d'entrée afin de créer un nouvel ensemble de caractéristiques plus efficaces pouvant être utilisées pour la prédiction. En fonction du problème, les utilisateurs peuvent décider d'utiliser l'extraction automatique des caractéristiques, la construction manuelle des caractéristiques ou une combinaison des deux.
  • Sélectionner les caractéristiques : lorsque les utilisateurs ont des connaissances sur les données et qu'ils ont défini les caractéristiques potentielles, l'étape suivante consiste à choisir les caractéristiques appropriées. Cela comprend deux éléments : la sélection des caractéristiques, qui consiste à choisir un sous-ensemble de caractéristiques les plus pertinentes pour une tâche particulière, et la notation des caractéristiques, qui consiste à évaluer l'utilité d'une caractéristique pour la prédiction.
  • Évaluer les modèles : évaluer les caractéristiques en évaluant la précision du modèle sur des données non vues à l'aide des caractéristiques sélectionnées.

Techniques d'ingénierie des caractéristiques

Les techniques d'ingénierie des caractéristiques comprennent :

  • Imputation : un problème courant dans l'apprentissage automatique est celui des valeurs manquantes dans les ensembles de données, qui affecte le fonctionnement des algorithmes d'apprentissage automatique. L'imputation est le processus qui consiste à remplacer les données manquantes par des estimations statistiques des valeurs manquantes, ce qui permet d'obtenir un ensemble de données complet pouvant être utilisé pour entraîner des modèles d'apprentissage automatique.
  • Codage « one-hot » : processus par lequel les données catégorielles sont converties dans un format compréhensible par l'algorithme d'apprentissage automatique afin qu'il puisse faire de meilleures prédictions.
  • Sac de mots (bag of words) : algorithme de comptage qui calcule le nombre de fois qu'un mot est répété dans un document. Il peut être utilisé pour déterminer les similitudes et les différences entre des documents dans le cadre d'applications telles que la recherche et la classification de documents.
  • Ingénierie automatisée des caractéristiques : cette technique extrait des caractéristiques utiles et significatives à l'aide d'un cadre pouvant être appliqué à n'importe quel problème. L'ingénierie automatisée des caractéristiques permet aux scientifiques des données d'être plus productifs en leur permettant de consacrer plus de temps à d'autres composants de l'apprentissage automatique. Cette technique permet également aux citoyens scientifiques des données de réaliser l'ingénierie des caractéristiques à l'aide d'une approche basée sur un cadre.
  • Binning -- Le binning, ou regroupement de données, est essentiel pour préparer les données numériques pour l'apprentissage automatique. Cette technique peut être utilisée pour remplacer une colonne de chiffres par des valeurs catégorielles représentant des plages spécifiques.
  • N-grams : permettent de prédire l'élément suivant dans une séquence. Dans l'analyse des sentiments, le modèle n-grams aide à analyser le sentiment du texte ou du document.
  • Croisements de caractéristiques : une manière de combiner deux ou plusieurs caractéristiques catégorielles en une seule. Cette technique est particulièrement utile lorsque certaines caractéristiques, combinées, décrivent mieux une propriété que chacune d'entre elles prise séparément.

Il existe plusieurs bibliothèques Python open source qui prennent en charge les techniques d'ingénierie des caractéristiques, notamment la bibliothèque Featuretools qui permet de créer automatiquement des caractéristiques à partir d'un ensemble de tables connexes à l'aide de la synthèse profonde des caractéristiques, un algorithme qui génère automatiquement des caractéristiques pour les ensembles de données relationnelles.

Cas d'utilisation de l'ingénierie des caractéristiques

Voici quelques exemples d'utilisation de l'ingénierie des caractéristiques :

  • Calculer l'âge d'une personne à partir de sa date de naissance et de la date actuelle
  • Obtenir le nombre moyen et médian de retweets pour des tweets particuliers
  • Acquisition du nombre de mots et d'expressions à partir d'articles d'actualité
  • Extraction d'informations sur les pixels à partir d'images
  • Tableau récapitulatif de la fréquence à laquelle les enseignants attribuent différentes notes

Ingénierie des caractéristiques pour l'apprentissage automatique

L'ingénierie des caractéristiques consiste à appliquer des connaissances commerciales, mathématiques et statistiques pour transformer les données en une forme utilisable par les modèles d'apprentissage automatique.

Les algorithmes dépendent des données pour alimenter les algorithmes d'apprentissage automatique. Un utilisateur qui comprend les données historiques peut détecter le modèle et ensuite développer une hypothèse. Ensuite, sur la base de cette hypothèse, l'utilisateur peut prédire le résultat probable, par exemple quels clients sont susceptibles d'acheter certains produits au cours d'une période donnée. L'ingénierie des caractéristiques consiste à découvrir la meilleure combinaison possible d'hypothèses.

L'ingénierie des caractéristiques est essentielle, car si l'utilisateur fournit une hypothèse erronée comme entrée, l'apprentissage automatique ne peut pas faire de prédictions précises. La qualité de toute hypothèse fournie à l'algorithme d'apprentissage automatique est essentielle à la réussite d'un modèle d'apprentissage automatique.

De plus, l'ingénierie des caractéristiques influence les performances et la précision des modèles d'apprentissage automatique. Elle permet de mettre au jour les schémas cachés dans les données et renforce le pouvoir prédictif de l'apprentissage automatique.

Pour que les algorithmes informatiques fonctionnent correctement, les utilisateurs doivent saisir les données appropriées que les algorithmes peuvent comprendre. L'ingénierie des caractéristiques transforme ces données d'entrée en une forme agrégée unique optimisée pour l'apprentissage automatique. L'ingénierie des caractéristiques permet à l'apprentissage automatique de remplir sa fonction, par exemple prédire le taux de désabonnement (churn) pour les détaillants ou prévenir la fraude pour les institutions financières.

Ingénierie des caractéristiques dans la modélisation prédictive

Un moyen efficace d'améliorer les modèles prédictifs consiste à recourir à l'ingénierie des caractéristiques, processus qui consiste à créer de nouvelles caractéristiques d'entrée pour l'apprentissage automatique.

L'un des principaux objectifs de la modélisation prédictive est de trouver une relation prédictive efficace et fiable entre un ensemble de caractéristiques disponibles et un résultat : par exemple, la probabilité qu'un client effectue une action souhaitée.

L'ingénierie des caractéristiques est le processus qui consiste à sélectionner et à transformer des variables lors de la création d'un modèle prédictif à l'aide de l'apprentissage automatique. C'est un bon moyen d'améliorer les modèles prédictifs, car il consiste à isoler les informations clés, à mettre en évidence les modèles et à faire appel à une personne possédant une expertise dans le domaine.

Les données utilisées pour créer un modèle prédictif se composent d'une variable de résultat (qui contient les données à prédire) et d'une série de variables prédictives (c'est-à-dire des caractéristiques) qui contiennent les données permettant de prédire un résultat particulier.

Par exemple, dans un modèle prédisant le prix d'une maison donnée, la variable de résultat correspond aux données indiquant le prix réel. Les variables prédictives correspondent aux données indiquant notamment la taille de la maison, le nombre de chambres et l'emplacement, autant d'éléments considérés comme déterminants pour la valeur de la maison.

Pour approfondir sur IA appliquée, GenAI, IA infusée