Qu’on me pardonne par avance pour cette entorse aux règles de la ponctuation mais un tel titre méritait un peu sinon de surprise exclamative en plus de la forme interrogative. Le titre annonce comme d’habitude la couleur et la teneur de l’article et, je ne vous en ferai pas mystère, nous allons évoquer ce profil mouvant et flou qu’est le data scientist.
Si mon dernier article utilisait à tout rompre (et jusqu’à la nausée) la figure rhétorique de la métaphore, celui que vous êtes en train de lire procède plutôt de l’analogie car il m’a semblé opportun de ramener un peu de terre-à-terre dans la définition de ce qu’on appelle un data scientist.
La science des matériaux est une discipline d’ingénieur que je connais bien car, avec la mécanique et la robotique, elle fait partie des matières qui m’ont été enseignées et qui ont fait de moi un ingénieur qui a « mal tourné ». Un expert en science des matériaux possède une formation théorique approfondie en physique appliquée, en chimie et en mathématiques. Son objectif est à la fois d’imaginer des matériaux nouveaux respectant certaines propriétés caractéristiques et de concevoir la façon de les produire à l’échelle industrielle. Relisez bien tous les termes de la phrase précédente avant de passer à la suite. Si, si, faites-le, je ne permettrais jamais de vous traiter, lecteurs, avec une telle condescendance si ce n’était important.
Bien que ces concepts soient tellement neufs à l’échelle de temps de notre chère Académie Française qu’ils ne possèdent pas de traduction qui fasse foi, un data scientist fait exactement la même chose avec les data products. Un expert en science des données possède une formation théorique et pratique approfondie en ingénierie des données et des logiciels, en statistiques et en mathématiques. Son objectif est à la fois d’imaginer des data products nouveaux respectant certains besoins caractéristiques et de concevoir les moyens de les mettre en œuvre à l’échelle du système d’information qui les hébergera.
Maintenant que je suis arrivé là où je voulais vous conduire, avec mes gros sabots, regardons plus précisément quelles sont les caractéristiques du profil du data scientist telles que je viens de le brosser. Étant donné que les data products sont des logiciels, il va de soi que leur conception nécessite des connaissances en ingénierie logicielle. Ce qui différencie le data scientist de ses confrères concepteurs de logiciels est que les algorithmes mis en œuvre dans les data products sont plus complexes que ceux qui sont au cœur de la plupart des autres logiciels (à l’exception notable des logiciels de traitement d’image et d’ingénierie financière). C’est là que la formation en mathématiques et en statistiques entre en jeu. Les data products n’auraient jamais vu le jour sans les progrès récents en apprentissage automatique (machine learning). Cette discipline possède un contenu mathématique non trivial qui n’est accessible qu’à partir d’un troisième cycle universitaire spécialisé, ne serait-ce que pour comprendre le fonctionnement des algorithmes d’apprentissage automatique et choisir les plus adaptés à un problème donné.
Mais la valeur ajoutée d’un data scientist ne se réduit à sa connaissance de l’apprentissage automatique, elle englobe toute les étapes de la chaîne de traitement de la donnée notamment les étapes de collecte et d’évaluation qui demandent non seulement une bonne expérience des langages de traitement des données mais aussi des outils statistiques plus traditionnels. Et ce n’est pas tout ! Le rôle d’un data scientist étant aussi d’industrialiser les processus de données et les data products, il lui est nécessaire de maîtriser une large part des technologies de ce domaine : les bases de données non-relationnelles (comme HBASE ou Cassandra), les frameworks de calcul distribué (comme Hadoop) ou les systèmes de traitement de flots (comme Storm). Pour finir, un data scientist a aussi besoin de connaître et de comprendre le domaine d’application de ses découvertes. Par exemple, un statisticien ignorant des réalités et des contraintes du métier d’opérateur de téléphonie mobile aura du mal à interpréter correctement les données collectées à partir du réseau 3G.
Pour résumer, le profil du data scientist repose sur trois groupes de compétences : une expérience fonctionnelle et opérationnelle d’un ou plusieurs domaines d’affaires, une pratique des technologies de stockage et de traitement des données et une connaissance poussée des mathématiques appliquées à l’analyse des données. La proportion relative de l’importance de ces trois groupes de compétences chez un individu me fait imaginer trois profils spécifiques qu’il serait plus facile d’identifier chez de futures recrues : le data designer, le data engineer et le data scientist proprement dit, dont les compétences principales apparaissent dans la liste synthétique ci-après.
- Data scientist
- Apprentissage automatique
- Algorithmique avancée
- Mathématiques appliquées & Statistiques
- Data designer
- Connaissance des métiers et des modèles d’affaires
- Sémantique
- Modélisation des comportements
- Data engineer
- Bases de données SQL et noSQL
- Calcul distribué
- Infrastructures distribuées
Chaque profil a un rôle déterminé dans l’écosystème du data product. Scientifiques et experts du domaine imaginent une application et en conçoivent le fonctionnement. La réalisation pratique est laissée au scientifique et à l’ingénieur qui s’occupe également de la mise en production. L’expert du domaine analyse le fonctionnement du data product et en tire des enseignements. Ce processus correspond en gros à 99% des applications industrielles et on s’aperçoit que, finalement, ça n’a rien de mystique !
Un commentaire