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 kontinuerligt, och en samplingsmetod över sökutrymmet som slumpmässigt, rutnät eller Bayesianskt. 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 experimentkörningar med dålig prestanda avbryts och nya startas. Om du vill definiera ett återanvändbart maskininlärningsarbetsflöde för HyperDrive använder du hyper_drive_step för att skapa en 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 hyperparametersökutrymme. Dessa funktioner används för att ange olika typer av hyperparameterdistributioner. Distributionerna definieras när du konfigurerar sampling för ett hyperparametersvepning. När du till exempel använder RandomParameterSampling klassen kan du välja att ta ett exempel 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 hyperparametersökutrymme. 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 hyperparametersökutrymme. Initiera GridParameterSampling. |
| HyperDriveConfig |
Konfiguration som definierar en HyperDrive-körning. HyperDrive-konfigurationen innehåller information om sampling av hyperparameterutrymme, avslutningsprincip, primärt mått, återuppta från konfiguration, uppskattning och beräkningsmålet som experimentet körs på. Initiera HyperDriveConfig. |
| HyperDriveRun |
HyperDriveRun innehåller information om ett inskickade 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äkningsmål och beräkningsmål 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 uppsägning tillämpas. Varje körning körs tills den har slutförts. Initiera NoTerminationPolicy. |
| RandomParameterSampling |
Definierar slumpmässig sampling över ett hyperparametersökutrymme. 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 vid jämförelse av körningar baserat på det primära måttet. Du kanske till exempel vill maximera noggrannheten eller minimera felet. Det primära måttnamnet och målet anges i HyperDriveConfig klassen när du konfigurerar en HyperDrive-körning. |
Funktioner
choice
lognormal
Ange ett värde som ritas enligt exp(normal(mu, sigma)).
Logaritmen för returvärdet distribueras normalt. När du optimerar är den här variabeln begränsad till att vara positiv.
lognormal(mu, sigma)
Parametrar
| Name | Description |
|---|---|
|
mu
Obligatorisk
|
Medelvärdet av 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 fördelas jämnt. 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 detta en obehindrat variabel.
normal(mu, sigma)
Parametrar
| Name | Description |
|---|---|
|
mu
Obligatorisk
|
Medelvärdet av den normala fördelningen. |
|
sigma
Obligatorisk
|
standardavvikelsen för den normala fö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 jämnare med storleken på variabeln, som avgränsas från ena sidan.
qlognormal(mu, sigma, q)
Parametrar
| Name | Description |
|---|---|
|
mu
Obligatorisk
|
Medelvärdet av 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äret round(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 (inklusive). |
|
max_value
Obligatorisk
|
Det maximala värdet i intervallet (inklusive). |
|
q
Obligatorisk
|
Utjämningsfaktorn. |
Returer
| Typ | Description |
|---|---|
|
Det stokastiska uttrycket. |
qnormal
Ange ett värde som round(normal(mu, sigma) / q) * q.
Lämplig 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 av 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äret round(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 (inklusive). |
|
max_value
Obligatorisk
|
Det maximala värdet i intervallet (inklusive). |
|
q
Obligatorisk
|
Utjämningsfaktorn. |
Returer
| Typ | Description |
|---|---|
|
Det stokastiska uttrycket. |
randint
Ange en uppsättning slumpmässiga heltal i intervallet [0, övre).
Semantiken i 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. Detta är en lämplig fördelning för att beskriva slumpmässiga frön till exempel. 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 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 prover 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. |