Qu'est-ce que MLOps ? Et pourquoi est-ce important ? Première partie

Qu'est-ce que MLOps ? Et pourquoi est-ce important ? Première partie

MLOps est l'abréviation de Machine Learning Operations. Il s'agit d'une discipline d'ingénierie qui vise à unifier le développement et le déploiement des systèmes d'apprentissage automatique afin de rationaliser la livraison de modèles très performants en production.

Il s'agit de déployer un modèle qui apporte de la valeur au final ! Mais nous verrons qu'aujourd'hui, avec la mise en place de DevOps, faire cela de manière cohérente, avec autant de précision et de coordination que ce que nous gérons dans le logiciel, est un sujet vraiment difficile.

Mais ne vous inquiétez pas ! Aujourd'hui, de nombreuses entreprises s'efforcent de simplifier ces processus pour vous, afin de vous aider à mûrir durablement votre travail d'apprentissage automatique.

En termes de maturité, il a été établi qu'il existe 3 niveaux de maturité MLOps :

  • Le niveau 0 consiste à construire et à déployer des modèles manuellement pour chaque étape et itération.
  • Le niveau 1 devient plus intéressant et concerne principalement la formation continue en automatisant le pipeline ML.
  • Le niveau 2 est celui où vos pipelines ML ressemblent à votre pipeline de code avec les pratiques DevOps, comme l'intégration et la livraison continues.

Ce qui n'est PAS MLOps

Maintenant que nous avons présenté ce qu'est MLOps, j'aimerais souligner ce que MLOps n'est PAS.

Deux exemples pour illustrer cela :

MLOps ne consiste pas à adapter des outils existants qui ne sont pas adaptés à la production pour les rendre aptes à la production, par exemple en essayant de trouver des moyens obscurs de mettre Jupyter Notebooks en production pour que les scientifiques des données puissent conserver leur méthode de travail quotidienne.

Les notebooks sont un outil vraiment important et inévitable lorsque vous commencez à vous occuper de science des données en général, mais même si certaines entreprises comme Netflix racontent des histoires étonnantes sur la façon dont leurs processus sont axés sur les notebooks et comment ils gèrent leur pipeline avec des notebooks, ce n'est pas pour tout le monde. Elles ont mis beaucoup d'efforts pour s'approprier leurs outils et leur plateforme pour le faire.

Gardez donc à l'esprit que tenter de "produire" des carnets est globalement une mauvaise idée.

La deuxième est la surveillance. Si vous surveillez beaucoup d'éléments de vos modèles, que vous n'en regardez jamais certains et que la plupart d'entre eux ne sont pas liés aux indicateurs clés de performance de votre entreprise, mais que vous vous contentez de vérifier que votre modèle est en vie, vous passez à côté de nombreuses informations importantes. C'est le mode de pensée "Agir maintenant, ne jamais réfléchir", qui vous empêche d'aller plus loin dans votre voyage MLOps.

MLOps Niveau 0

Commençons par le premier niveau de maturité MLOps, ne vous inquiétez pas si vous vous identifiez à certains de ces éléments, c'est normal et il n'y a pas beaucoup de personnes et d'entreprises dans le monde qui ont atteint les autres niveaux. Cet article peut vous aider à réfléchir à ces points et à voir comment vous pouvez faire passer votre apprentissage automatique au niveau supérieur.

Il existe un modèle que nous avons reconnu dans de nombreuses entreprises, même celles où nous avons commencé en tant qu'ingénieurs ML : les équipes commerciales sont arrivées avec un "problème client" ou un "tout nouveau projet" qui devait faire appel à l'IA. Elles ont donc transmis les exigences à l'équipe de science des données, qui a dû se surpasser, travailler longtemps pour trouver et nettoyer les données, puis passer des semaines à essayer d'optimiser un modèle qui atteignait un certain pourcentage de précision.

Ce qui définit le mieux ce niveau 0, c'est la façon manuelle de tout faire dans ce qu'on appelle le "pipeline".

Mais alors quoi ?

En général, les clients ou les projets présentent des besoins plus complexes que ceux prévus au départ, et en raison de la nature itérative, de test et d'apprentissage de l'IA, tout doit être refait à partir de zéro. Cela n'est pas conforme aux pratiques agiles qui régissent habituellement la gestion des projets et des logiciels.

Une autre caractéristique de ce niveau est que les modèles d'IA sont généralement déployés lorsqu'ils peuvent l'être, et non lorsqu'ils devraient l'être, ce qui fait une énorme différence dans la manière dont ils résolvent les problèmes commerciaux réels.

Bien sûr, le test des scripts d'apprentissage automatique a toujours été très en retard sur celui des logiciels, et il est généralement contenu dans le script, le cas échéant.

Le déploiement continu est rarement envisagé, ou est tout simplement considéré comme irréalisable, ce qui répond principalement aux étapes manuelles que j'ai mentionnées précédemment, et parce qu'il n'y a pas de besoins de déploiement à grande échelle et à haute fréquence. Enfin, le système global de ML est rarement contrôlé, ou est contrôlé à l'aide d'anti-modèles.

Pour conclure ce niveau, lorsque vous déployez des modèles ML, l'ensemble du système ne peut pas et ne s'adapte pas aux changements du monde réel au fur et à mesure qu'ils se produisent, et malheureusement, les modèles sont souvent non pertinents.

Si vous voulez en savoir plus sur les MLOps de niveau 1, vous pouvez consulter la deuxième partie de cette série. Nous y abordons également en détail les fonctions intégrées de Picsellia qui peuvent vous aider à améliorer votre jeu MLOps.

Gérez vos données d'IA de la bonne manière

Obtenir un essai

Recommandé pour vous:

english language
EN
french language
FR