BlogPost 1 : Découvrir ML Studio - adanba/Blog GitHub Wiki

ML Studio est un outil de machine learning faisant partie des services d'Azure, et représentant un certain nombre d'avantages, comme le zéro code par exemple. En effet, ML Studio est une platforme qui se base sur le principe du glisser-déposer (drag-and-drop) pour créer un Workflow, ne nécessite aucune installation et tout se fait via le navigateur.

On appelle un Workflow un ensemble de briques (Experiment items) inter-connectées, chaque brique ayant une fonctionnalité spécifique.

Présentation d'un workspace Azure ML Studio (platforme):

La plateforme ML d'Azure se présente ainsi:

Vue d'ensemble

  1. Parties principales:

    • Barre supérieure: permet de se déconnecter du workspace ou de naviguer vers les autres workspaces pour lesquels on a les droits d'accès
    • Barre inférieure: le bouton New permet de télécharger un jeu de données ou de créer une nouvelle expèrience Experiment
    • Barre de gauche: permet de se déplacer entre les différents environement de ML Studio, à savoir:
      • Experiments: permet d'accéder aux workflows (expèriences) déjà existants
      • Web services: permet de voir les différents Web Services activés sur votre compte Azure
      • Data Sets: accéder aux données téléchargées
      • Trained Models: accéder aux modèles déjà élaborés
      • Settings: permet de paramétrer notre workspace (par exemple le renommer) et de partager une expérience en donnant les droits d'accès à plusieurs utilisateurs
  2. Parties secondaires:

Une fois l'environement Experiment choisi, une barre droite et une barre gauche secondaire apparaîssent :

  • Barre secondaire gauche: permet d'aller d'un module à un autre pour choisir les briques dont nous avons besoin dans un workflow, en plus de cette barre nous avons une barre de recherche qui permet de filtrer sur tout l'ensemble des briques.

    Datasets, Modules, Trained Models, and Transforms

  • Barre de droite: permet de paramétrer les modules sélectionnés.

    Properties

Présentation de quelques modules et briques:

  1. Module de Data Input and Output:

Data Input and Output

Ce module nous permet d'importer et d'exporter les données. Pour l'importation, par exemple, nous avons la possibilité d'utiliser comme source plusieurs support comme Azure Blob, Azure Stockage et Azure Data Base (SQL).

  1. Module de Data Transformation:

Data Transformation

Ce module nous permet de manipuler, filtrer, échantillonner et réduire nos données avec un palette très complète de briques. Par exemple pour éléminer une colonne id on utilise la brique project columns qui se trouve dans la catégorie Manibulation Data du module Data Transformation.

  1. Module de Machine Learning:

Machine Learning

Le module Machine Learning fournit un certain nombre de fonctionnalités comme les algorithmes de machine learning, le training d'un modèle, le scoring d'un modèle et l'évaluation d'un modèle.

  1. R & Python Language Module:

Script

Ces deux modèles donnent la possibilité d'injecter un code R ou Python dans le Workflow. Ceci est très utile si aucune brique ne répond au traitement souhaité. Dans ce cas, on peut soit développer le traitement sous R ou Python, soit utiliser un package R ou Pyhton qui pourra faire le travail.

Un simple WorkFlow:

Basic Workflow

Le Workflow ci-dessus récupère (charge) un Data Set Train.csv. Sur ce jeu de données Train.csv l'identifiant est eliminé grâce à la brique Project columns, ensuite un modèle de Random Forest est entrainé sur cette base afin de prédire la variable target. Finalement, un scoring est lancé sur un jeu de donnée Test.csv après avoir subi la même transformation que le jeu de données Train.csv.

Pour voir la sortie de notre Workflow if suffi de faire un clic droit sur la sortie (output) de la dernière brique (Score Model)

Score Model

Conclusion:

L'objectif de ce post était de présenter la platforme Azure ML Studio et de démontrer sa grande simplicité d'utilisation. A titre d'exemple, le worflow simple présenté a été utilisé sur le challenge Kaggle Otto et a été benchmarké à 1.54.

Basic Workflow

Bien évidemment, ce workflow très basique ne permet pas de s'approcher des premières places mais il est possible d'utiliser des fonctionnalités plus avancées d'Azure ML pour créer des workflows plus sophistiqués et espérer monter dans le classement ! C'est ce que je vous proposerai d'étudier dans notre prochain post.