hyperdrive Pacote
Contém módulos e classes que dão suporte ao ajuste de hiperparâmetros.
Hiperparâmetros são parâmetros ajustáveis que você escolhe para treinamento do modelo e que orientam o processo de treinamento. O pacote HyperDrive ajuda a automatizar a escolha desses parâmetros. Por exemplo, você pode definir o espaço de pesquisa do parâmetro 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 de hiperparâmetro e minimizar ou maximizar essa métrica. Você também pode definir políticas de encerramento antecipado nas quais execuções de experimentos com desempenho insatisfatório são canceladas e novas são iniciadas. Para definir um fluxo de trabalho de machine learning reutilizável para o HyperDrive, use hyper_drive_step para criar um Pipeline.
Módulos
error_definition |
Definições de código de erro para o SDK 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 em 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 classe RandomParameterSampling, você pode optar por fazer a amostragem de um conjunto de valores discretos ou uma distribuição de valores contínuos. Nesse caso, você pode usar a função choice para gerar um conjunto discreto de valores e a função uniform para gerar uma distribuição de valores contínuos. Para obter exemplos de como usar essas funções, confira o tutorial: https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters. |
Classes
BanditPolicy |
Define uma política de encerramento antecipado com base nos critérios de margem de atraso e uma frequência e um intervalo de atraso para avaliação. Inicialize um BanditPolicy com o fator slack, slack_amount e 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 em como os exemplos anteriores foram executados, de modo que o novo exemplo melhora a métrica primária relatada. Inicializar BayesianParameterSampling. |
EarlyTerminationPolicy |
Classe base abstrata para todas as políticas de encerramento antecipado. Inicialize uma política de encerramento 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 de HyperDrive. A configuração do HyperDrive inclui informações sobre a amostragem de espaço de hiperparâmetros, a política de encerramento, a métrica primária, a retomada da configuração, o avaliador e o destino de computação no qual executar o experimento. Inicialize o HyperDriveConfig. |
HyperDriveRun |
O HyperDriveRun contém os detalhes de um experimento do HyperDrive enviado. Essa classe pode ser usada para gerenciar, verificar status e recuperar detalhes da execução do HyperDrive e cada uma das execuções filhas geradas. Inicializar uma execução do HyperDrive. |
HyperDriveRunConfig |
Configuração que define uma execução de HyperDrive. A configuração inclui informações sobre a amostragem do espaço de parâmetros, a política de encerramento, a métrica primária, o avaliador e o destino de computação no qual executar o experimento. 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, GridParameterSampling e RandomParameterSampling. Inicializar HyperParameterSampling. |
MedianStoppingPolicy |
Define uma política de encerramento 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 encerramento antecipado seja aplicada. Cada execução será realizada 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 encerramento 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âmetros. Uma meta de métrica é usada para determinar se um valor mais alto para uma métrica é melhor ou pior. 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 erros. O nome e a meta da métrica primária são especificados na classe HyperDriveConfig quando você configura uma execução do HyperDrive. |
Funções
choice
Especifique um conjunto discreto de opções entre as quais fazer a amostragem.
choice(*options)
Parâmetros
Nome | Description |
---|---|
options
Obrigatório
|
A lista de opções dentre as quais escolher. |
Retornos
Tipo | Description |
---|---|
A expressão estocástica. |
lognormal
Especifique um valor traçado 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 logarítmica uniforme.
Um valor é traçado conforme exp(uniform(min_value, max_value)), de modo 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 distribuído normalmente com sigma de desvio padrão e mu médio.
Ao otimizar, essa é uma variável irrestrita.
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 com relação à qual o objetivo é suave, e fica mais suave com o tamanho da variável, que é limitado 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
|
O fator de suavização. |
Retornos
Tipo | Description |
---|---|
A expressão estocástica. |
qloguniform
Especifique uma distribuição uniforme da forma round(exp(uniform(min_value, max_value) / q) * q.
Isso é adequado para uma variável discreta com relação à qual o objetivo é "suave", e fica mais suave com o tamanho do valor, mas que deve ser limitado para mais e menos.
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
|
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 próximo de mu, mas é fundamentalmente não limitada.
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
|
O fator de suavização. |
Retornos
Tipo | Description |
---|---|
A expressão estocástica. |
quniform
Especifique uma distribuição uniforme da forma 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 para mais e menos.
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
|
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 os valores inteiros mais distantes. Essa é uma distribuição apropriada para descrever sementes aleatórias, por exemplo. Se a função de perda é provavelmente mais correlacionada a valores inteiros próximos, você provavelmente deve usar uma das distribuições contínuas "quantizadas", como quniform, qloguniform, qnormal ou qlognormal.
randint(upper)
Parâmetros
Nome | Description |
---|---|
upper
Obrigatório
|
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 amostras são tiradas.
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. |