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 .

Functions

choice

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

choice(*options)

Paramètres

Nom Description
options
Obligatoire

Liste d’options parmi lesquelles choisir.

Retours

Type Description

Expression stochastique.

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

Nom Description
mu
Obligatoire

Moyenne de la distribution normale.

sigma
Obligatoire

Écart type de la distribution normale.

Retours

Type Description

Expression stochastique.

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

Nom Description
min_value
Obligatoire

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

max_value
Obligatoire

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

Retours

Type Description

Expression stochastique.

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

Nom Description
mu
Obligatoire

Moyenne de la distribution normale.

sigma
Obligatoire

Écart type de la distribution normale.

Retours

Type Description

Expression stochastique.

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

Nom Description
mu
Obligatoire

Moyenne de la distribution normale.

sigma
Obligatoire

Écart type de la distribution normale.

q
Obligatoire
int

Facteur de lissage.

Retours

Type Description

Expression stochastique.

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

Nom Description
min_value
Obligatoire

Valeur minimale de la plage (inclusive).

max_value
Obligatoire

Valeur maximale de la plage (inclusive).

q
Obligatoire
int

Facteur de lissage.

Retours

Type Description

Expression stochastique.

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

Nom Description
mu
Obligatoire

Moyenne de la distribution normale.

sigma
Obligatoire

Écart type de la distribution normale.

q
Obligatoire
int

Facteur de lissage.

Retours

Type Description

Expression stochastique.

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

Nom Description
min_value
Obligatoire

Valeur minimale de la plage (inclusive).

max_value
Obligatoire

Valeur maximale de la plage (inclusive).

q
Obligatoire
int

Facteur de lissage.

Retours

Type Description

Expression stochastique.

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

Nom Description
upper
Obligatoire
int

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

Retours

Type Description

Expression stochastique.

uniform

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

uniform(min_value, max_value)

Paramètres

Nom Description
min_value
Obligatoire

Valeur minimale de la plage (inclusive).

max_value
Obligatoire

Valeur maximale de la plage (inclusive).

Retours

Type Description

Expression stochastique.