MLOps, l'alchimie de tous les métiers de l'intelligence artificielle ?
Si le nombre d'outils et de formations en data science et machine learning a explosé ces dernières années, les efforts pour suivre dans la durée le cycle de vie d'un projet machine learning ont été bien moindre. Le machine learning a évolué très rapidement et dans son coin en s'écartant de la rigueur et de la méthodologie du développement classique. Déjà en 2015, des ingénieurs de Google lançaient l'alerte dans leur publication "Hidden Technical Debt in Machine Learning Systems".
Les entreprises en ont souvent fait les frais : délais importants pour passer du prototypage à la production, difficulté de passer à l'échelle, manque de visibilité sur les performances en temps réel des modèles.
La méthodologie MLOps se veut faire l'alchimie entre ces deux mondes : d'un côté celui de la donnée et du machine learning et de l'autre, celui du software engineering.
Lire aussi : De S3 à EFS, le stockage AWS s'adapte à l'IA
MLOps, la formule pour parvenir à la quintessence du Machine Learning
Rappelons d'abord que le cycle de vie du machine learning (ML) est plus complexe que celui du développement classique. Il y a le travail de préparation de la donnée (extraction, nettoyage, consolidation, stockage). Puis toute la partie expérimentations avec création, entraînement et évaluation de modèles de machine learning. Enfin, la phase d'industrialisation avec le test des modèles, leur déploiement sur l'infrastructure de production et leur monitoring. Toutes ces étapes ne s'enchaînent pas linéairement, il y a beaucoup d'itérations et de cycles.
C'est pour aider à appréhender ce cycle de vie complexe que le MLOps intervient. Si la définition peut varier, MLOps désigne en général un ensemble de bonnes pratiques pour la gestion du cycle de vie ML et met l'emphase sur des concepts clés qui étaient auparavant négligés. Entre autres :
? La collaboration : partager un maximum d'informations à toute étape du workflow et permettre le travail asynchrone. Cela est valable entre collègues d'une même expertise mais aussi entre métiers différents.
? La reproductibilité : que ce soit pour un audit ou dans le cadre de ses expérimentations, tout data scientist doit pouvoir rejouer des scénarios impliquant de vieux modèles.
? La continuité : pouvoir déployer automatiquement de nouveaux modèles et faciliter les itérations grâce à un workflow unifié.
? Le feedback : surveiller les modèles en collectant logs et métriques. Cela servira autant à vérifier la réactivité et stabilité technique des modèles qu'à détecter et prévenir leur obsolescence ou autre forme de biais.
Vous le voyez, ces concepts ne sont pas vraiment une nouveauté et s'inspirent beaucoup du DevOps. Dans la pratique, ils doivent tout de même être adaptés à la sauce machine learning.
Réussir l'alchimie avec les outils.
Les grands noms mais aussi nombre de start-ups s'engouffrent sur ce marché et espèrent devenir les leaders de demain. Mais le MLOps étant un concept nouveau, il n'y a actuellement pas de stack canonique ni d'outils standards qui s'en dégagent.
Pour faire simple, on peut séparer l'offre MLOps actuelle en trois catégories :
D'une part, les fournisseurs cloud principaux (Amazon, Google, Microsoft). Opter pour ce type de solution permet une architecture unifiée et une intégration avec beaucoup d'outils existants (pas uniquement de ML). Le revers de la médaille : souffrir du vendor lock-in, il sera ainsi difficile de partir plus tard sur une solution concurrente.
D'autre part, les plateformes machine learning end-to-end (telles que Dabricks, Valohai), qui essaient d'intégrer toutes les étapes du machine learning au sein d'un même outil. Souvent proposées en version SaaS payante avec un pendant open-source gratuit mais plus limité. Ce sont les solutions les plus simples à mettre en place, surtout dans leur version SaaS. En revanche, il faudra s'adapter au cadre rigide de la plateforme et l'enfermement propriétaire sera aussi présent.
Enfin, les outils spécialisés qui se concentrent sur certaines étapes particulières du workflow (par exemple l'outil MLFlow se concentre sur la partie expérimentation alors que Seldon s'occupe de la partie déploiement). Combiner plusieurs outils différents permet plus de souplesse et de personnalisation mais nécessitera une maintenance accrue.
Chacune de ces solutions a ses avantages et inconvénients, le bon choix dépendra de l'organisation de l'entreprise et de son utilisation du machine learning.
.et les différents corps de métiers
Si les enjeux du MLOps sont faciles à appréhender, le mettre en pratique n'est pas chose aisée.
Les projets machine learning font intervenir de nombreux experts avec des cultures et des outils différents : trouver un workflow adapté à toutes les équipes peut prendre du temps.
Pour démarrer sur de bonnes bases, un conseil pratique serait d'initier des rencontres régulières entre les data scientists, data engineers et développeurs (voire DevOps). Un des points clés du MLOps est en effet la collaboration des
Lire aussi : { Tribune Expert } - Trois défis en développement logiciel qui impactent les gains de productivité de votre IA
En communiquant sur leurs objectifs, leurs méthodologies et leurs difficultés, les équipes pourront identifier les goulots d'étranglement, les points de friction et donc les opportunités d'amélioration du workflow de leurs projets machine learning.
Finalement, même s'il emprunte plus qu'il n'invente, le MLOps répond à une problématique bien réelle et sera un élément charnière des futurs succès du machine learning.
Sur le même thème
Voir tous les articles Data & IA