hyperdrive Pacote

Contém módulos e classes que suportam a otimização de hiperparâmetros.

Os hiperparâmetros são parâmetros ajustáveis que escolhe para a preparação de modelos que orientam o processo de preparação. O pacote do HyperDrive ajuda-o a automatizar a escolha destes parâmetros. Por exemplo, pode definir o espaço de pesquisa de parâmetros como discreto ou contínuo e um método de amostragem sobre o espaço de pesquisa como aleatório, grelha ou bayesiano. Além disso, pode especificar uma métrica primária para otimizar na experimentação de otimização de hiperparâmetros e se pretende minimizar ou maximizar essa métrica. Também pode definir políticas de terminação antecipada em que as execuções de experimentação com mau desempenho são canceladas e as novas são iniciadas. Para definir um fluxo de trabalho de machine learning reutilizável para o HyperDrive, utilize hyper_drive_step para criar um Pipeline.

Módulos

error_definition

Definições de código de erro para o SDK do HyperDrive.

error_strings

Uma coleção de cadeias de erro utilizadas em todo o SDK do HyperDrive.

exceptions

Exceções emitidas pelo HyperDrive.

parameter_expressions

Define funções que podem ser utilizadas no HyperDrive para descrever um espaço de pesquisa de hiperparâmetros.

Estas funções são utilizadas para especificar diferentes tipos de distribuições de hiperparâmetros. As distribuições são definidas quando configura a amostragem para uma limpeza de hiperparâmetros. Por exemplo, quando utiliza a RandomParameterSampling classe, pode optar por amostrar a partir de um conjunto de valores discretos ou de uma distribuição de valores contínuos. Neste caso, pode utilizar a choice função para gerar um conjunto discreto de valores e uniform funções para gerar uma distribuição de valores contínuos.

Para obter exemplos de utilização destas funções, veja o tutorial: https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters.

Classes

BanditPolicy

Define uma política de cessação antecipada com base em critérios de margem e um intervalo de frequência e atraso para avaliação.

Inicialize um BanditPolicy com o fator slack, slack_amount e intervalo de avaliação.

BayesianParameterSampling

Define a amostragem bayesiana através de um espaço de pesquisa de hiperparâmetros.

A amostragem bayesiana tenta escolher de forma inteligente a próxima amostra de hiperparâmetros, com base na forma como os exemplos anteriores foram executados, de modo a que a nova amostra melhore a métrica primária reportada.

Inicialize BayesianParameterSampling.

EarlyTerminationPolicy

Classe base abstrata para todas as políticas de terminação antecipada.

Inicialize uma política de cessação antecipada.

GridParameterSampling

Define a amostragem de grelha através de um espaço de pesquisa de hiperparâmetros.

Inicializar GridParameterSampling.

HyperDriveConfig

Configuração que define uma execução do HyperDrive.

A configuração do HyperDrive inclui informações sobre a amostragem de espaço hiperparâmetros, a política de terminação, a métrica primária, o currículo da configuração, o avaliador e o destino de computação para executar as execuções da experimentação.

Inicialize o HyperDriveConfig.

HyperDriveRun

O HyperDriveRun contém os detalhes de uma experimentação do HyperDrive submetida.

Esta classe pode ser utilizada para gerir, verificar o estado e obter os detalhes de execução da execução do HyperDrive e cada uma das execuções subordinadas geradas.

Inicialize uma execução do HyperDrive.

HyperDriveRunConfig

Configuração que define uma execução do HyperDrive.

A configuração inclui informações sobre a amostragem de espaço de parâmetros, a política de terminação, a métrica primária, o avaliador e o destino de computação em que a experimentação é executada.

Inicialize o HyperDriveConfig.

HyperParameterSampling

Classe base abstrata para todos os algoritmos de amostragem de hiperparâmetros.

Esta classe encapsula o espaço do hiperparâmetros, o método de amostragem e as propriedades adicionais para classes de amostragem derivadas: BayesianParameterSampling, GridParameterSamplinge RandomParameterSampling.

Inicializar HyperParameterSampling.

MedianStoppingPolicy

Define uma política de terminação antecipada com base nas médias de execução da métrica primária de todas as execuções.

Inicialize uma MedianStoppingPolicy.

NoTerminationPolicy

Especifica que não é aplicada nenhuma política de cessação antecipada.

Cada execução será executada até à conclusão.

Inicialize NoTerminationPolicy.

RandomParameterSampling

Define a amostragem aleatória através de um espaço de pesquisa de hiperparâmetros.

Inicializar RandomParameterSampling.

TruncationSelectionPolicy

Define uma política de cessação antecipada que cancela uma determinada percentagem de execuções em cada intervalo de avaliação.

Inicialize uma TruncationSelectionPolicy.

Enumerações

PrimaryMetricGoal

Define os objetivos de métricas suportados para otimização de hiperparâmetros.

Um objetivo de métrica é utilizado para determinar se um valor mais elevado para uma métrica é melhor ou pior. Os objetivos de métricas são utilizados ao comparar execuções com base na métrica primária. Por exemplo, poderá querer maximizar a precisão ou minimizar o erro.

