parameter_expressions Module

Définit des fonctions qui peuvent être utilisées dans Hyperdrive pour décrire un espace de recherche hyperparamétrique.

Ces fonctions sont utilisées pour spécifier différents types de distributions d’hyperparamètres. Les distributions sont définies lorsque vous configurez l’échantillonnage pour un balayage hyperparamétrique. Par exemple, lorsque vous utilisez la classe RandomParameterSampling, vous pouvez choisir d’échantillonner à partir d’un ensemble de valeurs discrètes ou d’une distribution de valeurs continues. Dans ce cas, vous pouvez utiliser la fonction choice pour générer un ensemble discret de valeurs et la fonction uniform pour générer une distribution de valeurs continues.

Pour obtenir des exemples d’utilisation de ces fonctions, consultez le didacticiel : https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters .

Fonctions

choice

Spécifiez un ensemble discret d’options à partir desquelles effectuer l’échantillonnage.

choice(*options)

Paramètres

options
list
Obligatoire

Liste d’options parmi lesquelles choisir.

Retours

Expression stochastique.

Type de retour

lognormal

Spécifiez une valeur obtenue d’après exp(normal(mu, sigma)).

Le logarithme de la valeur de retour présente une distribution normale. Au moment de l’optimisation, cette variable est restreinte pour être positive.

lognormal(mu, sigma)

Paramètres

mu
float
Obligatoire

Moyenne de la distribution normale.

sigma
float
Obligatoire

Écart type de la distribution normale.

Retours

Expression stochastique.

Type de retour

loguniform

Spécifiez une distribution uniforme des journaux.

Une valeur est calculée en fonction de exp(uniform(min_value, max_value)), de sorte que le logarithme de la valeur de retour présente une distribution uniforme. Au moment de l’optimisation, cette variable est restreinte à l’intervalle [exp(min_value), exp(max_value)]

loguniform(min_value, max_value)

Paramètres

min_value
float
Obligatoire

La valeur minimale de la plage sera exp(min_value) (incluse).

max_value
float
Obligatoire

La valeur maximale de la plage sera exp(max_value) (incluse).

Retours

Expression stochastique.

Type de retour

normal

Spécifiez une valeur réelle qui est normalement distribuée avec la moyenne mu et l’écart type sigma.

Au moment de l’optimisation, cette variable n’a aucune restriction.

normal(mu, sigma)

Paramètres

mu
float
Obligatoire

Moyenne de la distribution normale.

sigma
float
Obligatoire

Écart type de la distribution normale.

Retours

Expression stochastique.

Type de retour

qlognormal

Spécifiez une valeur comme round(exp(normal(mu, sigma)) / q) * q.

Convient pour une variable discrète par rapport à laquelle l’objectif est lissé et devient de plus en plus lisse à mesure qu’augmente la taille de la variable, qui est limitée d’un côté.

qlognormal(mu, sigma, q)

Paramètres

mu
float
Obligatoire

Moyenne de la distribution normale.

sigma
float
Obligatoire

Écart type de la distribution normale.

q
int
Obligatoire

Facteur de lissage.

Retours

Expression stochastique.

Type de retour

qloguniform

Spécifiez une distribution uniforme sous la forme round(exp(uniform(min_value, max_value) / q) * q.

Convient pour une variable discrète par rapport à laquelle l’objectif est « lissé », et devient de plus en plus lisse à mesure qu’augmente la taille de la valeur, mais qui doit être limitée à la fois au-dessus et au-dessous.

qloguniform(min_value, max_value, q)

Paramètres

min_value
float
Obligatoire

Valeur minimale de la plage (inclusive).

max_value
float
Obligatoire

Valeur maximale de la plage (inclusive).

q
int
Obligatoire

Facteur de lissage.

Retours

Expression stochastique.

Type de retour

qnormal

Spécifiez une valeur comme round(normal(mu, sigma) / q) * q.

Convient pour une variable discrète qui prend probablement une valeur autour de mu, mais qui est fondamentalement illimitée.

qnormal(mu, sigma, q)

Paramètres

mu
float
Obligatoire

Moyenne de la distribution normale.

sigma
float
Obligatoire

Écart type de la distribution normale.

q
int
Obligatoire

Facteur de lissage.

Retours

Expression stochastique.

Type de retour

quniform

Spécifiez une distribution uniforme sous la forme round(uniform(min_value, max_value) / q) * q.

Convient pour une valeur discrète par rapport à laquelle l’objectif est toujours relativement « lissé », mais qui doit être limitée à la fois au-dessus et au-dessous.

quniform(min_value, max_value, q)

Paramètres

min_value
float
Obligatoire

Valeur minimale de la plage (inclusive).

max_value
float
Obligatoire

Valeur maximale de la plage (inclusive).

q
int
Obligatoire

Facteur de lissage.

Retours

Expression stochastique.

Type de retour

randint

Spécifiez un ensemble d’entiers aléatoires dans la plage [0, upper).

La sémantique de cette distribution est telle qu’il n’y a plus de corrélation dans la fonction de perte entre les valeurs entières voisines, par rapport à des valeurs entières plus éloignées. Il s’agit d’une distribution appropriée pour décrire les seeds aléatoires, par exemple. Si la fonction de perte est davantage corrélée pour les valeurs entières voisines, vous devrez probablement utiliser l’une des distributions continues « quantifiées », telles que quniform, qloguniform, qnormal ou qlognormal.

randint(upper)

Paramètres

upper
int
Obligatoire

Limite supérieure exclusive pour la plage d’entiers.

Retours

Expression stochastique.

Type de retour

uniform

Spécifiez une distribution uniforme à partir de laquelle sont prélevés les échantillons.

uniform(min_value, max_value)

Paramètres

min_value
float
Obligatoire

Valeur minimale de la plage (inclusive).

max_value
float
Obligatoire

Valeur maximale de la plage (inclusive).

Retours

Expression stochastique.

Type de retour