Le feature engineering, botte pas si secrète de la data science

Le feature engineering, botte pas si secrète de la data science

S’exprimant lors d’une conférence à New York sur le sujet, Richard Pook, un recruteur executive spécialisé, chez Dore Partnership, remarquait que « les seuls data scientists qui peuvent prétendre à de vrais gros salaires sont ceux qui comblent le vide entre les équipes d’analystes et le comité de direction, tout les autres reçoivent des salaires plus modestes ». Être capable de participer à des rendez-vous clients tout en « maîtrisant la plomberie » : et voilà que le mouton à cinq pattes se verrait doter d’une sixième !

S’il est tentant d’imaginer les data scientists concevoir et manipuler des algorithmes complexes, la réalité est bien plus terre-à-terre et appréhendable par tout un chacun. L’algorithme ne représente qu’une fraction du travail d’un data scientist, la majeure partie de son temps étant consacrée au nettoyage de la donnée et à son enrichissement grâce à des caractéristiques qui servent à mettre en valeur les éléments porteurs de sens : ce qu’on appelle le feature engineering. Ainsi, un algorithme simple, enrichi avec de meilleures features et davantage de données performera davantage qu’une hypothèse fragile soutenue par un modèle complexe. 

 

J’ai récemment expérimenté cela de manière bien plus prosaïque : en préparation aux fêtes de fin d’année, j’ai essayé d’utiliser des techniques de Machine Learning pour deviner les robes qui pourraient plaire à mes filles adolescentes. Pour ce faire, j’ai web-scrappé (à usage personnel!) les images d’un site e-commerce très prisé par les jeunes générations et je leur ai fait classer une partie de ces images dans deux répertoires : « j’aime » et « je n’aime pas ». J’ai fait tourner plusieurs modèles sur les autres images pour prédire leur classement. Les résultats ne se sont pas vraiment distingués de ceux d’une pièce de monnaie tirée a pile-ou-face…

Certes, l’esprit de contradiction a probablement joué mais, l’explication est venue de la conversation explicative du « pourquoi j’aime ». En effet, la différence semblait se jouer sur « la petite bretelle », « le drapé », « l’ourlet », « la couture »…

Mes filles adolescentes m’ont en fait re-expliqué le concept de feature engineering ou d’espace d’apprentissage. Vladimir Vapnik, l’un des pionniers du machine learning nous explique « …dans une master-class de musiciens, le maître ne montre pas exactement ce qu’il faut jouer. Il parle aux élèves en utilisant un vocabulaire et une imagerie destiné à véhiculer des informations cachées ». Vapnik parle de « Gestalt description » et de méthodes non-inductives. En effet, une feature est une information supplémentaire potentiellement intéressante pour améliorer la pertinence d’une prévision.

Un exemple très simple : si on modélise les séries de jeux de pierre-feuille-ciseaux (ou Chifoumi pour les puristes) pour prédire le coup suivant de son adversaire, tant qu’on n’injecte pas le booléen « coup gagnant ou non », la prédiction est mauvaise, mais avec cette information supplémentaire, l’adversaire devient très prévisible !

La morale de l’histoire est qu’il faut d’abord comprendre le besoin et les objectifs métiers des utilisateurs, capturer leur espace sémantique, cadre d’appréhension et jugement des sujets de la data pour que la magie de la Data Science puisse pleinement opérer. 

 

Il est donc impératif de construire des attributs (features) y compris en ajoutant des sources de données tierces. Pour prédire des comportements de shopping par exemple, il sera utile d’inclure des informations telles que la liste des jours fériés, les saisons et la météo.

La plateforme ForePaaS a été pensée dans cet esprit, en proposant des fonctionnalités de Feature Engineering intégrées au module de Machine Learning model management afin de mettre facilement en place des flux continus en production.

 

Vous voulez en savoir plus sur les fonctionnalités Data Science de la plateforme ?

Organiser une démo