Azure Machine Learning ist ein Cloud-basierter maschineller Lerndienst von Microsoft.
Mit Azure Machine Learning können Sie verschiedene Techniken des maschinellen Lernens über die GUI ausführen, aber Sie können auch Jupyter verwenden.
Sie können Azure Machine Learning kostenlos testen, wenn Sie über ein Microsoft-Konto verfügen. Jupyter ist auch mit einem kostenlosen Plan erhältlich.
Preisdetails finden Sie unter dem folgenden Link.
Preis - Maschinenlernen | Microsoft Azure
Wenn Sie kein Microsoft-Konto haben, erstellen Sie eines über den Link.
Öffnen Sie den folgenden Link und klicken Sie auf die Schaltfläche "Erste Schritte", um sich bei Ihrem Microsoft-Konto anzumelden.
Microsoft Azure Machine Learning Studio
Wenn der Bildschirm "Arbeitsbereich nicht gefunden" angezeigt wird, öffnen Sie Microsoft Azure Machine Learning Studio erneut im Browser und klicken Sie auf die Schaltfläche "Erste Schritte".
Bei Erfolg wurde ein freier Arbeitsbereich erstellt und ein Bildschirm wie der folgende wird geöffnet.
Klicken Sie unten links auf dem Bildschirm auf "+ NEU", um den folgenden Bildschirm zu öffnen. Wählen Sie die Python-Version aus NOTEBOOK aus.
Dieses Mal werde ich Python2 auswählen. Sie werden nach dem Namen des Notebooks gefragt. Geben Sie ihn daher entsprechend ein.
Das in NOTEBOOKS erstellte Jupyter-Notizbuch wird angezeigt. Klicken Sie darauf, um es zu öffnen.
Ein leeres Notizbuch wird geöffnet. Danach können Sie es wie gewohnt verwenden.
Jupyter für Azure Machine Learning verwendet Anaconda und die unten aufgeführten Pakete sind verfügbar.
Anaconda Package List — Continuum documentation
Die Version von Anaconda ist 2.1, etwas alt und je nach Paket möglicherweise nicht die neueste.
Auf dem Azure Machine Learning Jupyter Notebook ist der Azure Machine Learning Python-Client installiert. Mit dieser Option können Sie Azure Machine Learning ausführen und Daten austauschen.
Azure/Azure-MachineLearning-ClientLibrary-Python
Stellen Sie zunächst eine Verbindung zu dem Arbeitsbereich her, den Sie gerade verwenden. Die für die Verbindung erforderliche Arbeitsbereich-ID und das Token finden Sie unter EINSTELLUNGEN in Studio.
from azureml import Workspace
ws = Workspace(
workspace_id="YOUR_WORKSPACE_ID",
authorization_token="YOUR_AUTHORIZATION_TOKEN",
endpoint="https://studio.azureml.net"
)
Sie können die verfügbaren Datensätze wie folgt überprüfen.
ws.datasets
Sie können die Daten abrufen, indem Sie den Namen des Datensatzes angeben, den Sie verwenden möchten, und ihn mit `` `to_dataframe``` in einen Datenrahmen konvertieren.
df = ws.datasets['Bike Rental UCI dataset'].to_dataframe()
Um die Zwischendaten von Experiment with Jupyter zu erhalten, geben Sie die Daten unter "In CSV konvertieren" ein.
Klicken Sie auf den Ausgabeport von "In CSV konvertieren" und wählen Sie "Datenzugriffscode generieren", um den Code zum Abrufen von Zwischendaten als Datenrahmen anzuzeigen. (Der Code für die Verbindung zum Arbeitsbereich wird ebenfalls angezeigt, aber ich habe eine Fehlermeldung erhalten, wenn der Endpunkt nicht festgelegt wurde. Er hat funktioniert, als ich den Endpunkt wie in [oben] hinzugefügt habe (#Verbinden mit dem Arbeitsbereich).)
Sie können die Daten, mit denen Sie in Jupyter arbeiten, zum Azure Machine Learning-Dataset hinzufügen.
Verwenden Sie beim Hinzufügen zum Datensatz `` `add_from_dataframe```.
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,
)
Sie können auch Webdienste aus Jupyter erstellen.
Mit dem folgenden Code wird beispielsweise ein Webdienst namens add erstellt.
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
Sie können auch einen vorhandenen Webdienst von Jupyter verwenden.
Wenn ich einen mit Jupyter erstellten Webdienst verwendete, wurde die Authentifizierung nicht bestanden und funktionierte nicht, also mit der GUI Erstellen wir einen Dienst, um ihn aus Jupyter hinzuzufügen und zu verwenden.
Der Inhalt von "Execute Python Script" lautet wie folgt.
def azureml_main(dataframe1 = None):
dataframe1['c'] = dataframe1.a + dataframe1.b
return dataframe1
Wenn Sie dies als Webdienst bereitstellen, verfügen Sie über einen Dienst, der die beiden Nummern wie folgt hinzufügt.
Um diesen Webdienst von Notebook zu verwenden, definieren Sie eine Funktion mit einem Dekorator wie folgt. Die URL und api_key finden Sie auf der Hilfeseite von REQUEST / RESPONSE, dem Dashboard des erstellten Webdienstes.
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
Sie können diese Funktion als Webdienst verwenden. (Die erste Ausführung dauert einige Zeit.)
Es gibt noch viele Dinge, die der Kunde / Jupyter nicht tun kann, aber ich freue mich darauf, die Kooperationsfunktion in Zukunft zu verbessern. Azure Machine Learning enthält viele Beispiele. Daher erscheint es interessant, die Zwischenergebnisse genauer zu betrachten und mit Jupyter ein Diagramm zu zeichnen.
Recommended Posts