Co je sada Azure Machine Learning SDK v1 pro Python?
Důležitý
Tento článek se týká sady Azure Machine Learning SDK verze 1, která není aktuální sadou SDK. Aktuální verze sady SDK je azure Machine Learning Python SDK v2. Informace o rozdílech mezi verzemi sady SDK najdete v tématu Upgrade na verzi 2.
Datoví vědci a vývojáři umělé inteligence používají sadu Azure Machine Learning SDK v1 pro Python k vytváření a spouštění pracovních postupů strojového učení pomocí služby Azure Machine Learning Service. Se službou můžete pracovat v libovolném prostředí Pythonu, včetně poznámkových bloků Jupyter, editoru Visual Studio Code nebo oblíbeného integrovaného vývojového prostředí Pythonu.
Mezi klíčové oblasti sady SDK patří:
- Prozkoumejte, připravte a spravujte životní cyklus datových sad používaných v experimentech strojového učení.
- Správa cloudových prostředků pro monitorování, protokolování a uspořádání experimentů strojového učení
- Trénování modelů buď místně, nebo pomocí cloudových prostředků, včetně trénování modelů akcelerovaných gpu.
- Použijte automatizované strojové učení, které přijímá parametry konfigurace a trénovací data. Automaticky iteruje algoritmy a nastavení hyperparametrů, aby našel nejlepší model pro spouštění předpovědí.
- Nasaďte webové služby pro převod trénovaných modelů na služby RESTful, které je možné využívat v libovolné aplikaci.
Podrobný návod, jak začít, najdete v kurzu.
Následující části jsou přehledy některých nejdůležitějších tříd v sadě SDK a běžných vzorů návrhu pro jejich použití. Pokud chcete získat sadu SDK, přečtěte si průvodce instalací .
Stabilní vs. experimentální
Sada Azure Machine Learning SDK pro Python poskytuje stabilní i experimentální funkce ve stejné sadě SDK.
Stav funkce nebo schopnosti | Popis |
---|---|
Stabilní funkce |
připravené pro produkční prostředí Tyto funkce se doporučují pro většinu případů použití a produkčních prostředí. Aktualizují se méně často než experimentální funkce. |
Experimentální funkce | vývojový Tyto funkce jsou nově vyvinuté funkce & aktualizace, které nemusí být připravené nebo plně otestované pro produkční využití. I když jsou funkce obvykle funkční, můžou zahrnovat některé zásadní změny. Experimentální funkce se používají k vyžehlování chyb způsobujících chyby sady SDK a budou dostávat aktualizace pouze po dobu trvání testovacího období. Experimentální funkce se také označují jako funkce, které jsou ve verzi Preview. Jak název značí, experimentální funkce (Preview) slouží k experimentování a se nepovažují za bezplatnou nebo stabilníchyby . Z tohoto důvodu doporučujeme pouze experimentální funkce pokročilým uživatelům, kteří chtějí vyzkoušet dřívější verze funkcí a aktualizací, a hodláme se účastnit hlášení chyb a chyb. |
Experimentální funkce jsou označené oddílem poznámek v referenčních informacích sady SDK a označují se textem, jako je (Preview) v dokumentaci ke službě Azure Machine Learning.
Pracovní plocha
oboru názvů
Třída Workspace
je základní prostředek v cloudu, který používáte k experimentování, trénování a nasazování modelů strojového učení. Prováže vaše předplatné Azure a skupinu prostředků s snadno využitým objektem.
Zobrazte všechny parametry metody vytvoření pracovního prostoru pro opakované použití existujících instancí (Storage, Key Vault, App-Insights a Azure Container Registry-ACR) a upravte další nastavení, jako je konfigurace privátního koncového bodu a cílový výpočetní objekt.
Naimportujte třídu a vytvořte nový pracovní prostor pomocí následujícího kódu. Nastavte create_resource_group
na False
, pokud máte dříve existující skupinu prostředků Azure, kterou chcete pro pracovní prostor použít. Některé funkce můžou vyzvat k zadání přihlašovacích údajů pro ověřování Azure.
from azureml.core import Workspace
ws = Workspace.create(name='myworkspace',
subscription_id='<azure-subscription-id>',
resource_group='myresourcegroup',
create_resource_group=True,
location='eastus2'
)
Použijte stejný pracovní prostor ve více prostředích tak, že ho nejprve napíšete do konfiguračního souboru JSON. Tím se uloží data o názvu vašeho předplatného, prostředku a pracovního prostoru.
ws.write_config(path="./file-path", file_name="ws_config.json")
Načtěte pracovní prostor čtením konfiguračního souboru.
from azureml.core import Workspace
ws_other_environment = Workspace.from_config(path="./file-path/ws_config.json")
Případně můžete použít statickou metodu get()
k načtení existujícího pracovního prostoru bez použití konfiguračních souborů.
from azureml.core import Workspace
ws = Workspace.get(name="myworkspace", subscription_id='<azure-subscription-id>', resource_group='myresourcegroup')
Proměnná ws
představuje objekt Workspace
v následujících příkladech kódu.
Experiment
oboru názvů
Třída Experiment
je dalším základním cloudovým prostředkem, který představuje kolekci zkušebních verzí (spuštění jednotlivých modelů). Následující kód načte objekt Experiment
z Workspace
podle názvu nebo vytvoří nový objekt Experiment
, pokud název neexistuje.
from azureml.core.experiment import Experiment
experiment = Experiment(workspace=ws, name='test-experiment')
Spuštěním následujícího kódu získejte seznam všech objektů Experiment
obsažených v Workspace
.
list_experiments = Experiment.list(ws)
Pomocí funkce get_runs
načtěte seznam Run
objektů (zkušební verze) z Experiment
. Následující kód načte spuštění a vytiskne každé ID spuštění.
list_runs = experiment.get_runs()
for run in list_runs:
print(run.id)
Existují dva způsoby, jak spustit zkušební verzi experimentu. Pokud interaktivně experimentujete v poznámkovém bloku Jupyter, použijte funkci start_logging
. Pokud odesíláte experiment ze standardního prostředí Pythonu, použijte funkci submit
. Obě funkce vrací objekt Run
. Proměnná experiment
představuje objekt Experiment
v následujících příkladech kódu.
Běžet
oboru názvů
Spuštění představuje jednu zkušební verzi experimentu.
Run
je objekt, který používáte k monitorování asynchronního spuštění zkušební verze, uložení výstupu zkušební verze, analýzy výsledků a přístupu k vygenerovaným artefaktům. Pomocí Run
v kódu experimentování můžete protokolovat metriky a artefakty do služby Historie spuštění. Mezi funkce patří:
- Ukládání a načítání metrik a dat
- Použití značek a podřízené hierarchie pro snadné vyhledávání minulých spuštění.
- Registrace uložených souborů modelu pro nasazení
- Ukládání, úpravy a načítání vlastností spuštění
Vytvořte objekt Run
odesláním objektu Experiment
s spuštěním konfigurace objektu. Pomocí parametru tags
připojte ke spuštění vlastní kategorie a popisky. Později je můžete snadno najít a načíst z Experiment
.
tags = {"prod": "phase-1-model-tests"}
run = experiment.submit(config=your_config_object, tags=tags)
Pomocí statické funkce list
získáte seznam všech objektů Run
z Experiment
. Zadejte parametr tags
, který chcete filtrovat podle dříve vytvořené značky.
from azureml.core.run import Run
filtered_list_runs = Run.list(experiment, tags=tags)
Pomocí funkce get_details
načtěte podrobný výstup spuštění.
run_details = run.get_details()
Výstup této funkce je slovník, který obsahuje:
- ID spuštění
- Stav
- Počáteční a koncový čas
- Cílový výpočetní objekt (místní versus cloud)
- Závislosti a verze použité při spuštění
- Data specifická pro trénování (liší se v závislosti na typu modelu)
Další příklady konfigurace a monitorování spuštění najdete v .
Model
oboru názvů
Třída Model
slouží k práci s cloudovými reprezentacemi modelů strojového učení. Metody pomáhají přenášet modely mezi místními vývojovými prostředími a objektem Workspace
v cloudu.
Registraci modelu můžete použít k ukládání a správě verzí modelů v cloudu Azure ve vašem pracovním prostoru. Registrované modely jsou identifikovány podle názvu a verze. Pokaždé, když zaregistrujete model se stejným názvem jako existující, registr zvýší verzi. Azure Machine Learning podporuje jakýkoli model, který je možné načíst prostřednictvím Pythonu 3, nejen modelů Azure Machine Learning.
Následující příklad ukazuje, jak vytvořit jednoduchý místní klasifikační model s scikit-learn
, zaregistrovat model v Workspace
a stáhnout model z cloudu.
Vytvořte jednoduchý klasifikátor, clf
, který předpovídá četnost změn zákazníků na základě jejich věku. Pak vypište model do souboru .pkl
ve stejném adresáři.
from sklearn import svm
import joblib
import numpy as np
# customer ages
X_train = np.array([50, 17, 35, 23, 28, 40, 31, 29, 19, 62])
X_train = X_train.reshape(-1, 1)
# churn y/n
y_train = ["yes", "no", "no", "no", "yes", "yes", "yes", "no", "no", "yes"]
clf = svm.SVC(gamma=0.001, C=100.)
clf.fit(X_train, y_train)
joblib.dump(value=clf, filename="churn-model.pkl")
Pomocí funkce register
zaregistrujte model v pracovním prostoru. Zadejte cestu k místnímu modelu a název modelu. Registrace stejného názvu více než jednou vytvoří novou verzi.
from azureml.core.model import Model
model = Model.register(workspace=ws, model_path="churn-model.pkl", model_name="churn-model-test")
Teď, když je model zaregistrovaný ve vašem pracovním prostoru, je snadné spravovat, stahovat a organizovat modely. Pokud chcete načíst objekt modelu (například v jiném prostředí) z Workspace
, použijte konstruktor třídy a zadejte název modelu a všechny volitelné parametry. Pak pomocí funkce download
stáhněte model, včetně struktury cloudových složek.
from azureml.core.model import Model
import os
model = Model(workspace=ws, name="churn-model-test")
model.download(target_dir=os.getcwd())
Pomocí funkce delete
odeberte model z Workspace
.
model.delete()
Jakmile máte zaregistrovaný model, nasazení jako webové služby je jednoduchý proces. Nejprve vytvořit a zaregistrovat image. Tento krok nakonfiguruje prostředí Pythonu a jeho závislosti spolu se skriptem, který definuje formáty požadavků a odpovědí webové služby. Po vytvoření image sestavit konfiguraci nasazení, která nastaví jádra procesoru a parametry paměti pro cílový výpočetní objekt. Pak připojíte svůj obrázek.
ComputeTarget, RunConfiguration a ScriptRunConfig
oboru názvů
Třída ComputeTarget
je abstraktní nadřazená třída pro vytváření a správu cílových výpočetních prostředků. Cílový výpočetní objekt představuje celou řadu prostředků, ve kterých můžete trénovat modely strojového učení. Cílovým výpočetním objektem může být místní počítač nebo cloudový prostředek, jako jsou výpočetní prostředky Azure Machine Learning, Azure HDInsight nebo vzdálený virtuální počítač.
Pomocí cílových výpočetních prostředků můžete využít výkonné virtuální počítače pro trénování modelu a nastavit trvalé cílové výpočetní objekty nebo dočasné cíle vyvolané modulem runtime. Komplexní průvodce nastavením a správou cílových výpočetních prostředků najdete v .
Následující kód ukazuje jednoduchý příklad nastavení cíle AmlCompute
(podřízená třída ComputeTarget
). Tento cíl vytvoří ve vašem objektu Workspace
vzdálený výpočetní prostředek modulu runtime. Prostředek se automaticky škáluje při odeslání úlohy. Po dokončení spuštění se automaticky odstraní.
Znovu použijte jednoduchý scikit-learn
model změn a sestavte ho do vlastního souboru train.py
v aktuálním adresáři. Na konci souboru vytvořte nový adresář s názvem outputs
. Tento krok vytvoří adresář v cloudu (váš pracovní prostor) pro uložení vytrénovaného modelu, který joblib.dump()
serializován.
# train.py
from sklearn import svm
import numpy as np
import joblib
import os
# customer ages
X_train = np.array([50, 17, 35, 23, 28, 40, 31, 29, 19, 62])
X_train = X_train.reshape(-1, 1)
# churn y/n
y_train = ["yes", "no", "no", "no", "yes", "yes", "yes", "no", "no", "yes"]
clf = svm.SVC(gamma=0.001, C=100.)
clf.fit(X_train, y_train)
os.makedirs("outputs", exist_ok=True)
joblib.dump(value=clf, filename="outputs/churn-model.pkl")
Dále vytvoříte cílový výpočetní objekt tak, že vytvoříte instanci objektu RunConfiguration
a nastavíte typ a velikost. V tomto příkladu se používá nejmenší velikost prostředku (1 jádro procesoru, 3,5 GB paměti). Proměnná list_vms
obsahuje seznam podporovaných virtuálních počítačů a jejich velikostí.
from azureml.core.runconfig import RunConfiguration
from azureml.core.compute import AmlCompute
list_vms = AmlCompute.supported_vmsizes(workspace=ws)
compute_config = RunConfiguration()
compute_config.target = "amlcompute"
compute_config.amlcompute.vm_size = "STANDARD_D1_V2"
Pomocí třídy CondaDependencies
vytvořte závislosti pro prostředí Pythonu vzdáleného výpočetního prostředku. Soubor train.py
používá scikit-learn
a numpy
, které je potřeba nainstalovat v prostředí. Můžete také zadat verze závislostí. Pomocí objektu dependencies
nastavte prostředí v compute_config
.
from azureml.core.conda_dependencies import CondaDependencies
dependencies = CondaDependencies()
dependencies.add_pip_package("scikit-learn")
dependencies.add_pip_package("numpy==1.15.4")
compute_config.environment.python.conda_dependencies = dependencies
Teď jste připraveni experiment odeslat. Pomocí třídy ScriptRunConfig
připojte konfiguraci cílového výpočetního objektu a zadejte cestu/soubor k trénovacímu skriptu train.py
. Odešlete experiment zadáním parametru config
funkce submit()
. Voláním wait_for_completion
ve výsledném spuštění zobrazíte výstup asynchronního spuštění při inicializaci prostředí a vytrénování modelu.
Varování
Tady jsou omezení týkající se konkrétních znaků při použití v parametrech ScriptRunConfig
:
-
"
,$
,;
a\
znaky jsou uchycené back-endem, protože se považují za vyhrazené znaky pro oddělení příkazů Bash. - Znaky
(
,)
,%
,!
,^
,<
,>
,&
a|
znaků jsou uchyceny pro místní spuštění ve Windows.
from azureml.core.experiment import Experiment
from azureml.core import ScriptRunConfig
script_run_config = ScriptRunConfig(source_directory=os.getcwd(), script="train.py", run_config=compute_config)
experiment = Experiment(workspace=ws, name="compute_target_test")
run = experiment.submit(config=script_run_config)
run.wait_for_completion(show_output=True)
Po dokončení spuštění bude soubor trénovaného modelu churn-model.pkl
dostupný ve vašem pracovním prostoru.
Životní prostředí
oboru názvů
Prostředí Azure Machine Learning určují balíčky Pythonu, proměnné prostředí a nastavení softwaru pro trénovací a bodovací skripty. Kromě Pythonu můžete také nakonfigurovat PySpark, Docker a R pro prostředí. Prostředí interně vedou k imagím Dockeru, které se používají ke spouštění trénovacích a bodovacích procesů na cílovém výpočetním objektu. Prostředí jsou spravované a verze entit v pracovním prostoru Machine Learning, které umožňují reprodukovatelné, auditovatelné a přenosné pracovní postupy strojového učení napříč různými cílovými výpočetními objekty a typy výpočetních prostředků.
Objekt Environment
můžete použít k:
- Vyvíjejte trénovací skript.
- Znovu použijte stejné prostředí ve službě Azure Machine Learning Compute pro trénování modelů ve velkém měřítku.
- Nasaďte model se stejným prostředím bez vazby na konkrétní výpočetní typ.
Následující kód naimportuje třídu Environment
ze sady SDK a vytvoří instanci objektu prostředí.
from azureml.core.environment import Environment
Environment(name="myenv")
Přidejte balíčky do prostředí pomocí souborů Conda, pip nebo private wheel. Určete každou závislost balíčku pomocí třídy CondaDependency
a přidejte ji do PythonSection
prostředí .
Následující příklad přidá do prostředí. Přidává verzi 1.17.0 numpy
. Přidá také balíček pillow
do prostředí myenv
. Příklad používá metodu add_conda_package()
a metodu add_pip_package()
.
from azureml.core.environment import Environment
from azureml.core.conda_dependencies import CondaDependencies
myenv = Environment(name="myenv")
conda_dep = CondaDependencies()
# Installs numpy version 1.17.0 conda package
conda_dep.add_conda_package("numpy==1.17.0")
# Installs pillow package
conda_dep.add_pip_package("pillow")
# Adds dependencies to PythonSection of myenv
myenv.python.conda_dependencies=conda_dep
Pokud chcete odeslat trénovací běh, musíte zkombinovat prostředí, cílový výpočetní objekta trénovací skript Pythonu do konfigurace spuštění. Tato konfigurace je objekt obálky, který se používá k odesílání spuštění.
Když odešlete trénovací běh, může vytvoření nového prostředí trvat několik minut. Doba trvání závisí na velikosti požadovaných závislostí. Prostředí jsou službou uložená v mezipaměti. Pokud tedy definice prostředí zůstane beze změny, získáte úplnou dobu nastavení pouze jednou.
Následující příklad ukazuje, kde byste jako objekt obálky použili ScriptRunConfig
.
from azureml.core import ScriptRunConfig, Experiment
from azureml.core.environment import Environment
exp = Experiment(name="myexp", workspace = ws)
# Instantiate environment
myenv = Environment(name="myenv")
# Add training script to run config
runconfig = ScriptRunConfig(source_directory=".", script="train.py")
# Attach compute target to run config
runconfig.run_config.target = "local"
# Attach environment to run config
runconfig.run_config.environment = myenv
# Submit run
run = exp.submit(runconfig)
Pokud před odesláním spuštění nezadáte prostředí v konfiguraci spuštění, vytvoří se pro vás výchozí prostředí.
Informace o použití prostředí k nasazení webové služby najdete v části Nasazení modelu.
Kanál, PythonScriptStep
oboru názvů
Kanál Azure Machine Learning je automatizovaný pracovní postup kompletní úlohy strojového učení. Dílčí úkoly jsou zapouzdřené jako řada kroků v rámci kanálu. Kanál Azure Machine Learning může být jednoduchý jako jeden krok, který volá skript Pythonu. Kanály zahrnují funkce pro:
- Příprava dat včetně importu, ověřování a čištění, mungování a transformace, normalizace a přípravy
- Konfigurace trénování, včetně parametrizace argumentů, cest k souborům a protokolování / konfigurace generování sestav
- Efektivní a opakovatelně trénování a ověřování, které může zahrnovat určení konkrétních podmnožin dat, různých hardwarových výpočetních prostředků, distribuovaného zpracování a sledování průběhu
- Nasazení, včetně správy verzí, škálování, zřizování a řízení přístupu
- Publikování kanálu do koncového bodu REST pro opětovné spuštění z libovolné knihovny HTTP
PythonScriptStep
je základní integrovaný krok pro spuštění skriptu Pythonu na cílovém výpočetním objektu. Vezme název skriptu a další volitelné parametry, jako jsou argumenty pro skript, cílový výpočetní objekt, vstupy a výstupy. Následující kód je jednoduchý příklad PythonScriptStep
. Příklad skriptu train.py
najdete v kurzu dílčí části.
from azureml.pipeline.steps import PythonScriptStep
train_step = PythonScriptStep(
script_name="train.py",
arguments=["--input", blob_input_data, "--output", output_data1],
inputs=[blob_input_data],
outputs=[output_data1],
compute_target=compute_target,
source_directory=project_folder
)
Po vytvoření aspoň jednoho kroku je možné kroky propojit a publikovat jako jednoduchý automatizovaný kanál.
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=[train_step])
pipeline_run = experiment.submit(pipeline)
Komplexní příklad vytvoření pracovního postupu kanálu, postupujte podle pokročilého kurzu.
Model vytváření a používání kanálů
Kanál Služby Azure Machine Learning je přidružený k pracovnímu prostoru Služby Azure Machine Learning a krok kanálu je přidružený k cílovému výpočetnímu objektu, který je v tomto pracovním prostoru k dispozici. Další informace najdete v tomto článku o pracovních prostorech nebo tomto vysvětlení cílových výpočetních objektů.
Běžným vzorem kroků kanálu je:
- Zadání pracovního prostoru, výpočetního prostředí a úložiště
- Konfigurace vstupních a výstupních dat pomocí
- datová sada, která zpřístupňuje existující úložiště dat Azure
- PipelineDataset, která zapouzdřuje typová tabulková data
- PipelineData, která se používá pro zprostředkující data souborů nebo adresářů zapsaná jedním krokem a určená k použití jiným
- Definování jednoho nebo více kroků kanálu
- Vytvoření instance kanálu pomocí pracovního prostoru a kroků
- Vytvoření experimentu, do kterého kanál odešlete
- Monitorování výsledků experimentu
tento poznámkový blok je dobrým příkladem tohoto vzoru. práce
Další informace o kanálech služby Azure Machine Learning a zejména o tom, jak se liší od jiných typů kanálů, najdete v tomto článku.
AutoMLConfig
oboru názvů
Pomocí třídy AutoMLConfig
nakonfigurujte parametry pro automatizované trénování strojového učení. Automatizované strojové učení iteruje více kombinací algoritmů strojového učení a nastavení hyperparametrů. Pak najde nejvhodnější model na základě zvolené metriky přesnosti. Konfigurace umožňuje zadat:
- Typ úlohy (klasifikace, regrese, prognózování)
- Počet iterací algoritmu a maximální doba iterace na iteraci
- Metrika přesnosti pro optimalizaci
- Algoritmy pro blokování nebo seznam povolených
- Počet křížových ověření
- Cílové výpočetní objekty
- Trénovací data
Poznámka
Využijte automl
navíc v instalaci k používání automatizovaného strojového učení.
Podrobné příručky a příklady nastavení experimentů automatizovaného strojového učení najdete v kurzu a .
Následující kód znázorňuje vytvoření objektu konfigurace automatizovaného strojového učení pro klasifikační model a jeho použití při odesílání experimentu.
from azureml.train.automl import AutoMLConfig
automl_config = AutoMLConfig(task="classification",
X=your_training_features,
y=your_training_labels,
iterations=30,
iteration_timeout_minutes=5,
primary_metric="AUC_weighted",
n_cross_validations=5
)
K odeslání experimentu použijte objekt automl_config
.
from azureml.core.experiment import Experiment
experiment = Experiment(ws, "automl_test_experiment")
run = experiment.submit(config=automl_config, show_output=True)
Po odeslání experimentu výstup zobrazí přesnost trénování pro každou iteraci, jakmile se dokončí. Po dokončení spuštění se vrátí objekt AutoMLRun
(který rozšiřuje třídu Run
). Získejte nejvhodnější model pomocí funkce get_output()
k vrácení objektu Model
.
best_model = run.get_output()
y_predict = best_model.predict(X_test)
Nasazení modelu
oboru názvů
Třída InferenceConfig
je určená pro nastavení konfigurace, která popisují prostředí potřebné k hostování modelu a webové služby.
Webservice
je abstraktní nadřazená třída pro vytváření a nasazování webových služeb pro vaše modely. Podrobný průvodce přípravou na nasazení modelu a nasazením webových služeb najdete v tomto návodu.
Při nasazování modelu jako webové služby můžete použít prostředí. Prostředí umožňují reprodukovatelný připojený pracovní postup, ve kterém můžete model nasadit pomocí stejných knihoven ve výpočetních prostředcích trénování i výpočetních prostředků pro odvozování. Interně se prostředí implementují jako image Dockeru. Můžete použít buď image poskytované Microsoftem, nebo použít vlastní image Dockeru. Pokud jste dříve používali třídu ContainerImage
pro vaše nasazení, podívejte se na třídu DockerSection
, kde najdete podobný pracovní postup s prostředími.
Pokud chcete nasadit webovou službu, zkombinujte prostředí, odvozování výpočetních prostředků, bodovací skript a zaregistrovaný model v objektu nasazení deploy()
.
Následující příklad předpokládá, že jste už dokončili trénování pomocí prostředí, myenv
a chcete tento model nasadit do služby Azure Container Instances.
from azureml.core.model import InferenceConfig, Model
from azureml.core.webservice import AciWebservice, Webservice
# Register the model to deploy
model = run.register_model(model_name = "mymodel", model_path = "outputs/model.pkl")
# Combine scoring script & environment in Inference configuration
inference_config = InferenceConfig(entry_script="score.py",
environment=myenv)
# Set deployment configuration
deployment_config = AciWebservice.deploy_configuration(cpu_cores = 1,
memory_gb = 1)
# Define the model, inference, & deployment configuration and web service name and location to deploy
service = Model.deploy(workspace = ws,
name = "my_web_service",
models = [model],
inference_config = inference_config,
deployment_config = deployment_config)
Tento příklad vytvoří webovou službu Azure Container Instances, která je nejvhodnější pro testování v malém měřítku a rychlé nasazení. Pokud chcete model nasadit jako webovou službu v produkčním měřítku, použijte Azure Kubernetes Service (AKS). Další informace naleznete v tématu třídy AksCompute.
Dataset
oboru názvů
Třída Dataset
je základním prostředkem pro zkoumání a správu dat ve službě Azure Machine Learning. Data můžete prozkoumat pomocí souhrnných statistik a uložit datovou sadu do pracovního prostoru AML, abyste získali možnosti správy verzí a reprodukovatelnosti. Datové sady jsou během trénování snadno využívané modely. Podrobné příklady použití najdete v návodu.
-
TabularDataset
představuje data v tabulkovém formátu vytvořeném parsováním souboru nebo seznamu souborů. -
FileDataset
odkazuje na jeden nebo více souborů v úložištích dat nebo z veřejných adres URL.
Následující příklad ukazuje, jak vytvořit TabularDataset odkazující na jednu cestu v úložišti dat.
from azureml.core import Dataset
dataset = Dataset.Tabular.from_delimited_files(path = [(datastore, 'train-dataset/tabular/iris.csv')])
dataset.take(3).to_pandas_dataframe()
Následující příklad ukazuje, jak vytvořit FileDataset
odkazující na více adres URL souborů.
from azureml.core.dataset import Dataset
url_paths = [
'http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz',
'http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz',
'http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz',
'http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz'
]
dataset = Dataset.File.from_files(path=url_paths)
Další kroky
Vyzkoušejte následující kroky a zjistěte, jak používat sadu Azure Machine Learning SDK pro Python:
V tomto kurzu se dozvíte, jak sestavit, trénovat a nasazovat model v Pythonu.
Vyhledejte třídy a moduly v referenční dokumentaci na tomto webu pomocí obsahu na levé straně.