[PYTHON] Essayez d'utiliser le bloc-notes Jupyter à partir d'Azure Machine Learning

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.

Utilisation de Jupyter Notebook avec Azure Machine Learning

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

Créez un compte Microsoft

Si vous n'avez pas de compte Microsoft, créez-en un à partir du lien.

Accueil | Compte Microsoft

Création d'espace de travail

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.

スクリーンショット 2015-09-06 21.28.26.png

Créer un bloc-notes Jupyter

Cliquez sur "+ NOUVEAU" en bas à gauche de l'écran pour ouvrir l'écran ci-dessous. Sélectionnez la version Python dans NOTEBOOK.

スクリーンショット 2015-09-06 21.32.36.png

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.

スクリーンショット 2015-09-06 21.34.39.png

Un cahier vide s'ouvre. Après cela, vous pouvez l'utiliser comme d'habitude.

スクリーンショット 2015-09-06 21.37.55.png

Bibliothèques disponibles

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.

Intégration d'Azure Machine Learning et Jupyter Notebook

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

Connectez-vous à l'espace de travail

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"
)

Utiliser un ensemble de données

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()

Récupérer les données de l'expérience

Pour obtenir les données intermédiaires de Experiment with Jupyter, saisissez les données dans "Convertir en CSV".

スクリーンショット 2015-09-19 15.22.39.png

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).)

Ajouter des données Jupyter à l'ensemble de données Azure Machine Learning

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,
)

Créer un service Web

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

Utiliser un service Web existant

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.

スクリーンショット 2015-09-20 0.39.27.png

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.

スクリーンショット 2015-09-20 0.42.41.png

スクリーンショット 2015-09-20 0.43.37.png

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.)

スクリーンショット 2015-09-20 0.53.04.png

finalement

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.

Matériel de référence

Recommended Posts

Essayez d'utiliser le bloc-notes Jupyter à partir d'Azure Machine Learning
Essayez d'utiliser Jupyter Notebook de manière dynamique
Développement d'applications à l'aide d'Azure Machine Learning
Essayez d'utiliser l'environnement virtuel conda avec Jupyter Notebook
Raisonnement causal utilisant l'apprentissage automatique (organisation des méthodes de raisonnement causal)
Machine learning facile avec AutoAI (partie 4) Jupyter Notebook
Points clés de «Machine learning avec Azure ML Studio»
Utilisation de Graphviz avec Jupyter Notebook
Bases de l'apprentissage automatique (mémoire)
Essayez d'utiliser Azure Logic Apps
Importance des ensembles de données d'apprentissage automatique
Comment créer rapidement un environnement d'apprentissage automatique à l'aide de Jupyter Notebook avec UbuntuServer 16.04 LTS
[Apprentissage automatique] Démarrez Spark avec iPython Notebook et essayez MLlib
Essayez d'évaluer les performances du modèle d'apprentissage automatique / de régression
Apprentissage automatique à l'aide de Jupyter Notebook dans l'environnement OCI Always Free (2019/12/17)
Essayez d'évaluer les performances du modèle d'apprentissage automatique / de classification
[Apprentissage automatique] Sélection de fonctionnalités de variables catégorielles à l'aide du test du chi carré
Comment créer rapidement un environnement d'apprentissage automatique à l'aide de Jupyter Notebook avec UbuntuServer 16.04 LTS avec Anaconda
Importance de l'apprentissage automatique et de l'apprentissage par mini-lots
[Apprentissage automatique] Étudions l'arbre de décision
Les débutants en apprentissage automatique essaient la régression linéaire
Apprentissage automatique ③ Résumé de l'arbre de décision
SVM essayant l'apprentissage automatique avec scikit-learn
J'ai essayé d'utiliser le notebook jupyter d'une manière ou d'une autre
Essayez de démarrer Jupyter Notebook ~ Formation Esper
[Apprentissage automatique Python] Recommandation d'utilisation de Spyder pour les débutants (à partir d'août 2020)
[Détection d'anomalies] Essayez d'utiliser la dernière méthode d'apprentissage à distance
Apprenez le machine learning à tout moment et en tout lieu dans l'environnement Jupyter Notebook à la demande
Étapes rapides pour créer un environnement d'apprentissage automatique à l'aide de Jupyter Notebook sur macOS Sierra avec anaconda
Algorithme d'apprentissage automatique (généralisation de la régression linéaire)
Prévision du cours des actions à l'aide de l'apprentissage automatique (scikit-learn)
Faisons un noyau jupyter
[Apprentissage automatique] Classification des sujets LDA à l'aide de scikit-learn
[Apprentissage automatique] Prédiction FX à l'aide de l'arbre de décision
Remarques sur l'exécution locale d'Azure Machine Learning
Note récapitulative sur la programmation d'apprentissage automatique Python (Jupyter)
20 sélections recommandées en 2020 de livres d'introduction à l'apprentissage automatique
Essayez l'apprentissage profond de la génomique avec Kipoi
Apprentissage automatique
Algorithme d'apprentissage automatique (implémentation de la classification multi-classes)
[Apprentissage automatique] Apprentissage supervisé utilisant l'estimation de la densité du noyau
Vérification du GPU du PC sur le notebook Jupyter
Jupyter Notebook Principes d'utilisation
Prévision du cours des actions à l'aide de l'apprentissage automatique (édition de retour)
[Apprentissage automatique] Liste des packages fréquemment utilisés
Essayons la traduction automatique neuronale avec Transformer
[Apprentissage automatique] Analyse de régression à l'aide de scicit learn
Essayez de prédire la valeur de la jauge de niveau d'eau par apprentissage automatique en utilisant les données ouvertes de Data City Sabae
Essayez d'écrire du code à partir de 1 en utilisant le chainer du cadre d'apprentissage automatique (édition mnist)
[Super Introduction] Apprentissage automatique utilisant Python - De la construction d'environnement à l'implémentation de perceptron simple-
Apprentissage automatique: reconnaissance d'image de MNIST à l'aide de PCA et de Gaussian Native Bayes
Un mémorandum de méthode souvent utilisé dans l'apprentissage automatique utilisant scikit-learn (pour les débutants)
Mémo d'apprentissage automatique d'un ingénieur débutant Partie 1
Essayez le modèle d'espace d'état (Jupyter Notebook + noyau IR)
Classification des images de guitare par apprentissage automatique Partie 1
Une histoire sur l'apprentissage automatique simple avec TensorFlow
Astuces de fourniture de données utilisant deque dans l'apprentissage automatique
Apprentissage par renforcement 10 Essayez d'utiliser un réseau neuronal formé.
Essayez de prédire la demande de puissance par l'apprentissage automatique