Compartilhar via


hyperdrive Pacote

Contém módulos e classes que dão suporte ao ajuste de hiperparâmetro.

Hiperparâmetros são parâmetros ajustáveis que você escolhe para treinamento de modelo que orientam o processo de treinamento. O pacote do HyperDrive ajuda você a automatizar a escolha desses parâmetros. Por exemplo, você 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, grade ou bayesiano. Além disso, você pode especificar uma métrica primária para otimizar no experimento de ajuste do hiperparâmetro e se deseja minimizar ou maximizar essa métrica. Você também pode definir políticas de término antecipado nas quais as execuções de experimento com baixo desempenho são canceladas e novas iniciadas. Para definir um fluxo de trabalho de machine learning reutilizável para HyperDrive, use 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 caracteres de erro usadas em todo o SDK do HyperDrive.

exceptions

Exceções geradas pelo HyperDrive.

parameter_expressions

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

Essas funções são usadas para especificar diferentes tipos de distribuições de hiperparâmetro. As distribuições são definidas quando você configura a amostragem para uma varredura de hiperparâmetro. Por exemplo, ao usar a RandomParameterSampling classe, você pode optar por amostrar de um conjunto de valores discretos ou uma distribuição de valores contínuos. Nesse caso, você pode usar a choice função para gerar um conjunto discreto de valores e uniform função para gerar uma distribuição de valores contínuos.

Para obter exemplos de como usar essas funções, consulte o tutorial: https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters.

Classes

BanditPolicy

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

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

BayesianParameterSampling

Define a amostragem bayesiana em um espaço de pesquisa de hiperparâmetro.

A amostragem bayesiana tenta escolher de forma inteligente a próxima amostra de hiperparâmetros, com base no desempenho dos exemplos anteriores, de modo que o novo exemplo melhore a métrica primária relatada.

Inicialize BayesianParameterSampling.

EarlyTerminationPolicy

Classe base abstrata para todas as políticas de término antecipado.

Inicialize uma política de término antecipado.

GridParameterSampling

Define a amostragem de grade em um espaço de pesquisa de hiperparâmetro.

Inicializar GridParameterSampling.

HyperDriveConfig

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

A configuração do HyperDrive inclui informações sobre amostragem de espaço de hiperparâmetro, política de encerramento, métrica primária, retomada da configuração, estimativa e o destino de computação em que executar o experimento será executado.

Inicialize o HyperDriveConfig.

HyperDriveRun

O HyperDriveRun contém os detalhes de um experimento do HyperDrive enviado.

Essa classe pode ser usada para gerenciar, verificar o status e recuperar detalhes de execução para a execução do HyperDrive e cada uma das execuções filho geradas.

Inicializar uma execução do HyperDrive.

HyperDriveRunConfig

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

A configuração inclui informações sobre amostragem de espaço de parâmetro, política de encerramento, métrica primária, avaliador e o destino de computação no qual executar o experimento é executado.

Inicialize o HyperDriveConfig.

HyperParameterSampling

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

Essa classe encapsula o espaço do hiperparâmetro, 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 término antecipado com base nas médias de execução da métrica primária de todas as execuções.

Inicializar um MedianStoppingPolicy.

NoTerminationPolicy

Especifica que nenhuma política de término antecipado é aplicada.

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

Inicializar NoTerminationPolicy.

RandomParameterSampling

Define a amostragem aleatória em um espaço de pesquisa de hiperparâmetro.

Inicializar RandomParameterSampling.

TruncationSelectionPolicy

Define uma política de término antecipado que cancela um determinado percentual de execuções em cada intervalo de avaliação.

Inicialize um TruncationSelectionPolicy.

Enumerações

PrimaryMetricGoal

Define as metas de métrica com suporte para ajuste de hiperparâmetro.

Uma meta de métrica é usada para determinar se um valor mais alto para uma métrica é melhor ou pior. As metas de métrica são usadas ao comparar execuções com base na métrica primária. Por exemplo, talvez você queira maximizar a precisão ou minimizar o erro.

