HyperDriveStep Osztály
Létrehoz egy Azure ML Pipeline-lépést a hyperparameter tunning futtatásához a Machine Learning-modell betanításához.
A HyperDriveStep használatára példaként tekintse meg a jegyzetfüzetet https://aka.ms/pl-hyperdrive.
Hozzon létre egy Azure ML Pipeline-lépést a hyperparameter tunning futtatásához a Machine Learning-modell betanításához.
Konstruktor
HyperDriveStep(name, hyperdrive_config, estimator_entry_script_arguments=None, inputs=None, outputs=None, metrics_output=None, allow_reuse=True, version=None)
Paraméterek
| Name | Description |
|---|---|
|
name
Kötelező
|
[Kötelező] A lépés neve. |
|
hyperdrive_config
Kötelező
|
[Kötelező] A HyperDrive-futtatás konfigurációját meghatározó HyperDriveConfig. |
|
estimator_entry_script_arguments
|
A becslő belépési szkript parancssori argumentumainak listája. Ha a Becslő bejegyzésszkriptje nem fogadja el a parancssori argumentumokat, állítsa ezt a paraméterértéket üres listára. Alapértelmezett érték: None
|
|
inputs
|
list[Union[InputPortBinding, PipelineOutputAbstractDataset, DataReference, PortDataReference, PipelineData, DatasetConsumptionConfig]]
A bemenetiport-kötések listája. Alapértelmezett érték: None
|
|
outputs
|
Kimeneti portkötések listája Alapértelmezett érték: None
|
|
metrics_output
|
Nem kötelező érték, amely megadja a HyperDrive-beli futtatási metrikák JSON-fájlként való tárolásának helyét. Alapértelmezett érték: None
|
|
allow_reuse
|
Azt jelzi, hogy a lépésnek újra kell-e használnia a korábbi eredményeket ugyanazokkal a beállításokkal való újrafuttatáskor. Az újrafelhasználás alapértelmezés szerint engedélyezve van. Ha a lépés tartalma (szkriptek/függőségek), valamint a bemenetek és paraméterek változatlanok maradnak, a lépés előző futtatásának kimenete újra felhasználható. A lépés újrahasználásakor a feladat számítási feladatként való elküldése helyett az előző futtatás eredményei azonnal elérhetővé válnak a következő lépésekhez. Ha az Azure Machine Learning-adatkészleteket használja bemenetként, az újrafelhasználást az határozza meg, hogy az adathalmaz definíciója megváltozott-e, nem pedig az, hogy az alapul szolgáló adatok megváltoztak-e. Alapértelmezett érték: True
|
|
version
|
Választható verziócímke, amely a modul funkcióváltozását jelzi. Alapértelmezett érték: None
|
|
name
Kötelező
|
[Kötelező] A lépés neve. |
|
hyperdrive_config
Kötelező
|
[Kötelező] A HyperDrive-futtatás konfigurációját meghatározó HyperDriveConfig. |
|
estimator_entry_script_arguments
Kötelező
|
A becslő belépési szkript parancssori argumentumainak listája. Ha a Becslő bejegyzésszkriptje nem fogadja el a parancssori argumentumokat, állítsa ezt a paraméterértéket üres listára. |
|
inputs
Kötelező
|
list[Union[InputPortBinding, PipelineOutputAbstractDataset, DataReference, PortDataReference, PipelineData, DatasetConsumptionConfig]]
A bemenetiport-kötések listája. |
|
outputs
Kötelező
|
A kimeneti portkötések listája. |
|
metrics_output
Kötelező
|
Nem kötelező érték, amely megadja a HyperDrive-futtatási metrikák JSON-fájlként való tárolásának helyét. |
|
allow_reuse
Kötelező
|
Azt jelzi, hogy a lépésnek újra kell-e használnia a korábbi eredményeket ugyanazokkal a beállításokkal való újrafuttatáskor. Az újrafelhasználás alapértelmezés szerint engedélyezve van. Ha a lépés tartalma (szkriptek/függőségek), valamint a bemenetek és paraméterek változatlanok maradnak, a lépés előző futtatásának kimenete újra felhasználható. A lépés újrahasználásakor a feladat számítási feladatként való elküldése helyett az előző futtatás eredményei azonnal elérhetővé válnak a következő lépésekhez. Ha az Azure Machine Learning-adatkészleteket használja bemenetként, az újrafelhasználást az határozza meg, hogy az adathalmaz definíciója megváltozott-e, nem pedig az, hogy az alapul szolgáló adatok megváltoztak-e. |
|
version
Kötelező
|
verzió |
Megjegyzések
Vegye figyelembe, hogy a becslő objektumban (például az TensorFlow objektumban) használt bejegyzésszkript argumentumait listaként kell megadni a paraméterrel a estimator_entry_script_arguments HyperDriveStep példányosításakor. A becslő paraméter script_params egy szótárt fogad el. A estimator_entry_script_argument paraméter azonban argumentumokat vár listaként.
A HyperDriveStep inicializálása magában foglalja a paraméterrel rendelkező DataReference objektumok listájának inputs megadását. Az Azure ML Pipelinesban egy folyamatlépés egy másik lépés kimenetét vagy DataReference-objektumait is bemenetként hajthatja végre. Ezért a HyperDriveStep létrehozásakor a paramétereket és inputs a outputs paramétereket explicit módon kell beállítani, amely felülbírálja inputs az Estimator objektumban megadott paramétert.
A HyperDriveStep használatához ajánlott egy külön mappát használni szkriptekhez és a lépéshez társított függő fájlokhoz, és ezt a mappát a becslő objektumként source_directorymegadni. Lásd például az source_directory osztály paraméterét TensorFlow . Ennek két előnye van. Először is segít csökkenteni a lépéshez létrehozott pillanatkép méretét, mert csak a lépéshez szükséges adatok lesznek pillanatképek. Másodszor, a lépés előző futtatásból származó kimenete újra felhasználható, ha nincs olyan módosítás, source_directory amely aktiválná a snaphot újrafeltöltését.
Az alábbi példa bemutatja, hogyan használható a HyperDriveStep az Azure Machine Learning Pipeline-ban.
metrics_output_name = 'metrics_output'
metrics_data = PipelineData(name='metrics_data',
datastore=datastore,
pipeline_output_name=metrics_output_name,
training_output=TrainingOutput("Metrics"))
model_output_name = 'model_output'
saved_model = PipelineData(name='saved_model',
datastore=datastore,
pipeline_output_name=model_output_name,
training_output=TrainingOutput("Model",
model_file="outputs/model/saved_model.pb"))
hd_step_name='hd_step01'
hd_step = HyperDriveStep(
name=hd_step_name,
hyperdrive_config=hd_config,
inputs=[data_folder],
outputs=[metrics_data, saved_model])
A teljes minta a következő forrásból érhető el: https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb
Metódusok
| create_node |
Hozzon létre egy csomópontot a HyperDrive lépésből, és adja hozzá az adott gráfhoz. Ez a módszer nem használható közvetlenül. Amikor ezzel a lépéssel példányosít egy folyamatot, az Azure ML automatikusan átadja a szükséges paramétereket ezen a módszeren keresztül, hogy a lépés hozzáadható legyen a munkafolyamatot képviselő folyamatdiagramhoz. |
create_node
Hozzon létre egy csomópontot a HyperDrive lépésből, és adja hozzá az adott gráfhoz.
Ez a módszer nem használható közvetlenül. Amikor ezzel a lépéssel példányosít egy folyamatot, az Azure ML automatikusan átadja a szükséges paramétereket ezen a módszeren keresztül, hogy a lépés hozzáadható legyen a munkafolyamatot képviselő folyamatdiagramhoz.
create_node(graph, default_datastore, context)
Paraméterek
| Name | Description |
|---|---|
|
graph
Kötelező
|
A csomópont hozzáadásához a gráfobjektum. |
|
default_datastore
Kötelező
|
Az alapértelmezett adattár. |
|
context
Kötelező
|
<xref:azureml.pipeline.core._GraphContext>
A gráfkörnyezet. |
Válaszok
| Típus | Description |
|---|---|
|
A létrehozott csomópont. |