RunConfiguration Osztály
A különböző számítási célokat célzó kísérletfuttatások konfigurációját jelöli az Azure Machine Learningben.
A RunConfiguration objektum egy kísérlet betanítási futtatásának elküldéséhez szükséges információkat foglalja magában. Általában nem közvetlenül hoz létre RunConfiguration objektumot, hanem egy olyan metódusból kap egyet, amely visszaadja azt, például a submitExperiment osztály metódusát.
A RunConfiguration egy alapkörnyezeti konfiguráció, amelyet más típusú konfigurációs lépésekben is használnak, amelyek attól függenek, hogy milyen típusú futtatást aktivál. Például a PythonScriptStepbeállításakor elérheti a lépés RunConfiguration objektumát, konfigurálhatja a Conda-függőségeket, vagy hozzáférhet a futtatás környezeti tulajdonságaihoz.
A futtatási konfigurációkra vonatkozó példákért lásd: Számítási cél kiválasztása és használata a modell betanítása céljából.
Inicializáljon egy RunConfigurationt az alapértelmezett beállításokkal.
- Öröklődés
-
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElementRunConfiguration
Konstruktor
RunConfiguration(script=None, arguments=None, framework=None, communicator=None, conda_dependencies=None, _history_enabled=None, _path=None, _name=None, command=None)
Paraméterek
Name | Description |
---|---|
script
|
A Python-szkriptfájl relatív elérési útja. A fájl elérési útja a következőnek átadott forráskönyvtárhoz viszonyítva submitvan: . Alapértelmezett érték: None
|
arguments
|
A Python-szkriptfájl parancssori argumentumai. Alapértelmezett érték: None
|
framework
|
A futtatás során használt célzott keretrendszer. A támogatott keretrendszerek a Következők: Python, PySpark, TensorFlow és PyTorch. Alapértelmezett érték: None
|
communicator
|
A futtatáskor használt kommunikátor. A támogatott kommunikátorok a Következők: None, ParameterServer, OpenMpi és IntelMpi. Ne feledje, hogy az OpenMpi egyéni rendszerképet igényel, amelyen telepítve van az OpenMpi. Az AmlCompute-fürtökhöz használja a ParameterServer vagy az OpenMpi parancsot. Az IntelMpi használata elosztott betanítási feladatokhoz. Alapértelmezett érték: None
|
conda_dependencies
|
Ha a False (Hamis) alapértelmezett értéknél marad, a rendszer létrehoz egy Python-környezetet, amely tartalmazza a(z) rendszerben Alapértelmezett érték: None
|
auto_prepare_environment
Kötelező
|
ELAVULT. Ez a beállítás már nem használatos. |
command
|
A futtatáshoz elküldendő parancs. A parancstulajdonság szkriptek/argumentumok helyett is használható. A parancs- és szkript-/argumentumtulajdonságok nem használhatók együtt futtatás elküldéséhez. Szkriptfájl elküldése a következő parancstulajdonság használatával: "python", "train.py", "–arg1", arg1_val] Tényleges parancs futtatása – [ls] Alapértelmezett érték: None
|
_history_enabled
|
Alapértelmezett érték: None
|
_path
|
Alapértelmezett érték: None
|
_name
|
Alapértelmezett érték: None
|
Megjegyzések
Gépi tanulási rendszereket általában egy adott probléma megoldására hozunk létre. Előfordulhat például, hogy a legjobb modellt szeretnénk megtalálni, amely a lekérdezésnek megfelelő keresési eredményekként kiszolgált weblapokat rangsorolja. A legjobb gépi tanulási modell kereséséhez különböző algoritmusokat kell kipróbálnunk, vagy különböző paraméterbeállításokat kell figyelembe vennünk stb.
Az Azure Machine Learning SDK-ban egy kísérlet koncepcióját használjuk annak a fogalomnak a rögzítésére, hogy a különböző betanítási futtatások a megoldani kívánt probléma miatt kapcsolódnak. A Experiment betanítási futtatások logikai tárolójaként szolgálnak, így könnyebben nyomon követheti a betanítási futtatások előrehaladását, közvetlenül összehasonlíthat két betanítási futtatásokat stb.
A RunConfiguration magában foglalja a kísérlet betanítási futtatásának elküldéséhez szükséges végrehajtási környezeti beállításokat. Rögzíti a betanítási futtatások ugyanazon gépi tanulási probléma megoldására tervezett megosztott struktúráját, valamint a konfigurációs paraméterek (például tanulási sebesség, veszteségfüggvény stb.) közötti különbségeket, amelyek megkülönböztetik a különböző betanítási futtatásokat egymástól.
A tipikus betanítási forgatókönyvekben a RunConfiguration egy olyan objektum létrehozásával ScriptRunConfig használható, amely egy RunConfiguration objektumot és egy végrehajtási szkriptet csomagol össze a betanításhoz.
A RunConfiguration konfigurációja a következőket tartalmazza:
A kísérlet forráskönyvtárának összekapcsolása a beküldött szkripttel együtt.
A beküldött szkript parancssori argumentumainak beállítása.
A Python-értelmező elérési útjának konfigurálása.
Szerezze be a Conda konfigurációját az alkalmazásfüggőségek kezeléséhez. A feladatbeküldési folyamat a konfigurációval kiépíthet egy ideiglenes Conda-környezetet, és elindíthatja az alkalmazást. A rendszer gyorsítótárazza és újra felhasználja az ideiglenes környezeteket a későbbi futtatások során.
A Docker és az egyéni alaprendszerképek nem kötelező használata.
Választható lehetőség, hogy a kísérletet többféle Azure-számítási típusnak küldje el.
Választható lehetőség a bemenetek materializálásának és a kimenetek feltöltésének konfigurálására.
A gyakori futtatókörnyezetek, például a spark és a tensorflow speciális futásidejű beállításai.
Az alábbi példa bemutatja, hogyan küldhet be betanítási szkriptet a helyi gépen.
from azureml.core import ScriptRunConfig, RunConfiguration, Experiment
# create or load an experiment
experiment = Experiment(workspace, "MyExperiment")
# run a trial from the train.py code in your current directory
config = ScriptRunConfig(source_directory='.', script='train.py',
run_config=RunConfiguration())
run = experiment.submit(config)
Az alábbi példa bemutatja, hogyan küldhet be betanítási szkriptet a fürtön szkript és argumentumok helyett a parancstulajdonság használatával.
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
command=['python', 'train.py', '--arg1', arg1_val],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
Az alábbi minta bemutatja, hogyan futtathat parancsokat a fürtön.
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
command=['ls', '-l'],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
Változók
Name | Description |
---|---|
environment
|
A környezet definíciója. Ez a mező konfigurálja a Python-környezetet. Konfigurálható egy meglévő Python-környezet használatára, vagy konfigurálható egy ideiglenes környezet beállítására a kísérlethez. A definíció a szükséges alkalmazásfüggőségek beállításáért is felelős. |
max_run_duration_seconds
|
A futtatáshoz engedélyezett maximális idő. A rendszer megpróbálja automatikusan megszakítani a futtatásokat, ha az ennél az értéknél tovább tartott. |
node_count
|
A feladathoz használandó csomópontok száma. |
priority
|
A feladat prioritása az ütemezési szabályzathoz. |
history
|
A kísérletelőzmények naplózási funkcióinak letiltására és engedélyezésére szolgáló konfigurációs szakasz. |
spark
|
Ha a platform PySparkra van állítva, a Rendszer a Spark konfigurációs szakaszával állítja be az elküldött feladat alapértelmezett SparkConfját. |
hdi
|
A HDI-konfiguráció szakasz csak akkor lép érvénybe, ha a cél egy Azure HDI-számításra van beállítva. A HDI-konfiguráció a YARN üzembehelyezési módjának beállítására szolgál. Az alapértelmezett üzembehelyezési mód a fürt. |
docker
|
A Docker konfigurációs szakasza a Docker-környezet változóinak beállítására szolgál. |
tensorflow
|
Az elosztott TensorFlow-paraméterek konfigurálásához használt konfigurációs szakasz.
Ez a paraméter csak akkor lép érvénybe, ha a |
mpi
|
Az elosztott MPI-feladatparaméterek konfigurálásához használt konfigurációs szakasz.
Ez a paraméter csak akkor lép érvénybe, ha a |
pytorch
|
Az elosztott PyTorch-feladatparaméterek konfigurálásához használt konfigurációs szakasz.
Ez a paraméter csak akkor lép érvénybe, ha a |
paralleltask
|
Az elosztott párhuzamosfeladat-feladatok paramétereinek konfigurálásához használt konfigurációs szakasz.
Ez a paraméter csak akkor lép érvénybe, ha a |
data_references
|
A futtatás során minden adatforrás elérhető az egyes konfigurációk alapján. A szótár minden eleméhez a kulcs az adatforrásnak adott név, az érték pedig a DataReferenceConfiguration. |
data
|
A futtatás során elérhetővé tenni kívánt összes adat. |
datacaches
|
<xref:buildin.list>[DatacacheConfiguration]
Az összes adat, amely elérhetővé teszi a datacache-t a futtatás során. |
output_data
|
Minden olyan kimenet, amelyet fel kell tölteni és nyomon kell követni ehhez a futtatáshoz. |
source_directory_data_store
|
A projektmegosztás háttéradattára. |
amlcompute
|
A kísérlet során létrehozandó számítási cél részletei. A konfiguráció csak akkor lép érvénybe, ha a számítási cél az AmlCompute. |
kubernetescompute
|
A kísérlet során használandó számítási cél részletei. A konfiguráció csak akkor lép érvénybe, ha a számítási cél a KubernetesCompute. |
services
|
Végpontok a számítási erőforrással való interaktív használathoz. Az engedélyezett végpontok a Következők: Jupyter, JupyterLab, VS Code, Tensorboard, SSH és Egyéni portok. |
Metódusok
delete |
Futtassa a konfigurációs fájlt. A(z) értéket ad UserErrorException , ha a konfigurációs fájl nem található. |
load |
Töltsön be egy korábban mentett futtatási konfigurációs fájlt egy lemezen lévő fájlból. Ha Ha |
save |
Mentse a RunConfiguration fájlt egy lemezen lévő fájlba. Az A UserErrorException akkor jön létre, ha:
Ha Ha Ez a módszer akkor hasznos, ha manuálisan szerkeszti a konfigurációt, vagy ha megosztja a konfigurációt a parancssori felülettel. |
delete
Futtassa a konfigurációs fájlt.
A(z) értéket ad UserErrorException , ha a konfigurációs fájl nem található.
static delete(path, name)
Paraméterek
Name | Description |
---|---|
path
Kötelező
|
Egy felhasználó kiválasztotta a gyökérkönyvtárat a futtatási konfigurációkhoz. Ez általában a Git-adattár vagy a Python-projekt gyökérkönyvtára. A konfiguráció törlődik egy .azureml nevű alkönyvtárból. |
name
Kötelező
|
A konfigurációs fájl neve. |
Kivételek
Típus | Description |
---|---|
UserErrorException
|
load
Töltsön be egy korábban mentett futtatási konfigurációs fájlt egy lemezen lévő fájlból.
Ha path
egy fájlra mutat, a RunConfiguration be lesz töltve a fájlból.
Ha path
egy könyvtárra mutat, amelynek projektkönyvtárnak kell lennie, akkor a RunConfiguration a path>/.azureml/<name> vagy <path>/aml_config/<name> fájlból <töltődik be.
static load(path, name=None)
Paraméterek
Name | Description |
---|---|
path
Kötelező
|
Egy felhasználó kiválasztotta a gyökérkönyvtárat a futtatási konfigurációkhoz. Ez általában a Git-adattár vagy a Python-projekt gyökérkönyvtára. A visszamenőleges kompatibilitás érdekében a konfiguráció az .azureml-ből vagy aml_config alkönyvtárból is betöltődik. Ha a fájl nem szerepel ezekben a könyvtárakban, a rendszer a megadott elérési útból tölti be a fájlt. |
name
|
A konfigurációs fájl neve. Alapértelmezett érték: None
|
Válaszok
Típus | Description |
---|---|
A futtatási konfigurációs objektum. |
Kivételek
Típus | Description |
---|---|
UserErrorException
|
save
Mentse a RunConfiguration fájlt egy lemezen lévő fájlba.
Az A UserErrorException akkor jön létre, ha:
A RunConfiguration nem menthető a megadott névvel.
Nincs
name
megadva paraméter.A
path
paraméter érvénytelen.
Ha path
dir_path/<file_name> formátumú<>, ahol <dir_path> érvényes könyvtár, akkor a RunConfiguration a dir_path>/<file_name> mappába <lesz mentve.
Ha path
egy könyvtárra mutat, amelynek projektkönyvtárnak kell lennie, akkor a RunConfiguration a path>/.azureml/<name> vagy <path>/aml_config/<name> helyre lesz mentve<.
Ez a módszer akkor hasznos, ha manuálisan szerkeszti a konfigurációt, vagy ha megosztja a konfigurációt a parancssori felülettel.
save(path=None, name=None, separate_environment_yaml=False)
Paraméterek
Name | Description |
---|---|
separate_environment_yaml
|
Azt jelzi, hogy menti-e a Conda-környezet konfigurációját. Ha igaz, a Conda-környezet konfigurációja egy "environment.yml" nevű YAML-fájlba lesz mentve. Alapértelmezett érték: False
|
path
|
Egy felhasználó kiválasztotta a gyökérkönyvtárat a futtatási konfigurációkhoz. Ez általában a Git-adattár vagy a Python-projekt gyökérkönyvtára. A konfigurációt a rendszer egy .azureml nevű alkönyvtárba menti. Alapértelmezett érték: None
|
name
|
[Kötelező] A konfigurációs fájl neve. Alapértelmezett érték: None
|
Válaszok
Típus | Description |
---|---|
Kivételek
Típus | Description |
---|---|
UserErrorException
|
Attribútumok
auto_prepare_environment
Kérje le a paramétert auto_prepare_environment
. Ez egy elavult és nem használt beállítás.
environment_variables
target
Számítási cél lekérése, ahol a feladat végrehajtásra van ütemezve.
Az alapértelmezett cél a helyi gépre hivatkozó "local" (helyi). A rendelkezésre álló felhőalapú számítási célok a függvénnyel compute_targetsérhetők el.
Válaszok
Típus | Description |
---|---|
A cél neve |