Azure Machine Learning est un service d'apprentissage automatique basé sur le cloud fourni par Microsoft.
Azure Machine Learning vous permet d'exécuter diverses techniques d'apprentissage automatique à l'aide de l'interface graphique, mais vous pouvez également utiliser Jupyter.
Vous pouvez essayer Azure Machine Learning gratuitement si vous disposez d'un compte Microsoft. Jupyter est également disponible avec un plan gratuit.
Voir le lien ci-dessous pour plus de détails sur les prix.
Prix - Apprentissage automatique | Microsoft Azure
Si vous n'avez pas de compte Microsoft, créez-en un à partir du lien.
Ouvrez le lien ci-dessous et cliquez sur le bouton «Commencer» pour vous connecter à votre compte Microsoft.
Microsoft Azure Machine Learning Studio
Lorsque l'écran indiquant «Espace de travail introuvable» apparaît, ouvrez à nouveau Microsoft Azure Machine Learning Studio dans le navigateur et appuyez sur le bouton «Commencer».
En cas de succès, un espace de travail gratuit a été créé et un écran comme celui ci-dessous s'ouvrira.
Cliquez sur "+ NOUVEAU" en bas à gauche de l'écran pour ouvrir l'écran ci-dessous. Sélectionnez la version Python dans NOTEBOOK.
Cette fois, je sélectionnerai Python2. On vous demandera le nom du bloc-notes, alors entrez-le correctement.
Le bloc-notes Jupyter créé dans NOTEBOOKS s'affiche, cliquez dessus pour l'ouvrir.
Un cahier vide s'ouvre. Après cela, vous pouvez l'utiliser comme d'habitude.
Jupyter pour Azure Machine Learning utilise Anaconda et les packages répertoriés ci-dessous sont disponibles.
Anaconda Package List — Continuum documentation
La version d'Anaconda est 2.1, qui est un peu ancienne et peut ne pas être la dernière en fonction du package.
Azure Machine Learning Jupyter Notebook a le client Azure Machine Learning Python installé. Vous pouvez l'utiliser pour faire fonctionner Azure Machine Learning et échanger des données.
Azure/Azure-MachineLearning-ClientLibrary-Python
Tout d'abord, connectez-vous à l'espace de travail que vous utilisez actuellement. Vous pouvez trouver l'ID de l'espace de travail et le jeton requis pour la connexion à partir de SETTINGS dans studio.
from azureml import Workspace
ws = Workspace(
workspace_id="YOUR_WORKSPACE_ID",
authorization_token="YOUR_AUTHORIZATION_TOKEN",
endpoint="https://studio.azureml.net"
)
Vous pouvez vérifier les ensembles de données disponibles comme suit.
ws.datasets
Vous pouvez obtenir les données en spécifiant le nom de l'ensemble de données que vous souhaitez utiliser et le convertir en bloc de données avec `` to_dataframe ''.
df = ws.datasets['Bike Rental UCI dataset'].to_dataframe()
Pour obtenir les données intermédiaires de Experiment with Jupyter, saisissez les données dans "Convertir en CSV".
Cliquez sur le port de sortie de «Convertir en CSV» et sélectionnez «Générer le code d'accès aux données» pour afficher le code de récupération des données intermédiaires sous forme de trame de données. (Le code de connexion à l'espace de travail est également affiché, mais j'ai eu une erreur si le point de terminaison n'était pas défini. Cela a fonctionné lorsque j'ai ajouté le point de terminaison comme dans [ci-dessus](#Connecter à l'espace de travail).)
Vous pouvez ajouter les données avec lesquelles vous travaillez dans Jupyter à l'ensemble de données Azure Machine Learning.
Utilisez add_from_dataframe
lors de l'ajout à l'ensemble de données.
import pandas as pd
import numpy as np
from sklearn.datasets import load_boston
boston = load_boston()
df = pd.DataFrame(
np.column_stack([boston.data, boston.target]),
columns=boston.feature_names
)
dataset = ws.datasets.add_from_dataframe(
dataframe=df,
data_type_id='GenericCSV',
name='boston',
description=boston.DESCR,
)
Vous pouvez également créer un service Web à partir de Jupyter.
Par exemple, le code suivant crée un service Web appelé add.
from azureml import services
@services.publish(ws.workspace_id, ws.authorization_token)
@services.types(a = float, b = float)
@services.returns(float)
def add(a, b):
return a + b
Vous pouvez également utiliser un service Web existant de Jupyter.
Lorsque j'ai utilisé un service Web créé avec Jupyter, l'authentification n'a pas réussi et cela n'a pas fonctionné, donc avec l'interface graphique Créons un service pour l'ajouter et l'utiliser à partir de Jupyter.
Le contenu de «Exécuter le script Python» est le suivant.
def azureml_main(dataframe1 = None):
dataframe1['c'] = dataframe1.a + dataframe1.b
return dataframe1
Si vous déployez ceci en tant que service Web, vous aurez un service qui ajoute les deux nombres comme suit.
Pour utiliser ce service Web à partir de Notebook, définissez une fonction à l'aide d'un décorateur comme suit. L'url et api_key peuvent être obtenus à partir de la page d'aide REQUEST / RESPONSE, qui est le tableau de bord du service Web créé.
from azureml import services
url = 'WEB_SERVICE_URL'
api_key = 'WEB_SERVICE_API_KEY'
@services.service(url, api_key)
@services.types(a = float, b = float)
@services.returns(float)
def add(a, b):
pass
Vous pouvez utiliser cette fonction comme service Web. (Cela prendra un certain temps pour s'exécuter la première fois.)
Il y a encore beaucoup de choses que le client / Jupyter ne peut pas faire, mais j'attends avec impatience l'amélioration de la fonction de coopération à l'avenir. Azure Machine Learning a de nombreux exemples, il semble donc intéressant d'examiner de plus près les résultats intermédiaires et de dessiner un graphique avec Jupyter.
Recommended Posts