Modell hiperparaméter-finomhangolása (v2)
A KÖVETKEZŐKRE VONATKOZIK:Azure CLI ml-bővítmény v2 (aktuális)Python SDK azure-ai-ml v2 (aktuális)
Automatizálhatja a hatékony hiperparaméter-finomhangolást az Azure Machine Learning SDK v2 és a CLI v2 használatával a SweepJob típussal.
- A próbaverzió paraméteres keresési helyének meghatározása
- Adja meg a takarítási feladat mintavételezési algoritmusát
- Adja meg az optimalizálni kívánt célt
- Korai leállítási szabályzat megadása alacsony teljesítményű feladatokhoz
- A takarítási feladat korlátainak meghatározása
- Kísérlet indítása a megadott konfigurációval
- A betanítási feladatok megjelenítése
- Válassza ki a modellhez legmegfelelőbb konfigurációt
Mi az a hiperparaméter-finomhangolás?
A hiperparaméterek állítható paraméterek, amelyek lehetővé teszik a modell betanítási folyamatának szabályozását. Neurális hálózatok esetén például ön dönti el a rejtett rétegek számát és az egyes rétegekben lévő csomópontok számát. A modell teljesítménye nagymértékben függ a hiperparamétertől.
A hiperparaméterek finomhangolása, más néven hiperparaméter-optimalizálás, a legjobb teljesítményt eredményező hiperparaméterek konfigurációjának megkeresése. A folyamat általában költséges és manuális.
Az Azure Machine Learning lehetővé teszi a hiperparaméterek finomhangolásának automatizálását és kísérletek párhuzamos futtatását a hiperparaméterek hatékony optimalizálása érdekében.
A keresési terület meghatározása
Hangolja a hiperparamétereket az egyes hiperparaméterekhez meghatározott értékek tartományának vizsgálatával.
A hiperparaméterek lehetnek különállóak vagy folyamatosak, és egy paraméterkifejezés által leírt értékek eloszlásával rendelkeznek.
Különálló hiperparaméterek
A különálló hiperparaméterek a különálló értékek között vannak megadva Choice
. Choice
a következő lehet:
- egy vagy több vesszővel tagolt érték
- objektum
range
list
tetszőleges objektum
from azure.ai.ml.sweep import Choice
command_job_for_sweep = command_job(
batch_size=Choice(values=[16, 32, 64, 128]),
number_of_hidden_layers=Choice(values=range(1,5)),
)
Ebben az esetben batch_size
az egyik érték [16, 32, 64, 128] és number_of_hidden_layers
az egyik értéket veszi fel [1, 2, 3, 4].
A következő speciális különálló hiperparaméterek is megadhatóak eloszlással:
QUniform(min_value, max_value, q)
- Olyan értéket ad vissza, mint a round(Uniform(min_value, max_value) / q) * qQLogUniform(min_value, max_value, q)
- Olyan értéket ad vissza, mint a round(exp(Uniform(min_value, max_value)) / q) * qQNormal(mu, sigma, q)
- Olyan értéket ad vissza, mint a round(Normal(mu, szigma) / q) * qQLogNormal(mu, sigma, q)
- Olyan értéket ad vissza, mint a round(exp(Normal(mu, szigma)) / q) * q
Folyamatos hiperparaméterek
A Folyamatos hiperparaméterek eloszlásként vannak megadva egy folyamatos értéktartományon keresztül:
Uniform(min_value, max_value)
– A min_value és max_value között egyenletesen elosztott értéket ad vissza.LogUniform(min_value, max_value)
- Az exp(Uniform(min_value, max_value)) szerint rajzolt értéket ad vissza, hogy a visszatérési érték logaritmusa egységesen legyen elosztvaNormal(mu, sigma)
- Egy valós értéket ad vissza, amely általában a mu középértékkel és a szórás szigmával van elosztvaLogNormal(mu, sigma)
- Az exp(Normal(mu, sigma)) szerint megrajzolt értéket ad vissza, hogy a visszatérési érték logaritmusa normális eloszlású legyen
Példa paramétertérdefinícióra:
from azure.ai.ml.sweep import Normal, Uniform
command_job_for_sweep = command_job(
learning_rate=Normal(mu=10, sigma=3),
keep_probability=Uniform(min_value=0.05, max_value=0.1),
)
Ez a kód egy keresési területet határoz meg két paraméterrel : learning_rate
és keep_probability
. learning_rate
normális eloszlása 10 középértékkel és 3 szórással rendelkezik. keep_probability
legalább 0,05 és legfeljebb 0,1 értékkel rendelkezik.
A parancssori felülethez használhatja a takarítási feladat YAML-sémáját a keresési terület YAML-ben való meghatározásához:
search_space:
conv_size:
type: choice
values: [2, 5, 7]
dropout_rate:
type: uniform
min_value: 0.1
max_value: 0.2
A hiperparaméter-terület mintavételezése
Adja meg a hiperparaméter-területen használandó paraméterminta-módszert. Az Azure Machine Learning a következő módszereket támogatja:
- Véletlenszerű mintavételezés
- Rácsos mintavételezés
- Bayes-féle mintavételezés
Véletlenszerű mintavételezés
A véletlenszerű mintavételezés támogatja a különálló és folyamatos hiperparamétereket. Támogatja az alacsony teljesítményű feladatok korai leállítását. Egyes felhasználók véletlenszerű mintavételezéssel végeznek kezdeti keresést, majd finomítják a keresési területet a találatok javítása érdekében.
Véletlenszerű mintavételezés esetén a hiperparaméter-értékek véletlenszerűen vannak kiválasztva a megadott keresési területből. A parancsfeladat létrehozása után a takarítási paraméter használatával definiálhatja a mintavételezési algoritmust.
from azure.ai.ml.sweep import Normal, Uniform, RandomParameterSampling
command_job_for_sweep = command_job(
learning_rate=Normal(mu=10, sigma=3),
keep_probability=Uniform(min_value=0.05, max_value=0.1),
batch_size=Choice(values=[16, 32, 64, 128]),
)
sweep_job = command_job_for_sweep.sweep(
compute="cpu-cluster",
sampling_algorithm = "random",
...
)
Sobol
A Sobol a véletlenszerű mintavételezés egy típusa, amelyet a takarítási feladatok típusai támogatnak. A sobol használatával reprodukálhatja az eredményeket mag használatával, és egyenletesebben fedheti le a keresési terület eloszlását.
A sobol használatához használja a RandomParameterSampling osztályt a mag és a szabály hozzáadásához az alábbi példában látható módon.
from azure.ai.ml.sweep import RandomParameterSampling
sweep_job = command_job_for_sweep.sweep(
compute="cpu-cluster",
sampling_algorithm = RandomParameterSampling(seed=123, rule="sobol"),
...
)
Rácsos mintavételezés
A rácsos mintavételezés támogatja a különálló hiperparamétereket. Használjon rácsos mintavételezést, ha költségvetéssel teljes körűen kereshet a keresési területen. Támogatja az alacsony teljesítményű feladatok korai leállítását.
A rácsos mintavételezés egyszerű rácskeresést végez az összes lehetséges értéken. A rácsos mintavételezés csak hiperparaméterekkel choice
használható. A következő tér például hat mintával rendelkezik:
from azure.ai.ml.sweep import Choice
command_job_for_sweep = command_job(
batch_size=Choice(values=[16, 32]),
number_of_hidden_layers=Choice(values=[1,2,3]),
)
sweep_job = command_job_for_sweep.sweep(
compute="cpu-cluster",
sampling_algorithm = "grid",
...
)
Bayes-féle mintavételezés
A Bayes-féle mintavételezés a Bayes-féle optimalizálási algoritmuson alapul. A korábbi minták alapján választja ki a mintákat, hogy az új minták javíthassák az elsődleges metrikát.
A Bayes-mintavételezést akkor javasoljuk, ha elegendő költségvetése van a hiperparaméter-tér felfedezéséhez. A legjobb eredmény érdekében a hangolt hiperparaméterek számának legfeljebb 20-szorosát javasoljuk.
Az egyidejű feladatok száma hatással van a hangolási folyamat hatékonyságára. Az egyidejű feladatok kisebb száma jobb mintavételezési konvergenciához vezethet, mivel a kisebb párhuzamosság növeli a korábban befejezett feladatok előnyeit élvező feladatok számát.
A Bayes-mintavételezés csak a , uniform
a és quniform
a eloszlást támogatja choice
a keresési területen.
from azure.ai.ml.sweep import Uniform, Choice
command_job_for_sweep = command_job(
learning_rate=Uniform(min_value=0.05, max_value=0.1),
batch_size=Choice(values=[16, 32, 64, 128]),
)
sweep_job = command_job_for_sweep.sweep(
compute="cpu-cluster",
sampling_algorithm = "bayesian",
...
)
A takarítás céljának megadása
Határozza meg a takarítási feladat célját az optimalizálni kívánt elsődleges metrika és cél megadásával. A rendszer minden betanítási feladatot kiértékel az elsődleges metrika alapján. A korai felmondási szabályzat az elsődleges metrikával azonosítja az alacsony teljesítményű feladatokat.
primary_metric
: Az elsődleges metrika nevének pontosan meg kell egyeznie a betanítási szkript által naplózott metrika nevévelgoal
: Vagy lehetMaximize
Minimize
, és meghatározza, hogy az elsődleges metrika teljes méretűre vagy minimálisra lesz-e állítva a feladatok kiértékelésekor.
from azure.ai.ml.sweep import Uniform, Choice
command_job_for_sweep = command_job(
learning_rate=Uniform(min_value=0.05, max_value=0.1),
batch_size=Choice(values=[16, 32, 64, 128]),
)
sweep_job = command_job_for_sweep.sweep(
compute="cpu-cluster",
sampling_algorithm = "bayesian",
primary_metric="accuracy",
goal="Maximize",
)
Ez a minta maximalizálja a "pontosságot".
Naplómetrikák hiperparaméter-finomhangoláshoz
A modell betanítási szkriptjének naplóznia kell az elsődleges metrikát a modell betanítása során ugyanazzal a metrikanévvel, hogy a SweepJob hozzáférhessen a hiperparaméter-finomhangoláshoz.
Naplózza az elsődleges metrikát a betanítási szkriptben a következő mintarészlettel:
import mlflow
mlflow.log_metric("accuracy", float(val_accuracy))
A betanítási szkript kiszámítja a val_accuracy
értéket, és naplózza elsődleges metrikaként "pontosságként". A metrika minden naplózásakor a hiperparaméter-finomhangolási szolgáltatás fogadja. Ön határozza meg a jelentéskészítés gyakoriságát.
További információ a betanítási feladatok naplózási értékeiről: Naplózás engedélyezése az Azure Machine Learning-betanítási feladatokban.
Korai felmondási szabályzat megadása
Automatikusan befejezi a rosszul teljesítő feladatokat egy korai felmondási szabályzattal. A korai leállítás javítja a számítási hatékonyságot.
A szabályzat alkalmazásakor a következő paramétereket konfigurálhatja:
evaluation_interval
: a szabályzat alkalmazásának gyakorisága. Minden alkalommal, amikor a betanítási szkript naplózza az elsődleges metrikákat, egy intervallumnak számít. Azevaluation_interval
1-ből egy minden alkalommal alkalmazza a szabályzatot, amikor a betanítási szkript az elsődleges metrikát jelenti. Aevaluation_interval
2-ből egy minden második alkalommal alkalmazza a szabályzatot. Ha nincs megadva,evaluation_interval
a értéke alapértelmezés szerint 0.delay_evaluation
: késlelteti az első szabályzat kiértékelését egy megadott számú időközre. Ez egy opcionális paraméter, amely elkerüli a betanítási feladatok idő előtti leállítását azáltal, hogy az összes konfigurációt minimális számú időközig futtatja. Ha meg van adva, a szabályzat a evaluation_interval minden olyan többszörösét alkalmazza, amely nagyobb vagy egyenlő delay_evaluation. Ha nincs megadva,delay_evaluation
alapértelmezés szerint 0 értékre van állítva.
Az Azure Machine Learning a következő korai felmondási szabályzatokat támogatja:
- Bandit szabályzat
- Medián leállítási szabályzat
- Csonkítás kiválasztási szabályzata
- Nincs felmondási szabályzat
Bandit szabályzat
A bandit szabályzat a tartalékidő-tényezőn/tartalékidőn és a kiértékelési időközön alapul. A Bandit-szabályzat befejez egy feladatot, ha az elsődleges metrika nem a legsikeresebb feladat megadott tartalékidő-/tartalékidő-mennyiségén belül van.
Adja meg a következő konfigurációs paramétereket:
slack_factor
vagyslack_amount
: a legjobban teljesítő betanítási feladat tekintetében engedélyezett tartalékidő.slack_factor
az engedélyezett tartalékidőt adja meg arányként.slack_amount
a megengedett tartalékidőt abszolút összegként adja meg az arány helyett.Vegyük például egy 10-edik intervallumban alkalmazott Bandit-szabályzatot. Tegyük fel, hogy az elsődleges metrika által jelentett 10 időközben a legjobban teljesítő feladat 0,8, amelynek célja az elsődleges metrika maximalizálása. Ha a szabályzat 0,2 értéket ad meg
slack_factor
, a rendszer leáll minden olyan betanítási feladat, amelynek a legjobb metrikája 10-nél kisebb, mint 0,66 (0,8/(1+slack_factor
)).evaluation_interval
: (nem kötelező) a szabályzat alkalmazásának gyakoriságadelay_evaluation
: (nem kötelező) késlelteti az első szabályzat kiértékelését egy megadott számú időköz esetén
from azure.ai.ml.sweep import BanditPolicy
sweep_job.early_termination = BanditPolicy(slack_factor = 0.1, delay_evaluation = 5, evaluation_interval = 1)
Ebben a példában a korai megszüntetési szabályzatot a rendszer a metrikák jelentésekor minden időközönként alkalmazza, az 5. értékelési időköztől kezdve. Minden olyan feladat leáll, amelynek a legjobb metrikája kisebb, mint (1/(1+0,1) vagy a legjobban teljesítő feladatok 91%-a.
Medián leállítási szabályzat
A medián leállítás egy korai leállítási szabályzat, amely a feladatok által jelentett elsődleges metrikák futási átlagán alapul. Ez a szabályzat az összes betanítási feladat átlagát számítja ki, és leállítja azokat a feladatokat, amelyek elsődleges metrikaértéke rosszabb, mint az átlagok mediánja.
Ez a szabályzat a következő konfigurációs paramétereket használja:
evaluation_interval
: a szabályzat alkalmazásának gyakorisága (nem kötelező paraméter).delay_evaluation
: késlelteti az első szabályzat kiértékelését egy megadott számú időközre (nem kötelező paraméter).
from azure.ai.ml.sweep import MedianStoppingPolicy
sweep_job.early_termination = MedianStoppingPolicy(delay_evaluation = 5, evaluation_interval = 1)
Ebben a példában a korai felmondási szabályzatot a rendszer minden, az 5. értékelési időköztől kezdődő időközönként alkalmazza. A feladat 5-ös időközönként leáll, ha a legjobb elsődleges metrika rosszabb, mint a futó átlagok mediánja az összes betanítási feladat 1:5-ös időközével.
Csonkítás kiválasztási szabályzata
A csonkítás kiválasztása az egyes kiértékelési időközökben a legalacsonyabban teljesítő feladatok százalékos arányát szünteti meg. a feladatokat az elsődleges metrika alapján hasonlítjuk össze.
Ez a szabályzat a következő konfigurációs paramétereket használja:
truncation_percentage
: a legalacsonyabb teljesítményt nyújtó feladatok százalékos aránya az egyes kiértékelési időközökben. 1 és 99 közötti egész szám.evaluation_interval
: (nem kötelező) a szabályzat alkalmazásának gyakoriságadelay_evaluation
: (nem kötelező) késlelteti az első szabályzat kiértékelését egy megadott számú időköz eseténexclude_finished_jobs
: meghatározza, hogy ki kell-e zárni a befejezett feladatokat a szabályzat alkalmazásakor
from azure.ai.ml.sweep import TruncationSelectionPolicy
sweep_job.early_termination = TruncationSelectionPolicy(evaluation_interval=1, truncation_percentage=20, delay_evaluation=5, exclude_finished_jobs=true)
Ebben a példában a korai felmondási szabályzatot a rendszer minden, az 5. értékelési időköztől kezdődő időközönként alkalmazza. A feladatok 5-ös időközzel fejeződnek be, ha az 5. időközi teljesítmény az összes feladat teljesítményének 5. időközben a legalacsonyabb 20%-a, és kizárja a befejezett feladatokat a szabályzat alkalmazásakor.
Nincs felmondási szabályzat (alapértelmezett)
Ha nincs megadva szabályzat, a hiperparaméter-finomhangolási szolgáltatás lehetővé teszi, hogy az összes betanítási feladat befejeződjön.
sweep_job.early_termination = None
Korai felmondási szabályzat kiválasztása
- Az ígéretes feladatok megszüntetése nélkül megtakarítást biztosító konzervatív szabályzatok esetében fontolja meg az 1-5-ös
evaluation_interval
mediánmegállásidelay_evaluation
szabályzatot. Ezek olyan konzervatív beállítások, amelyek körülbelül 25–35%-os megtakarítást biztosítanak az elsődleges metrika elvesztése nélkül (a kiértékelési adatok alapján). - Az agresszívebb megtakarítás érdekében használja a Bandit Policyt kisebb engedélyezett tartalékidővel vagy csonkolási kijelölési szabályzattal, nagyobb csonkítási százalékkal.
A takarítási feladat korlátainak beállítása
A takarítási feladat korlátainak beállításával szabályozhatja az erőforrás-költségvetést.
max_total_trials
: Próbafeladatok maximális száma. 1 és 1000 közötti egész számnak kell lennie.max_concurrent_trials
: (nem kötelező) Az egyidejűleg futtatható próbafeladatok maximális száma. Ha nincs megadva, max_total_trials feladatok száma párhuzamosan indul el. Ha meg van adva, 1 és 1000 közötti egész számnak kell lennie.timeout
: A teljes takarítási feladat futásának maximális időtartama másodpercben. A korlát elérése után a rendszer megszakítja a takarítási feladatot, beleértve az összes próbaverzióját is.trial_timeout
: Az egyes próbafeladatok maximális futási ideje másodpercben. A korlát elérése után a rendszer megszakítja a próbaverziót.
Megjegyzés
Ha a max_total_trials és az időtúllépés is meg van adva, a hiperparaméter-finomhangolási kísérlet a két küszöbérték közül az első elérésekor fejeződik be.
Megjegyzés
Az egyidejű próbafeladatok száma a megadott számítási célban elérhető erőforrásokon van meghatározva. Győződjön meg arról, hogy a számítási cél rendelkezik a kívánt egyidejűséghez elérhető erőforrásokkal.
sweep_job.set_limits(max_total_trials=20, max_concurrent_trials=4, timeout=1200)
Ez a kód úgy konfigurálja a hiperparaméter-finomhangolási kísérletet, hogy legfeljebb 20 próbafeladatot használjon, és egyszerre négy próbafeladatot futtasson 1200 másodperces időtúllépéssel a teljes takarítási feladathoz.
Hiperparaméter-finomhangolási kísérlet konfigurálása
A hiperparaméter-finomhangolási kísérlet konfigurálásához adja meg a következőket:
- A definiált hiperparaméter-keresési terület
- A mintavételezési algoritmus
- Az Ön korai felmondási szabályzata
- Az Ön célja
- Erőforráskorlátok
- CommandJob vagy CommandComponent
- Takarítási feladat
A SweepJob hyperparaméter-takarítást futtathat a parancs- vagy parancsösszetevőn.
Megjegyzés
A használt sweep_job
számítási célnak elegendő erőforrással kell rendelkeznie az egyidejűségi szint kielégítéséhez. A számítási célokról további információt a Számítási célok című témakörben talál.
Konfigurálja a hiperparaméter finomhangolási kísérletét:
from azure.ai.ml import MLClient
from azure.ai.ml import command, Input
from azure.ai.ml.sweep import Choice, Uniform, MedianStoppingPolicy
from azure.identity import DefaultAzureCredential
# Create your base command job
command_job = command(
code="./src",
command="python main.py --iris-csv ${{inputs.iris_csv}} --learning-rate ${{inputs.learning_rate}} --boosting ${{inputs.boosting}}",
environment="AzureML-lightgbm-3.2-ubuntu18.04-py37-cpu@latest",
inputs={
"iris_csv": Input(
type="uri_file",
path="https://azuremlexamples.blob.core.windows.net/datasets/iris.csv",
),
"learning_rate": 0.9,
"boosting": "gbdt",
},
compute="cpu-cluster",
)
# Override your inputs with parameter expressions
command_job_for_sweep = command_job(
learning_rate=Uniform(min_value=0.01, max_value=0.9),
boosting=Choice(values=["gbdt", "dart"]),
)
# Call sweep() on your command job to sweep over your parameter expressions
sweep_job = command_job_for_sweep.sweep(
compute="cpu-cluster",
sampling_algorithm="random",
primary_metric="test-multi_logloss",
goal="Minimize",
)
# Specify your experiment details
sweep_job.display_name = "lightgbm-iris-sweep-example"
sweep_job.experiment_name = "lightgbm-iris-sweep-example"
sweep_job.description = "Run a hyperparameter sweep job for LightGBM on Iris dataset."
# Define the limits for this sweep
sweep_job.set_limits(max_total_trials=20, max_concurrent_trials=10, timeout=7200)
# Set early stopping on this one
sweep_job.early_termination = MedianStoppingPolicy(
delay_evaluation=5, evaluation_interval=2
)
A command_job
függvénynek nevezzük, így a paraméterkifejezéseket alkalmazhatjuk a takarítási bemenetekre. A sweep
függvény ezután konfigurálva van a következővel trial
: , sampling-algorithm
, objective
, limits
, és compute
. A fenti kódrészlet a Hyperparameter-takarítás futtatása parancson vagy CommandComponenten mintajegyzetfüzetből származik. Ebben a mintában a és boosting
a learning_rate
paraméterek lesznek hangolva. A feladatok korai leállítását egy MedianStoppingPolicy
, amely leállítja azt a feladatot, amelynek elsődleges metrikaértéke rosszabb, mint az összes betanítási feladat átlagának mediánja.( lásd : MedianStoppingPolicy osztályhivatkozás).
A paraméterértékek fogadásának, elemzésének és a hangolandó betanítási szkriptnek való átadásának megtekintéséhez tekintse meg ezt a kódmintát.
Fontos
Minden hiperparaméteres takarítási feladat teljesen újraindítja a betanítást, beleértve a modell és az összes adatbetöltő újraépítését. Ezt a költséget minimalizálhatja egy Azure Machine Learning-folyamat vagy manuális folyamat használatával, hogy a lehető legtöbb adat-előkészítést végezze el a betanítási feladatok előtt.
Hiperparaméter-finomhangolási kísérlet elküldése
A hiperparaméter finomhangolási konfigurációjának megadása után küldje el a feladatot:
# submit the sweep
returned_sweep_job = ml_client.create_or_update(sweep_job)
# get a URL for the status of the job
returned_sweep_job.services["Studio"].endpoint
Hiperparaméter-finomhangolási feladatok vizualizációja
Az összes hiperparaméter-finomhangolási feladatot megjelenítheti a Azure Machine Learning stúdió. A kísérletek portálon való megtekintéséről további információt a Feladatrekordok megtekintése a studióban című témakörben talál.
Metrikák diagramja: Ez a vizualizáció nyomon követi az egyes hyperdrive-gyermekfeladatokhoz naplózott metrikákat a hiperparaméter finomhangolásának időtartama alatt. Minden sor egy gyermekfeladatot jelöl, és minden pont a futtatókörnyezet adott iterációjában méri az elsődleges metrikaértéket.
Párhuzamos koordináták diagramja: Ez a vizualizáció az elsődleges metrika teljesítménye és az egyes hiperparaméter-értékek közötti korrelációt mutatja. A diagram interaktív a tengelyek mozgatásával (kattintson és húzza a tengely címkéje alapján), és az értékek egyetlen tengelyen való kiemelésével (kattintson és húzza függőlegesen egy tengely mentén a kívánt értékek egy tartományának kiemeléséhez). A párhuzamos koordináták diagramja a diagram jobb szélső részén található tengelyt tartalmazza, amely az adott feladatpéldányhoz beállított hiperparamétereknek megfelelő legjobb metrikaértéket ábrázolja. Ezt a tengelyt úgy biztosítjuk, hogy a diagram színátmeneti jelmagyarázatát olvashatóbb módon kivetítse az adatokra.
Kétdimenziós pontdiagram: Ez a vizualizáció megjeleníti a két egyedi hiperparaméter és a hozzájuk tartozó elsődleges metrikaérték közötti korrelációt.
3 dimenziós pontdiagram: Ez a vizualizáció megegyezik a 2D-vel, de lehetővé teszi az elsődleges metrikaértékkel való korreláció három hiperparaméter-dimenzióját. A diagramot kattintással és húzással is átrendezheti a különböző korrelációk 3D térben való megtekintéséhez.
A legjobb próbafeladat megkeresése
Miután az összes hiperparaméter-finomhangolási feladat befejeződött, kérje le a legjobb próbakimeneteket:
# Download best trial model output
ml_client.jobs.download(returned_sweep_job.name, output_name="model")
A parancssori felülettel letöltheti a legjobb próbafeladat összes alapértelmezett és nevesített kimenetét, valamint a takarítási feladat naplóit.
az ml job download --name <sweep-job> --all
Igény szerint csak a legjobb próbaverziós kimenet letöltéséhez
az ml job download --name <sweep-job> --output-name model