Accueil
Feature engineering : définition, utilisation, fonctionnement

Feature engineering, traitement de données en machine learning

Intéressé par les formations de Jedha ?
Voir le syllabus de Jedha
Nos derniers articles !

Le Feature Engineering est un outil de traitement de données. Il permet de préprocesser des données brutes en fonctionnalités utilisables en Machine Learning. On vous explique son fonctionnement, son utilité et ses applications !

Que ce soit en Machine Learning ou en Deep Learning, l'amélioration des modèles d'apprentissage est nécessaire pour optimiser les performances des algorithmes. Pour y parvenir, l'une des méthodes les plus utilisées est le Feature engineering. Il est basé sur un mode de fonctionnement spécifique avec des techniques précises qui confirment toute son utilité pour le Machine Learning. Jedha donne la définition du Feature engineering en Machine Learning et quelle formation effectuer pour maîtriser son utilisation.

Feature engineering, de quoi s'agit-il ?

Pour donner une définition du Feature engineering, il s'agit d'un procédé de Machine Learning qui consiste à transformer des données brutes en fonctionnalités utilisables dans des algorithmes d'apprentissage automatique.

Il s'agit pour le Data Scientist d'appliquer une connaissance du domaine pour parvenir à l'extraction des représentations analytiques, cela en partant des données brutes afin de les préparer pour le Machine Learning.

Processus de prétraitement, le Feature engineering est la première étape dans le développement des modèles prédictifs en Machine Learning. Il permet l'optimisation de l'exactitude des modèles d'apprentissage sur les nouvelles données inconnues. Le succès d'un projet d'intelligence artificielle ou de Machine Learning dépend souvent de ce procédé.

Le Feature engineering ne doit néanmoins pas être confondu avec le Feature learning. Ce dernier désigne un ensemble de méthodes permettant à un système d'identifier et d'exploiter automatiquement les caractéristiques des données brutes. Concrètement, alors que le Feature engineering construit et extrait les caractéristiques de façon manuelle, le Feature learning permet d'y parvenir de manière automatique. Les techniques de Deep Learning les plus modernes comme les auto-encodeurs ou les machines de Boltzmann restreintes sont des techniques de Feature Learning par excellence.

Pour maîtriser le Feature engineering et comprendre ses applications en Machine Learning, il est conseillé de suivre une formation spécifique. Celle-ci permet de capitaliser des connaissances en big data, Machine Learning et Deep Learning. L'apprenant qui suit la formation en Feature engineering se dote des outils de traitement et de classification en Machine Learning. Les formations en Data science ou intelligence artificielle peuvent être suivies en présentiel ou à distance.

Le fonctionnement du Feature engineering

Ce procédé fait partie intégrante du processus du Machine Learning. Dans un premier temps, le Data scientist doit définir un problème précis. Il sélectionne ensuite et prépare les données. Celles-ci sont collectées, agrégées, nettoyées et formatées afin d'être utilisées. Le mécanisme du Feature engineering intervient pendant la phase de transformation des données où celles-ci passent de l'état brut à un état qui favorise leur modélisation. Par la suite, elles seront modélisées en créant des modèles prédictifs, en procédant à leur évaluation et en les configurant. Après, les résultats obtenus sont présentés.

Si le scientifique des données identifie de nouvelles perspectives dans les données, il doit répéter ce processus en suivant le même ordre.

Il ne s'agit donc pas d'un processus indépendant. En réalité, il s'agit d'un processus itératif qui est étroitement lié à la sélection des données et à l'évaluation des modèles d'apprentissage.

En fonction des spécificités des problèmes à résoudre, le Data scientist ou le Data analyst exploite les différentes techniques de Feature engineering.

Les techniques du Feature engineering

Il s'agit d'un processus qui se décompose en quatre principales approches. La technique que le scientifique des données doit adopter est déterminé par le sous-problème spécifique auquel il cherche une solution.

La méthode de l'importance

Encore appelée Feature Importance, cette méthode consiste à estimer de façon objective l'utilité de la caractéristique d'une data. Cette manière de procéder est souvent nécessaire pour sélectionner les caractéristiques d'une ou plusieurs données. La méthode de l'importance attribue un score aux données et les classe en fonction des résultats qu'elles ont obtenus.

Celles qui possèdent le plus grand score sont choisies pour composer un ensemble. Le score d'importance peut également permettre au Data scientist d'extraire ou de construire de nouvelles caractéristiques similaires. Elles seront cependant divergentes de celles ayant déjà été considérées comme utiles ou importantes. On considère le plus souvent qu'une caractéristique est utile lorsqu'elle possède une grande corrélation avec l'élément à prédire (la variable dépendante).

