Aller au contenu

Le feature engineering : l’art et la science de transformer les données pour le machine learning

Dans le monde du machine learning, il y a une compétence bien gardée qui mérite d’être mise en lumière : le feature engineering. Derrière ce terme technique se cache un processus à la fois artistique et scientifique qui peut faire toute la différence dans la réussite d’un projet d’intelligence artificielle. Pour Andrew Ng, le feature engineering est probablement la clé de l’IA. Ce processus consiste à imaginer de nouveaux paramètres d’apprentissage à notre algorithme à partir de ceux qu’on a déjà à disposition. Aujourd’hui, nous allons plonger dans cet univers fascinant, une étape essentielle pour obtenir des résultats de qualité.

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

Imaginez que vous cuisinez un plat délicieux. Vous avez les ingrédients de base, mais pour réussir votre plat, vous devez les préparer avec soin, dans le bon ordre. Le feature engineering, c’est un peu ça. C’est l’art de transformer et de sélectionner les données brutes en fonctionnalités pertinentes pour améliorer les performances des modèles de machine learning. Par exemple, il arrive fréquemment d’avoir des données temporelles dans ses données. Plutôt de que de regarder les données sur 24h, il est possible de segmenter la journée en 4 périodes : matin, après-midi, soirée, nuit. Cette catégorisation peut permettre de prendre en compte des tendances de comportement, par exemple sur les modèles agricoles. Dans ce cas précis, la notion de matin correspond à des heures solaires et non à l’heure de référence. Il faut donc transformer la donnée d’origine avec du sens.

L’impact sur les résultats

Pour comprendre l’importance du feature engineering, il faut prendre conscience de ceci : une simple transformation de données peut augmenter la précision d’un modèle de 10 % ou plus. Cela peut signifier la différence entre un modèle médiocre et un modèle qui transforme votre entreprise. C’est l’équivalent de donner un coup de baguette magique à vos données. C’est d’ailleurs un conseil très précieux que donne Pierre Courtiol, un champion français sur Kaggle, au Collège de France sur la manière de remporter un championnat d’intelligence artificielle : S’attaquer à une compétition de machine learning : méthodologie et exemples pratiques

L’expertise humaine au cœur du processus

Si la science des données est une discipline en plein essor, le feature engineering reste un domaine où l’expertise humaine est irremplaçable. Les experts en données sont les artistes qui comprennent les nuances des données, identifient des modèles potentiels, et choisissent les fonctionnalités les plus appropriées. C’est une combinaison unique de compétences techniques et de flair créatif. C’est à la fois comprendre l’objet du problème client ET sa problématique. Dans la R&D industrielle, on travaille idéalement avec des docteurs / ingénieurs qui ont une expérience du terrain ET qui ont en plus une compétence en datascience.

Le défi de la collecte des données

Mais attention, le feature engineering ne fonctionne que si vous avez des données de qualité en quantité suffisante. Car augmenter le nombre de paramètres de son problème, c’est aussi avoir besoin de plus de données pour viser une convergence de performance. C’est là que le lien avec d’autres équipes entre en jeu. Collaborer avec les collecteurs de données est essentiel pour s’assurer que les ingrédients de base soient de la meilleure qualité possible. Il ne faut pas travailler en silos.

C’est cette étape qui peut améliorer la précision des modèles et faire économiser du temps et de l’argent en réduisant les erreurs coûteuses. La clé réside dans la collaboration entre les services.

Il faut retenir…

… que le feature engineering est bien plus qu’une simple étape technique dans le processus de machine learning. C’est l’art et la science de transformer des données brutes en or, et c’est l’expertise humaine qui fait briller cette alchimie. Alors pourquoi ne pas essayer vous aussi ?