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
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
|
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
|
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
|
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
|
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
|
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. |