L'extraction

Le Feature Extraction est une technique de ce processus qui permet au scientifique des données de procéder à la construction automatique de nouvelles caractéristiques en se basant sur des données brutes. Cette méthode s'avère très utile si les algorithmes prédictifs sont incapables de modéliser les observations parce qu'elles sont trop volumineuses dans leur forme brute. À titre illustratif, on peut citer les données textuelles, audio, les images ainsi que les data tabulaires munies de millions d'attributs.

L'objectif du Feature Extraction est de diminuer systématiquement la taille de ces différents types d'observations. En réduisant la dimensionnalité de ces données volumineuses, le procédé de l'extraction rend possible leur modélisation. Le Data scientist peut utiliser différentes techniques telles que l'analyse de composant principal. Il peut aussi se servir du clustering non supervisé lorsqu'il est en présence des données tabulaires ou de la détection de bordures pour les images.

La sélection

La sélection des caractéristiques (Feature Selection) consiste à éliminer ou supprimer les attributs des données brutes redondantes ou inutiles dans le cadre du problème à résoudre. Cette approche voudrait ainsi que le scientifique des données sélectionne automatiquement le sous-ensemble le plus adapté à la résolution de ladite problématique. Pour classer les caractéristiques et les sélectionner, les algorithmes de Machine Learning peuvent s'appuyer sur une technique efficace comme la corrélation.

La construction

La construction de caractéristique vise à générer de façon manuelle de nouvelles caractéristiques sur la base de données brutes. Pour y arriver, le Data scientist doit structurer les données d'échantillon. Il expose ensuite ces data aux algorithmes de modélisation prédictive en tenant compte du problème à résoudre.

Si on prend l'exemple des données tabulaires, le scientifique des données doit agréger et associer des caractéristiques afin d'en créer de nouvelles. Il peut néanmoins réaliser l'action inverse en les décomposant. Même si ce procédé exige du temps et de la réflexion, il améliore nettement les performances des modèles de Machine Learning.

En suivant une formation en Feature engineering en présentiel ou à distance, on peut maîtriser l'utilisation des techniques de ce procédé afin d'améliorer les performances des algorithmes de Machine Learning. Cette formation permet de se familiariser aux concepts les plus fréquents en Machine Learning ou en Deep Learning (modèles prédictifs, réseaux de neurones, outils de traitement…). De plus, associant théorie et travaux pratiques, elle permet aux apprenants de maîtriser le code Python.

L'utilité du Feature engineering en Machine Learning

Ce processus est d'une grande utilité pour les métiers de la Data science. S'il peut servir à réaliser la décomposition des attributs de catégories ou un date-time, il peut également être utilisé pour recadrer des quantités numériques. Voici un exemple d'utilisation concrète de Feature engineering afin de mieux appréhender l'importance de ce procédé de Machine Learning.

Au cours de la compétition de Machine Learning KDD Cup, les participants avaient pour tâche de modéliser la manière dont les étudiants apprennent. Le comité d'organisation a fourni un corpus de résultats d'étudiants sur des exercices d'algèbre aux candidats. Ces derniers devraient s'en servir pour prédire les futures performances de ces apprenants.

Le concours a été remporté par un collectif d'étudiants de la National Taiwan University. Ils ont en effet créé des millions de caractéristiques binaires grâce au Feature engineering afin de simplifier la structure du problème. Ladite structure a ensuite permis au collectif d'étudiants d'exploiter des méthodes linéaires très simples et ultra-performantes pour générer le meilleur modèle prédictif possible.

Suivez une formation en Feature engineering pour maîtriser le procédé

Ce processus est devenu incontournable en Data Science et en Machine Learning. Il est possible de s'inscrire à une formation de ce procédé pour apprendre à maîtriser son utilisation ou ses applications possibles. Ce module de formation en Data science permet aussi d'avoir de bonnes connaissances en Deep Learning ou encore en Data Visualization.

La formation en Feature engineering est disponible en présentiel et en apprentissage à distance. Elle combine parfaitement la théorie et les travaux pratiques pour permettre aux apprenants d'acquérir rapidement de solides connaissances en programmation en langage Python, réseaux de neurones et outils de traitement de données. En passant par Jedha, les futurs scientifiques de données sauront parfaitement donner une définition du Feature engineering.

Antoine Krajnc
Écrit par
Antoine Krajnc
 - 
Fondateur
 @
Jedha