Compartilhar via


HyperDriveConfig Classe

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.

Herança
builtins.object
HyperDriveConfig

Construtor

HyperDriveConfig(hyperparameter_sampling, primary_metric_name, primary_metric_goal, max_total_runs, max_concurrent_runs=None, max_duration_minutes=10080, policy=None, estimator=None, run_config=None, resume_from=None, resume_child_runs=None, pipeline=None, debug_flag=None, custom_run_id=None)

Parâmetros

Nome Description
estimator

Um avaliador que será chamado com hiperparâmetros da amostra. Especifique apenas um dos seguintes parâmetros: estimator, run_config ou pipeline.

Valor padrão: None
hyperparameter_sampling
Obrigatório

O espaço de amostragem do hiperparâmetro.

policy

A política de término antecipado a ser usada. Se for None – o padrão, nenhuma política de encerramento antecipado será usada.

A MedianStoppingPolicy com delay_evaluation de 5 é uma boa política de encerramento para começar. Essas são configurações conservadoras, que podem fornecer 25 a 35% de economia sem perda na métrica primária (com base nos dados de nossa avaliação).

Valor padrão: None
primary_metric_name
Obrigatório
str

O nome da métrica primária informada pelas execuções do experimento.

primary_metric_goal
Obrigatório

PrimaryMetricGoal.MINIMIZE ou PrimaryMetricGoal.MAXIMIZE. Esse parâmetro determina se a métrica primária deve ser minimizada ou maximizada durante a avaliação de execuções.

max_total_runs
Obrigatório
int

O número total máximo de execuções a serem criadas. Este é o limite superior; pode haver menos execuções quando o espaço de exemplo é menor que esse valor. Se tanto max_total_runs quanto max_duration_minutes forem especificados, o experimento de ajuste de hiperparâmetro será encerrado quando o primeiro dos dois desses limites for atingido.

max_concurrent_runs
int

O número máximo de execuções que podem ser feitas simultaneamente. Se for None, todas as execuções serão lançadas em paralelo. O número de execuções simultâneas é ligado aos recursos disponíveis no destino de computação especificado. Portanto, você precisará garantir que o destino de computação tenha os recursos disponíveis para a simultaneidade desejada.

Valor padrão: None
max_duration_minutes
int

A duração máxima da execução do HyperDrive. Quando esse tempo for excedido, todas as execuções que ainda estiverem sendo executadas serão canceladas. Se tanto max_total_runs quanto max_duration_minutes forem especificados, o experimento de ajuste de hiperparâmetro será encerrado quando o primeiro dos dois desses limites for atingido.

Valor padrão: 10080
resume_from

Uma execução de hiperdrive ou uma lista de execuções de hiperdrive que serão herdadas como pontos de dados para iniciar a nova execução.

Valor padrão: None
resume_child_runs
Run ou list[Run]

Uma execução filho de hiperdrive ou uma lista de execuções filho de hiperdrive que serão retomadas como novas execuções filho da nova execução de hiperdrive.

Valor padrão: None
run_config

Um objeto para definir a configuração de execuções de script/notebook. Especifique apenas um dos seguintes parâmetros: estimator, run_config ou pipeline.

Valor padrão: None
pipeline

Um objeto de pipeline para definir a configuração para as execuções de pipeline. O objeto de pipeline será chamado com os hiperparâmetros de amostra para enviar execuções de pipeline. Especifique apenas um dos seguintes parâmetros: estimator, run_config ou pipeline.

Valor padrão: None
custom_run_id
str

ID de execução personalizada fornecida pelo usuário

Valor padrão: None
hyperparameter_sampling
Obrigatório

A definição de amostragem de espaço de hiperparâmetro.

primary_metric_name
Obrigatório
str

O nome da métrica primária informada pelas execuções do experimento.

primary_metric_goal
Obrigatório

PrimaryMetricGoal.MINIMIZE ou PrimaryMetricGoal.MAXIMIZE. Esse parâmetro determina se a métrica primária deve ser minimizada ou maximizada durante a avaliação de execuções.

max_total_runs
Obrigatório
int

O número total máximo de execuções a serem criadas. Este é o limite superior; pode haver menos execuções quando o espaço de exemplo é menor que esse valor.

max_concurrent_runs
Obrigatório
int

O número máximo de execuções que podem ser feitas simultaneamente. Se for None, todas as execuções serão lançadas em paralelo.

max_duration_minutes
Obrigatório
int

A duração máxima da execução do HyperDrive. Quando esse tempo for excedido, todas as execuções que ainda estiverem sendo executadas serão canceladas.

policy
Obrigatório

A política de término antecipado a ser usada. Se for None – o padrão, nenhuma política de encerramento antecipado será usada.

A <xref:azureml.train.hyperdrive.MedianTerminationPolicy> com delay_evaluation de 5 é uma boa política de encerramento para começar. Essas são configurações conservadoras, que podem fornecer 25 a 35% de economia sem perda na métrica primária (com base nos dados de nossa avaliação).

estimator
Obrigatório

Um avaliador que será chamado com hiperparâmetros da amostra. Especifique apenas um dos seguintes parâmetros: estimator, run_config ou pipeline.

run_config
Obrigatório

Um objeto para definir a configuração de execuções de script/notebook. Especifique apenas um dos seguintes parâmetros: estimator, run_config ou pipeline.

resume_from
Obrigatório

Uma execução de hiperdrive ou uma lista de execuções de hiperdrive que serão herdadas como pontos de dados para iniciar a nova execução.

resume_child_runs
Obrigatório
Run | list[Run]

Uma execução filho de hiperdrive ou uma lista de execuções filho de hiperdrive que serão retomadas como novas execuções filho da nova execução de hiperdrive.

pipeline
Obrigatório

Um objeto de pipeline para definir a configuração para as execuções de pipeline. O objeto de pipeline será chamado com os hiperparâmetros de amostra para enviar execuções de pipeline. Especifique apenas um dos seguintes parâmetros: estimator, run_config ou pipeline.

custom_run_id
Obrigatório
str

ID de execução personalizada fornecida pelo usuário

debug_flag
Valor padrão: None

Comentários

O exemplo abaixo mostra a criação de um objeto HyperDriveConfig a ser usado para ajuste de hiperparâmetros. No exemplo, o nome da métrica primária corresponde a um valor registrado no script de treinamento.


   hd_config = HyperDriveConfig(run_config=src,
                    hyperparameter_sampling=ps,
                    policy=early_termination_policy,
                    primary_metric_name='validation_acc',
                    primary_metric_goal=PrimaryMetricGoal.MAXIMIZE,
                    max_total_runs=4,
                    max_concurrent_runs=4)

Para obter mais informações sobre como trabalhar com HyperDriveConfig, consulte o tutorial Ajustar hiperparâmetros para o seu modelo.

Atributos

estimator

Retornar o avaliador usado na execução do HyperDrive.

O valor será None se a execução usar uma configuração de execução de script ou um pipeline.

Retornos

Tipo Description

O avaliador.

pipeline

Retornar o pipeline usado na execução do HyperDrive.

O valor será None se a execução usar uma configuração de execução de script ou um avaliador.

Retornos

Tipo Description

O pipeline.

run_config

Retornar a configuração de script/notebook usada na execução do HyperDrive.

O valor será None se a execução usar um avaliador ou um pipeline.

Retornos

Tipo Description

A configuração de execução.

source_directory

Retornar o diretório de origem da configuração para execução.

Retornos

Tipo Description
str

O diretório de origem