Livre blanc – Comment industrialiser une démarche de Machine Learning dans Azure

Difficile aujourd’hui de parler d’intelligence artificielle sans évoquer le Machine Learning, ou l’apprentissage automatique dans sa version française. Et pour cause, ce nouveau domaine étend les possibilités proposées par les applications que nous utilisons tous les jours : assistants digitaux, reconnaissance faciale, services bancaires ou encore recommandations d’achats. Mais toute cette démarche ne peut exister sans données à traiter !
Les Data Engineers ont permis la mise à disposition de plateformes robustes pour que les Data Scientists puissent mettre en œuvre des algorithmes puissants, et ainsi démontrer l’intérêt du Machine Learning pour les entreprises. Maintenant que les entreprises investissent dans ce nouveau domaine, un nouveau challenge apparait, celui d’intégrer ces services dans les SI existants de façon maîtrisée
En effet, même si le Machine Learning apparaît comme une technologie relativement mature sur le marché, elle est encore jeune côté outillage. Qui plus est, Machine learning et approche DevOps ne sont que trop rarement associés. C’est pourtant cette association qui permet de passer d’un prototype en phase POC à un déploiement en production !
Au travers de ce From Zero To Hero, nous avons voulu vous démontrer comment associer Machine Learning et méthodologie DevOps pour industrialiser une solution de Machine Learning.
La base d’un projet de Machine Learning
On ne fait pas de projet autour du Machine Learning pour le plaisir d’en faire !
Cette technologie doit être utilisée pour répondre à un besoin et doit donc s’inscrire dans un schéma applicatif plus large. Dans ce livre blanc, vous verrez que la partie Machine Learning n’est qu’une étape dans un processus plus large, elle se situe entre l’acquisition de données et leur restitution via une interface web.
Il est donc essentiel que nous puissions utiliser les mêmes pratiques logicielles que n’importe quel autre composant comme par exemple l’historisation du code source, la compilation, le déploiement automatisé ainsi que le monitoring.
Nous verrons au cours de ce From Zero To Hero que nous suivons plusieurs étapes telles que décrites dans le schéma ci-dessous.
Travail en équipe et reproductibilité
Pour ce livre blanc nous avons fait le choix de travailler avec Python comme langage sur la partie Machine Learning.
Le premier avantage de Python, c’est que c’est un langage de programmation, donc du texte. Et le texte est le contenu parfait pour pouvoir avoir un suivi et un travail collaboratif.
Le code source ne fait pas tout, nous avons tous connus des projets impossibles à installer malgré le code source car l’infrastructure était mal documentée. C’est là que l’infrastructure as code complète le tableau.
Présentation du lab présent dans ce livre blanc
Enfin, nous avons souhaité dans ce lab, vous démontrer comment, à partir d’une page blanche, créer, déployer et tester une infrastructure qui fournit un modèle de Machine Learning. Grâce à ce From Zero to Hero, vous pourrez, déployer votre propre modèle pas à pas, le tout en adoptant une démarche DevOps.
Pour cela, il nous fallait une source de donnée assez hétérogène pour que la démarche ait du sens. C’est pour cela que nous avons choisi Twitter. Le projet vous permettra de faire des recherches sur un ensemble de tweets que l’on vous aura permis de récupérer et de traiter.
Nous allons exploiter Azure pour tous nos composants :
- Traitement des données
- Modèle
- Portail d’interrogation
- Monitoring