L’essor actuel du Machine Learning (apprentissage automatique, branche de l’intelligence artificielle) est en partie dû à la puissance de calcul obtenue au travers du Cloud Computing, représenté en particulier par Microsoft Azure.
De plus, l’approche des « Platforms as a Service » permet d’aller à l’essentiel, sans perdre de temps dans la configuration fine de machines virtuelles.
Au travers du service Azure Machine Learning, Microsoft propose un panel d’outils permettant d’accompagner les data scientists et les data engineers du développement de modèles prédictifs jusqu’à leur mise en production.
Afin de construire un premier modèle prédictif, trois solutions sont accessibles depuis le portail et correspondent à différents scénarios d’utilisation ainsi qu’à différents profils d’utilisateurs. Nous détaillerons ces trois services ci-dessous.
Azure Machine Learning Service – Visual Interface
Anciennement connu sous le nom de Azure Machine Learning Studio, ce produit est une interface graphique permettant de construire un « pipeline » de Machine Learning, depuis le chargement des données jusqu’à l’entrainement et l’évaluation du modèle, en passant par des étapes classiques de préparation des données.
Azure Machine Learning Service – Automated ML
Il existe des dizaines de modèles de Machine Learning et tous méritent d’être essayés sur les données, car, sauf grande expérience (et bonne intuition !), il est difficile de choisir a priori le modèle le plus adapté. L’approche de l’Automated Machine Learning consiste à tester une batterie de modèles et à trouver leur meilleur paramétrage, sur la base de métriques de performance, le tout de manière automatique.
Azure Machine Learning Service – Notebooks VMs
Les notebooks Jupyter se sont imposés comme un environnement de développement chez les Data Scientists qui affectionnent particulièrement son aspect interactif et sa capacité à devenir rapidement un support de présentation.
JupyterHub et JupyterLab sont deux moyens de lancer des notebooks pour lesquels on choisira un « kernel » parmi ceux disponibles (Python, R, Scala…). La puissance de calcul est ici définie par une taille de machine virtuelle associée au serveur de notebooks.
Les machines peuvent être démarrées ou arrêtées selon les besoins, lorsqu’elles sont arrêtées, le service n’est bien sûr pas facturé.
Dès que la machine est démarrée, il est possible d’accéder à JupyterHub ou JupyterLab.
D’autres moyens existent pour utiliser les notebooks Jupyter comme par exemple le site https://notebooks.azure.com/ qui met à disposition une capacité de calcul gratuite (free compute) mais sur lequel il est également possible de relier une ou plusieurs machines virtuelles créées dans Azure (direct compute).