O nome e o objetivo da métrica principal são especificados na HyperDriveConfig classe quando configura uma execução do HyperDrive.

Funções

choice

Especifique um conjunto discreto de opções de exemplo.

choice(*options)

Parâmetros

Name Description
options
Necessário

A lista de opções à escolha.

Devoluções

Tipo Description

A expressão estocástica.

lognormal

Especifique um valor desenhado de acordo com exp(normal(mu, sigma)).

Normalmente, o logaritmo do valor devolvido é distribuído. Ao otimizar, esta variável é restrita para ser positiva.

lognormal(mu, sigma)

Parâmetros

Name Description
mu
Necessário

A média da distribuição normal.

sigma
Necessário

O desvio-padrão da distribuição normal.

Devoluções

Tipo Description

A expressão estocástica.

loguniform

Especifique uma distribuição uniforme de registo.

Um valor é desenhado de acordo com exp(uniform(min_value, max_value)) para que o logaritmo do valor devolvido seja distribuído uniformemente. Ao otimizar, esta variável é restrita ao intervalo [exp(min_value), exp(max_value)]

loguniform(min_value, max_value)

Parâmetros

Name Description
min_value
Necessário

O valor mínimo no intervalo será exp(min_value)(inclusive).

max_value
Necessário

O valor máximo no intervalo será exp(max_value) (inclusive).

Devoluções

Tipo Description

A expressão estocástica.

normal

Especifique um valor real distribuído normalmente com mu médio e sigma de desvio padrão.

Ao otimizar, trata-se de uma variável sem restrições.

normal(mu, sigma)

Parâmetros

Name Description
mu
Necessário

A média da distribuição normal.

sigma
Necessário

o desvio-padrão da distribuição normal.

Devoluções

Tipo Description

A expressão estocástica.

qlognormal

Especifique um valor como round(exp(normal(mu, sigma)) / q) * q.

Adequado para uma variável discreta relativamente à qual o objetivo é suave e fica mais suave com o tamanho da variável, que está vinculada de um lado.

qlognormal(mu, sigma, q)

Parâmetros

Name Description
mu
Necessário

A média da distribuição normal.

sigma
Necessário

O desvio-padrão da distribuição normal.

q
Necessário
int

O fator de suavidade.

Devoluções

Tipo Description

A expressão estocástica.

qloguniform

Especifique uma distribuição uniforme do formulário round(exp(uniform(min_value, max_value) /q) * q.

Isto é adequado para uma variável discreta relativamente à qual o objetivo é "suave" e fica mais suave com o tamanho do valor, mas que deve ser vinculado tanto acima como abaixo.

qloguniform(min_value, max_value, q)

Parâmetros

Name Description
min_value
Necessário

O valor mínimo no intervalo (inclusive).

max_value
Necessário

O valor máximo no intervalo (inclusive).

q
Necessário
int

O fator de suavidade.

Devoluções

Tipo Description

A expressão estocástica.

qnormal

Especifique um valor como round(normal(mu, sigma) / q) * q.

Adequado para uma variável discreta que provavelmente assume um valor em torno de mu, mas é fundamentalmente desvinculado.

qnormal(mu, sigma, q)

Parâmetros

Name Description
mu
Necessário

A média da distribuição normal.

sigma
Necessário

O desvio-padrão da distribuição normal.

q
Necessário
int

O fator de suavidade.

Devoluções

Tipo Description

A expressão estocástica.

quniform

Especifique uma distribuição uniforme do formulário round(uniform(min_value, max_value) /q) * q.

Isto é adequado para um valor discreto em relação ao qual o objetivo ainda é um pouco "suave", mas que deve ser vinculado tanto acima como abaixo.

quniform(min_value, max_value, q)

Parâmetros

Name Description
min_value
Necessário

O valor mínimo no intervalo (inclusive).

max_value
Necessário

O valor máximo no intervalo (inclusive).

q
Necessário
int

O fator de suavidade.

Devoluções

Tipo Description

A expressão estocástica.

randint

Especifique um conjunto de números inteiros aleatórios no intervalo [0, superior).

A semântica desta distribuição é que não existe mais correlação na função de perda entre valores inteiros próximos, em comparação com valores inteiros mais distantes. Esta é uma distribuição adequada para descrever sementes aleatórias, por exemplo. Se a função de perda estiver provavelmente mais correlacionada com os valores inteiros próximos, provavelmente deve utilizar uma das distribuições contínuas "quantizadas", como quniform, qloguniform, qnormal ou qlognormal.

randint(upper)

Parâmetros

Name Description
upper
Necessário
int

O limite superior exclusivo para o intervalo de números inteiros.

Devoluções

Tipo Description

A expressão estocástica.

uniform

Especifique uma distribuição uniforme a partir da qual são recolhidas amostras.

uniform(min_value, max_value)

Parâmetros

Name Description
min_value
Necessário

O valor mínimo no intervalo (inclusive).

max_value
Necessário

O valor máximo no intervalo (inclusive).

Devoluções

Tipo Description

A expressão estocástica.