hyperdrive Paket
Innehåller moduler och klasser som stöder justering av hyperparametrar.
Hyperparametrar är justerbara parametrar som du väljer för modellträning som vägleder träningsprocessen. HyperDrive-paketet hjälper dig att automatisera valet av dessa parametrar. Du kan till exempel definiera parameterns sökutrymme som diskret eller kontinuerlig, och en samplingsmetod över sökområdet som slumpmässigt, rutnät eller Bayesian. Du kan också ange ett primärt mått för att optimera i hyperparameterjusteringsexperimentet och om du vill minimera eller maximera måttet. Du kan också definiera principer för tidig avslutning där dåligt utförda experimentkörningar avbryts och nya startas. Om du vill definiera ett återanvändbart arbetsflöde för maskininlärning för HyperDrive använder du hyper_drive_step för att skapa ett Pipeline.
Moduler
error_definition |
Felkodsdefinitioner för HyperDrive SDK. |
error_strings |
En samling felsträngar som används i HyperDrive SDK. |
exceptions |
Undantag som utlöses av HyperDrive. |
parameter_expressions |
Definierar funktioner som kan användas i HyperDrive för att beskriva ett sökutrymme för hyperparametrar. Dessa funktioner används för att ange olika typer av hyperparameterdistributioner. Distributionerna definieras när du konfigurerar sampling för en hyperparameterrensning. När du till exempel använder RandomParameterSampling klassen kan du välja att prova från en uppsättning diskreta värden eller en fördelning av kontinuerliga värden. I det här fallet kan du använda choice funktionen för att generera en diskret uppsättning värden och uniform funktioner för att generera en fördelning av kontinuerliga värden. Exempel på hur du använder dessa funktioner finns i självstudien: https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters. |
Klasser
BanditPolicy |
Definierar en princip för tidig avslutning baserat på slack-kriterier och ett frekvens- och fördröjningsintervall för utvärdering. Initiera en BanditPolicy med slackfaktor, slack_amount och utvärderingsintervall. |
BayesianParameterSampling |
Definierar Bayesiansk sampling över ett sökutrymme för hyperparametrar. Bayesiansk sampling försöker på ett intelligent sätt välja nästa exempel på hyperparametrar, baserat på hur de tidigare exemplen utfördes, så att det nya exemplet förbättrar det rapporterade primära måttet. Initiera BayesianParameterSampling. |
EarlyTerminationPolicy |
Abstrakt basklass för alla principer för tidig avslutning. Initiera en princip för tidig avslutning. |
GridParameterSampling |
Definierar rutnätssampling över ett sökutrymme för hyperparametrar. Initiera GridParameterSampling. |
HyperDriveConfig |
Konfiguration som definierar en HyperDrive-körning. HyperDrive-konfigurationen innehåller information om sampling av hyperparameterutrymme, avslutningsprincip, primärt mått, återupptagning från konfiguration, beräkningsmål och beräkningsmålet som experimentet körs på. Initiera HyperDriveConfig. |
HyperDriveRun |
HyperDriveRun innehåller information om ett skickat HyperDrive-experiment. Den här klassen kan användas för att hantera, kontrollera status och hämta körningsinformation för HyperDrive-körningen och var och en av de genererade underordnade körningarna. Initiera en HyperDrive-körning. |
HyperDriveRunConfig |
Konfiguration som definierar en HyperDrive-körning. Konfigurationen innehåller information om sampling av parameterutrymme, avslutningsprincip, primärt mått, beräknare och beräkningsmålet som experimentet körs på. Initiera HyperDriveConfig. |
HyperParameterSampling |
Abstrakt basklass för alla algoritmer för hyperparametersampling. Den här klassen kapslar in hyperparameterutrymmet, samplingsmetoden och ytterligare egenskaper för härledda samplingsklasser: BayesianParameterSampling, GridParameterSamplingoch RandomParameterSampling. Initiera HyperParameterSampling. |
MedianStoppingPolicy |
Definierar en princip för tidig avslutning baserat på löpande medelvärden för det primära måttet för alla körningar. Initiera en MedianStoppingPolicy. |
NoTerminationPolicy |
Anger att ingen princip för tidig avslutning tillämpas. Varje körning körs tills den har slutförts. Initiera NoTerminationPolicy. |
RandomParameterSampling |
Definierar slumpmässig sampling över ett sökutrymme för hyperparametrar. Initiera RandomParameterSampling. |
TruncationSelectionPolicy |
Definierar en princip för tidig avslutning som avbryter en viss procentandel körningar vid varje utvärderingsintervall. Initiera en TruncationSelectionPolicy. |
Uppräkningar
PrimaryMetricGoal |
Definierar måttmål som stöds för justering av hyperparametrar. Ett måttmål används för att avgöra om ett högre värde för ett mått är bättre eller sämre. Måttmål används när du jämför körningar baserat på det primära måttet. Du kanske till exempel vill maximera noggrannheten eller minimera fel. Det primära måttnamnet och målet anges i HyperDriveConfig klassen när du konfigurerar en HyperDrive-körning. |
Funktioner
choice
Ange en diskret uppsättning alternativ att prova från.
choice(*options)
Parametrar
Name | Description |
---|---|
options
Obligatorisk
|
Listan över alternativ att välja mellan. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
lognormal
Ange ett värde som ritas enligt exp(normal(mu, sigma)).
Logaritmen för returvärdet distribueras normalt. När du optimerar begränsas den här variabeln till att vara positiv.
lognormal(mu, sigma)
Parametrar
Name | Description |
---|---|
mu
Obligatorisk
|
Medelvärdet för den normala fördelningen. |
sigma
Obligatorisk
|
Standardavvikelsen för den normala fördelningen. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
loguniform
Ange en enhetlig loggdistribution.
Ett värde ritas enligt exp(uniform(min_value, max_value)) så att logaritmen för returvärdet distribueras enhetligt. När du optimerar begränsas den här variabeln till intervallet [exp(min_value), exp(max_value)]
loguniform(min_value, max_value)
Parametrar
Name | Description |
---|---|
min_value
Obligatorisk
|
Minimivärdet i intervallet är exp(min_value)(inclusive). |
max_value
Obligatorisk
|
Det maximala värdet i intervallet är exp(max_value) (inklusive). |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
normal
Ange ett verkligt värde som normalt distribueras med medelvärdet mu och standardavvikelse sigma.
När du optimerar är det här en obegränsad variabel.
normal(mu, sigma)
Parametrar
Name | Description |
---|---|
mu
Obligatorisk
|
Medelvärdet för den normala fördelningen. |
sigma
Obligatorisk
|
standardavvikelsen för normalfördelningen. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
qlognormal
Ange ett värde som round(exp(normal(mu, sigma)) / q) * q.
Lämplig för en diskret variabel med avseende på vilken målet är smidigt och blir smidigare med storleken på variabeln, som avgränsas från ena sidan.
qlognormal(mu, sigma, q)
Parametrar
Name | Description |
---|---|
mu
Obligatorisk
|
Medelvärdet för den normala fördelningen. |
sigma
Obligatorisk
|
Standardavvikelsen för den normala fördelningen. |
q
Obligatorisk
|
Utjämningsfaktorn. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
qloguniform
Ange en enhetlig fördelning av formulärrundan(exp(uniform(min_value, max_value) / q) * q.
Detta är lämpligt för en diskret variabel med avseende på vilken målet är "smidigt" och blir jämnare med värdets storlek, men som bör begränsas både över och under.
qloguniform(min_value, max_value, q)
Parametrar
Name | Description |
---|---|
min_value
Obligatorisk
|
Minimivärdet i intervallet (inklusivt). |
max_value
Obligatorisk
|
Det maximala värdet i intervallet (inklusivt). |
q
Obligatorisk
|
Utjämningsfaktorn. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
qnormal
Ange ett värde som round(normal(mu, sigma) / q) * q.
Passar för en diskret variabel som förmodligen tar ett värde runt mu, men som i grunden är obundna.
qnormal(mu, sigma, q)
Parametrar
Name | Description |
---|---|
mu
Obligatorisk
|
Medelvärdet för den normala fördelningen. |
sigma
Obligatorisk
|
Standardavvikelsen för den normala fördelningen. |
q
Obligatorisk
|
Utjämningsfaktorn. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
quniform
Ange en enhetlig fördelning av formulärrundan(uniform(min_value, max_value) /q) * q.
Detta är lämpligt för ett diskret värde med avseende på vilket målet fortfarande är något "smidigt", men som bör begränsas både över och under.
quniform(min_value, max_value, q)
Parametrar
Name | Description |
---|---|
min_value
Obligatorisk
|
Minimivärdet i intervallet (inklusivt). |
max_value
Obligatorisk
|
Det maximala värdet i intervallet (inklusivt). |
q
Obligatorisk
|
Utjämningsfaktorn. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
randint
Ange en uppsättning slumpmässiga heltal i intervallet [0, övre).
Semantiken för den här fördelningen är att det inte finns någon mer korrelation i förlustfunktionen mellan närliggande heltalsvärden, jämfört med mer avlägsna heltalsvärden. Det här är en lämplig fördelning för att till exempel beskriva slumpmässiga frön. Om förlustfunktionen förmodligen är mer korrelerad för närliggande heltalsvärden bör du förmodligen använda en av de "kvantiserade" kontinuerliga distributionerna, till exempel antingen quniform, qloguniform, qnormal eller qlognormal.
randint(upper)
Parametrar
Name | Description |
---|---|
upper
Obligatorisk
|
Den exklusiva övre gränsen för heltalsintervallet. |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |
uniform
Ange en enhetlig fördelning från vilken exempel tas.
uniform(min_value, max_value)
Parametrar
Name | Description |
---|---|
min_value
Obligatorisk
|
Minimivärdet i intervallet (inklusive). |
max_value
Obligatorisk
|
Det maximala värdet i intervallet (inklusive). |
Returer
Typ | Description |
---|---|
Det stokastiska uttrycket. |