O nome da métrica primária e a meta são especificados na HyperDriveConfig classe quando você configura uma execução do HyperDrive.

Funções

choice

Especifique um conjunto discreto de opções a serem amostradas.

choice(*options)

Parâmetros

Nome Description
options
Obrigatório

A lista de opções a serem escolhidas.

Retornos

Tipo Description

A expressão estocástica.

lognormal

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

O logaritmo do valor retornado normalmente é distribuído. Ao otimizar, essa variável é restrita para ser positiva.

lognormal(mu, sigma)

Parâmetros

Nome Description
mu
Obrigatório

A média da distribuição normal.

sigma
Obrigatório

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

Retornos

Tipo Description

A expressão estocástica.

loguniform

Especifique uma distribuição uniforme de log.

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

loguniform(min_value, max_value)

Parâmetros

Nome Description
min_value
Obrigatório

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

max_value
Obrigatório

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

Retornos

Tipo Description

A expressão estocástica.

normal

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

Ao otimizar, essa é uma variável sem restrições.

normal(mu, sigma)

Parâmetros

Nome Description
mu
Obrigatório

A média da distribuição normal.

sigma
Obrigatório

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

Retornos

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 em relação à qual o objetivo é suave e fica mais suave com o tamanho da variável, que é delimitada de um lado.

qlognormal(mu, sigma, q)

Parâmetros

Nome Description
mu
Obrigatório

A média da distribuição normal.

sigma
Obrigatório

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

q
Obrigatório
int

O fator de suavização.

Retornos

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.

Isso é adequado para uma variável discreta em relação à qual o objetivo é "suave" e fica mais suave com o tamanho do valor, mas que deve ser delimitado acima e abaixo.

qloguniform(min_value, max_value, q)

Parâmetros

Nome Description
min_value
Obrigatório

O valor mínimo no intervalo (inclusive).

max_value
Obrigatório

O valor mínimo no intervalo (inclusive).

q
Obrigatório
int

O fator de suavização.

Retornos

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 usa um valor em torno de mu, mas é fundamentalmente não associado.

qnormal(mu, sigma, q)

Parâmetros

Nome Description
mu
Obrigatório

A média da distribuição normal.

sigma
Obrigatório

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

q
Obrigatório
int

O fator de suavização.

Retornos

Tipo Description

A expressão estocástica.

quniform

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

Isso é adequado para um valor discreto em relação ao qual o objetivo ainda é um pouco "suave", mas que deve ser limitado acima e abaixo.

quniform(min_value, max_value, q)

Parâmetros

Nome Description
min_value
Obrigatório

O valor mínimo no intervalo (inclusive).

max_value
Obrigatório

O valor mínimo no intervalo (inclusive).

q
Obrigatório
int

O fator de suavização.

Retornos

Tipo Description

A expressão estocástica.

randint

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

A semântica dessa distribuição é que não há mais correlação na função de perda entre valores inteiros próximos, em comparação com valores inteiros mais distantes. Essa é uma distribuição apropriada para descrever sementes aleatórias, por exemplo. Se a função de perda provavelmente estiver mais correlacionada para valores inteiros próximos, você provavelmente deverá usar uma das distribuições contínuas "quantizadas", como quniform, qloguniform, qnormal ou qlognormal.

randint(upper)

Parâmetros

Nome Description
upper
Obrigatório
int

O limite superior exclusivo para o intervalo de inteiros.

Retornos

Tipo Description

A expressão estocástica.

uniform

Especifique uma distribuição uniforme da qual os exemplos são obtidos.

uniform(min_value, max_value)

Parâmetros

Nome Description
min_value
Obrigatório

O valor mínimo no intervalo (inclusive).

max_value
Obrigatório

O valor mínimo no intervalo (inclusive).

Retornos

Tipo Description

A expressão estocástica.