MLOps : pourquoi l’entraînement continu est essentiel
Les entreprises qui mettent en place des stratégies MLOps doivent prendre en considération quand elles doivent appliquer des étapes d’entraînement continu et quand cela n’est pas nécessaire.
Les applications propulsées par l’IA sont entraînées sur des données historiques, mais elles peuvent perdre en précision. De fait, elles sont soumises aux données du monde réel et leurs paramètres ne sont pas forcément figés.
Lorsque les données d’entrée de ces applications changent constamment dans le monde réel, des pratiques d’entraînement continu sont nécessaires. Les entreprises doivent intégrer ces pratiques dans leurs stratégies MLOps.
Qu’est-ce que l’entraînement continu
L’entraînement continu est un terme quelque peu trompeur. Il implique que la formation des algorithmes se déroule en permanence, ce qui n’est pas le cas. Il s’agit plutôt d’un réentraînement régulier des modèles de ML. Une entreprise surveille les performances de son application de ML en production. Tant que le modèle continue à fonctionner dans des conditions acceptables pour fournir les résultats souhaités sur la base d’entrées données, il n’a pas besoin d’entraînement supplémentaire. Lorsqu’il cesse de fonctionner de manière acceptable, le fait de passer en dessous du niveau de performance préétabli implique un nouveau cycle de formation pour le modèle. Les déclencheurs de réentraînement peuvent être automatisés ou basés sur l’analyse d’experts.
Par exemple, une application de ML effectuant une analyse des sentiments sur un flux de messages de médias sociaux pour les marquer comme favorables, neutres ou défavorables au produit d’une entreprise, doit faire face à des changements dans le comportement des consommateurs et dans les informations sur les produits. Des contrôles ponctuels périodiques effectués par des analystes permettent d’évaluer ces performances. Si le taux de catégorisation erronée dépasse un certain seuil arbitraire, par exemple 5 %, cela déclenche un cycle de réentraînement.
Un entraînement continu n’est pas toujours nécessaire. Autre exemple, une application analysant des photographies pour y trouver des drapeaux d’États américains ne s’écartera pas forcément de ses performances de base. Elle peut même s’améliorer au fur et à mesure que la qualité globale des photos qui lui sont fournies s’améliore. Cependant, un entraînement continu est généralement nécessaire à un moment ou à un autre.
Les avantages de cette pratique
Les applications de ML sont souvent considérées comme utiles parce qu’elles remplacent ou réduisent le besoin d’attention et d’intervention humaine. Comme les humains, les applications de ML prennent des décisions en fonction de ce que le modèle « comprend », des données d’apprentissage et des concepts reflétés par ces données. Si la nature des données change (dérive des données), ou si les concepts sous-jacents ne s’appliquent plus (dérive conceptuelle), le modèle doit être réentraîné avec de nouvelles données ou un nouveau cadre conceptuel sous-jacent.
Le programme d’analyse des sentiments susmentionné pourrait nécessiter un réentraînement régulier en raison de la dérive conceptuelle. Les mots et les structures syntaxiques que les gens utilisent pour indiquer un sentiment positif ou négatif évoluent. L’application pourrait également être confrontée à une dérive des données en raison d’un changement soudain du volume de messages générés par des robots ou de messages rédigés par des services promotionnels payants.
La place de l’entraînement continu dans l’approche MLOps
L’approche MLOps se compose de quatre cycles de développement interdépendants : le cycle des données, le cycle des modèles, le cycle de développement et le cycle des opérations. Chaque cycle alimente le suivant, c’est-à-dire que les données utilisées pour la formation au modèle alimentent les modèles, ces modèles sont ensuite intégrés dans des applications et ces applications sont finalement mises en production. Les données relatives aux performances peuvent déclencher des réitérations des étapes du cycle global de vie d’un algorithme.
Les opérations normales, dans le cycle d’exploitation, génèrent des données sur les performances du système d’IA. Lors du réentraînement d’un modèle, ces données opérationnelles entrent dans le cycle des données. La première chose à faire est d’identifier les nouvelles données d’entraînement, ainsi que la manière de les assembler et de les préparer en vue du réentraînement.
Certaines entreprises améliorent les performances de leurs applications grâce au réentraînement. Domino Data Lab cite le succès de Topdanmark, une compagnie d’assurance danoise qui a automatisé le processus de détection de la dérive des performances dans un grand nombre de ses modèles ML. Elle a pu automatiser différents types de demandes d’indemnisation en utilisant différents algorithmes. Grâce à cette automatisation, les data scientists et les ingénieurs MLOps ont pu se concentrer sur l’identification des changements dans leurs données et sur l’ajustement de ces modèles pour tenir compte de ces variations. La dérive des performances ayant déclenché le réapprentissage des modèles, un processus auparavant manuel pouvait désormais leur prendre beaucoup moins de temps.
Dans un autre exemple, la société de jeux en ligne Wildlife utilise la technologie de développement d’Anyscale pour tripler la vitesse à laquelle elle peut mettre en production un modèle de ML révisé. Wildlife a déployé un système de recommandations de jeux aux joueurs.
Si le cycle de vie MLOps fait partie intégrante du flux de travail d’une organisation pour le développement d’applications d’IA, cette organisation doit soigneusement évaluer si ses modèles ML nécessitent un entraînement continu. Elle doit être attentive aux différents scénarios qui intiment un réentraînement (automatisé ou non), comme la prise en compte de nouvelles données ou la dérive des modèles.