
Dans ma quête pour comprendre les défis de développement d’un produit de machine learning, j’ai demandé à 5 professionnels en intelligence artificielle de m’aider à identifier les compétences clés spécifiques à ce type de projet. Loin d’être une étude scientifique, ces témoignages donnent une bonne idée des talents qu’on devrait retrouver autour de la table.
- Comment gérer un produit avec du machine learning
- Quelles sont les compétences pour développer un produit en machine learning
- Comment limiter les biais dans un produit de machine learning
Un grand merci pour leur généreuse contribution à cette réflexion:
- Philippe Bouzaglou, Director of Data Science, Gorillas
- Salma Naccache, Data Scientist
- Jérôme Pasquero, Senior Product Manager, Sama
- Philipe Beaudoin, Co-Founder & CEO, Waverly
- Mrs X (anonymat requis), Directrice de l’ingénierie de recherche, BigCorp
Les qualités professionnelles pour un produit de machine learning
L’évolution la plus importante dans le domaine et le passage d’un métier lié au pur développement de modèle de machine learning, à un ensemble de métiers qui couvrent tout le cycle de développement de produits avec des composantes de machine learning.
- Le mouton à 5 pattes
- Les qualités à développer
- Les défis ont changé

Le mouton à 5 pattes
Dans l’idéal, le responsable d’un produit avec du machine learning maîtrisera les trois composantes essentielles que sont les données, le modèle et le logiciel. Certaines compagnies s’orientent vers un scientifique de données fullstack pour développeur leur produit de machine learning.
Un profil fullstack devra explorer les données et réaliser l’approche scientifique pour le développement des modèles. Il devra être à l’aise à produire un cadre conceptuel pour le développement et le paramétrage de modèles.
Salma Naccache
La difficulté est de trouver autant de qualités dans une seule personne. C’est surtout un risque pour la pérennité du produit, dont la maintenance dépendrait entièrement de cette personne. Une équipe pluridisciplinaire est mieux adaptée pour couvrir les défis du cycle de vie du produit.
C’est idéal d’avoir dans l’équipe un mélange de profils qui connaissent les algorithmes de ML, les techniques opérationnelles et qui possèdent l’expertise du domaine d’activité de l’application.
Philippe Bouzaglou
Science de données
Les compétences en science des données sont évidemment un prérequis en machine learning.
Il faut se mettre le nez dans les données avant de se lancer et de développer du gros ML.
Philipe Beaudoin
Le scientifique de données explore les données pour en identifier les caractéristiques, les lacunes et recommander le type de modèles, les paramètres et les métriques de performance à suivre.
Salma Naccache
Développement logiciel
Pour développement un produit avec du machine learning, il faut des compétences en machine learning et évidemment en développement logiciel.
Ça prend de très bons ingénieurs en développement logiciel. On n’y échappe pas!
Jérôme Pasquero
Il y a de plus en plus de gens qui ont commencé dans le logiciel et qui se sont lancés dans le machine learning.
Ce sont des profils que j’aime beaucoup, car ils savent programmer et ils ont compris les subtilités du machine learning.
Jérôme Pasquero
La pluridisciplinarité des équipes de développement en ML rend le rôle du lead technique d’autant plus important pour assurer une bonne communication et une exploitation optimale des ressources matérielles et logicielles.
Le lead technique s’assure de l’interopérabilité des modèles qui sont produits par l’équipe ML et exploité par l’équipe d’ingénierie logicielle.
Salma Naccache
Ingénierie de données
Des compétences en ingénierie de données sont nécessaires pour bien gérer un système de machine learning.
L’ingénieur de données orchestre l’ingestion et l’exploitation efficace des données, qui sont ensuite exploitées par le scientifique de données et l’ingénieur ML.
Salma Naccache
Les trois missions principales de l’ingénieur de données sont de:
- Connecter les sources de données ensemble jusqu’au système,
- Mettre en place l’infrastructure permettant de faire un réapprentissage régulier,
- Développer les outils diagnostiques pour garder un œil sur le système
Il faut s’assurer que le projet ne “pourisse” pas quelques mois après avoir été exécuté.
Philipe Beaudoin
ML Ops
Quand un DevOps rencontre du machine learning, il devient un ML Ops.
Le ML Ops s’assure que les modèles qui roulent en production soient accessibles et exploitables à tout moment et de manière fluide, tout en réduisant les temps et les capacités de calcul.
Salma Naccache
Gestion de produit ML
En plus de la gestion de projet et du développement logiciel, le gestionnaire de produit en machine learning doit être à l’aise avec la gestion de cycle de vie et le suivi de performance des modèles.
Le gestionnaire de produit doit comprendre le besoin des clients, être à l’aise à participer dans les discussions autour du développement de modèles ML pour prioriser les tâches, et délivrer des feuilles de route qui sont réalisables dans les temps alloués.
Salma Naccache
En machine learning, le gestionnaire de produit qui a une expertise dans le domaine d’activité de l’application (ex. imagerie médicale) aura plus de facilité à interpréter les résultats dans le contexte réel de l’application du logiciel.
Les qualités à développer
Conception de pipeline
Le machine learning consiste à construire des pipelines réutilisables qui permettent une expérimentation continue où toutes les étapes du processus doivent être claires et tous les résultats documentés. Contrairement au code qui peut être autodocumenté, si le pipeline ne fournit pas un historique clair de ce qui a été réalisé, beaucoup de temps peut être perdu à répéter les mêmes expériences inutilement.
Il faut investir beaucoup de temps dans l’ingénierie des processus et des pipelines plutôt que de tester des idées de façon ponctuelle.
Mrs X
Pragmatisme
Le ML est un vaste domaine avec des centaines d’articles explorant chaque petit aspect du modèle. Les équipes peuvent se perdre dans les détails et finir par passer un temps disproportionné sur des aspects qui ont peu d’impact sur leur objectif. L’objectif doit être clair pour tous et l’approche adoptée doit être la plus simple possible pour atteindre l’objectif.
Il ne faut pas utiliser des choses complexes lorsque les choses les plus simples suffisent… ce qui est le cas dans un nombre surprenant de cas.
Mrs X
Pilotage par les métriques
La réussite d’un projet de machine learning passe par une bonne communication des métriques clés avec les équipes – ingénierie et machine learning, et avec les exécutifs de la compagnie qui doivent comprendre l’impact du projet. Des tableaux de bord plus abstraits pour l’exécutif et plus détaillés pour la gestion de produit.
Il faut que toute la chaîne de management – gestion de produit jusqu’à l’exécutif, comprenne les spécificités d’un système à base de ML et des nouveaux risques que ça pose.
Philipe Beaudoin
Une grande partie de la réussite du projet dépend de l’existence de mesures et de pipelines d’évaluation clairs qui permettent de choisir une solution rationnelle et sans artifice.
Mrs X
On doit poser régulièrement des questions éthiques – comme sur les biais qu’on souhaite éviter, et s’assurer que nos tableaux de bord permettent de répondre à ces questions.
Philipe Beaudoin
Les défis ont changé
On trouve maintenant en libre accès sur GitHub des modèles fournis par de grands joueurs de l’industrie, comme OpenAI et Hugging Face. Ces ressources rendent finalement des profils en développement logiciel mieux équipés que quelqu’un qui a étudié l’architecture de modèle au doctorat.
Avant, C’était surtout une « game » pour arriver avec une meilleure architecture des modèles. Aujourd’hui, il est davantage question de savoir si on a les bonnes données, si on sait les intégrer dans en produit et l’entraîner correctement.
Jérôme Pasquero
2 commentaires sur “Quelles sont les compétences pour développer un produit en machine learning”