Feature engineering : définition, techniques en machine learning, NLP

Le feature engineering en machine learning est une étape préliminaire pour réaliser un prétraitement de données brutes avant leur exploitation. En data science, cela permet d'améliorer les performances du système.

Le feature engineering, qu’est-ce que c’est ?

Dans le domaine de l’IA (intelligence artificielle), le feature engineering consiste à préparer des données brutes en vue de leur traitement par un système ou un algorithme. Elles présentent des variables qui leur sont propres, ainsi que des caractéristiques communes. Le procédé les distingue et identifie d’éventuelles anomalies. Cela permet d’obtenir un modèle prédictif plus fiable et performant.

Qu’est-ce que le feature engineering en data science ?

La data science est un domaine qui permet d’avoir une meilleure compréhension d’un sujet précis. Elle use d'un processus d’apprentissage automatique qui implique une exploitation de données brutes. Le feature engineering s’inscrit donc en amont de leur traitement afin de garantir des résultats pertinents.

Quelques exemples de feature engineering

Par son importance dans les domaines de l’IA, de la data science et du machine learning, le feature engineering présente différents champs d’application :

  • la gestion des valeurs manquantes ;
  • la numérisation de données qui ne disposent pas d’éléments de comparaison ;
  • l’enrichissement des datasets ;
  • les processus de sélection des données…

Quelles sont les techniques de feature engineering en machine learning ?

Le feature engineering est la première étape d’un traitement de données, notamment pour la génération d’un modèle de machine learning. Il existe plusieurs techniques d’exploitation :

  • La méthode de l’importance : un score est attribué pour estimer l’importance d’une caractéristique au sein d’un ensemble.
  • L’extraction des caractéristiques : les données brutes servent à générer de nouvelles caractéristiques si les ensembles sont jugés trop volumineux.
  • La sélection de caractéristiques : le système choisit les ensembles et les sous-ensembles les plus pertinents en supprimant les éléments redondants ou inutiles.

Qu’en est-il des techniques de feature engineering pour les time séries ?

Pour des séries chronologiques ou temporelles, le feature engineering use de techniques différentes, propres aux particularités de ces systèmes :

  • Les fonctions liées à la date, en vue de réaliser une prévision par rapport à une échelle de temps variable.
  • L’horodatage : le principe reste le même que la précédente méthode, mais gagne en précision. Il y a également une distinction entre les heures ouvrables et non ouvrables.
  • Le décalage : il s’appuie sur le choix d’une variable dans un intervalle de temps plus ou moins éloigné, en considérant la valeur et les fluctuations des données passées.

En quoi consiste le feature engineering en NLP ?

Le traitement automatique du langage naturel (ou NLP) se sert du feature engineering pour de nombreuses utilisations. Les possibilités s’étendent des process de traduction automatique à l’analyse syntaxique, de la reconnaissance optique des caractères à la synthèse vocale. Cela permet de concilier IA et linguistique dans un environnement numérique.

Dictionnaire de l'intelligence artificielle