Partilhar via


HyperDriveConfig Classe

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.

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

Name Description
estimator

Um avaliador que será chamado com hiperparâmetros de exemplo. Especifique apenas um dos seguintes parâmetros: estimator, run_configou pipeline.

valor predefinido: None
hyperparameter_sampling
Necessário

O espaço de amostragem do hiperparâmetros.

policy

A política de cessação antecipada a utilizar. Se Nenhuma – a predefinição, não será utilizada nenhuma política de cessação antecipada.

A MedianStoppingPolicy com delay_evaluation 5 é uma boa política de cessação para começar. Estas são definições conservadoras, que podem proporcionar poupanças de 25%-35% sem perdas na métrica primária (com base nos nossos dados de avaliação).

valor predefinido: None
primary_metric_name
Necessário
str

O nome da métrica primária comunicada pelas execuções da experimentação.

primary_metric_goal
Necessário

PrimaryMetricGoal.MINIMIZE ou PrimaryMetricGoal.MAXIMIZE. Este parâmetro determina se a métrica primária deve ser minimizada ou maximizada ao avaliar as execuções.

max_total_runs
Necessário
int

O número total máximo de execuções a criar. Este é o limite superior; pode haver menos execuções quando o espaço de exemplo é menor do que este valor. Se ambos e max_total_runsmax_duration_minutes forem especificados, a experimentação de otimização de hiperparâmetros termina quando o primeiro destes dois limiares é atingido.

max_concurrent_runs
int

O número máximo de execuções a executar em simultâneo. Se Nenhuma, todas as execuções são iniciadas em paralelo. O número de execuções simultâneas é fechado nos recursos disponíveis no destino de computação especificado. Assim, tem de garantir que o destino de computação tem os recursos disponíveis para a simultaneidade pretendida.

valor predefinido: None
max_duration_minutes
int

A duração máxima da execução do HyperDrive. Assim que esta hora for excedida, todas as execuções ainda em execução são canceladas. Se ambos e max_total_runsmax_duration_minutes forem especificados, a experimentação de otimização de hiperparâmetros termina quando o primeiro destes dois limiares é atingido.

valor predefinido: 10080
resume_from

Uma execução do hyperdrive ou uma lista de execuções do hyperdrive que serão herdadas como pontos de dados para aquecer o início da nova execução.

valor predefinido: None
resume_child_runs
Run ou list[Run]

Uma execução subordinada do hyperdrive ou uma lista de execuções subordinadas do hyperdrive que serão retomadas à medida que forem executadas novas execuções subordinadas da nova execução do hyperdrive.

valor predefinido: None
run_config

Um objeto para configurar a configuração para execuções de scripts/blocos de notas. Especifique apenas um dos seguintes parâmetros: estimator, run_configou pipeline.

valor predefinido: None
pipeline

Um objeto de pipeline para configurar a configuração para execuções de pipelines. O objeto de pipeline será chamado com os hiperparâmetros de exemplo para submeter execuções de pipeline. Especifique apenas um dos seguintes parâmetros: estimator, run_configou pipeline.

valor predefinido: None
custom_run_id
str

ID de execução personalizado fornecido pelo utilizador

valor predefinido: None
hyperparameter_sampling
Necessário

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

primary_metric_name
Necessário
str

O nome da métrica primária comunicada pelas execuções da experimentação.

primary_metric_goal
Necessário

PrimaryMetricGoal.MINIMIZE ou PrimaryMetricGoal.MAXIMIZE. Este parâmetro determina se a métrica primária deve ser minimizada ou maximizada ao avaliar as execuções.

max_total_runs
Necessário
int

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

max_concurrent_runs
Necessário
int

O número máximo de execuções a executar em simultâneo. Se Nenhuma, todas as execuções são iniciadas em paralelo.

max_duration_minutes
Necessário
int

A duração máxima da execução do HyperDrive. Assim que esta hora for excedida, todas as execuções ainda em execução são canceladas.

policy
Necessário

A política de cessação antecipada a utilizar. Se Nenhuma – a predefinição, não será utilizada nenhuma política de cessação antecipada.

A <xref:azureml.train.hyperdrive.MedianTerminationPolicy> com delay_evaluation 5 é uma boa política de cessação para começar. Estas são definições conservadoras, que podem proporcionar poupanças de 25%-35% sem perdas na métrica primária (com base nos nossos dados de avaliação).

estimator
Necessário

Um avaliador que será chamado com parâmetros hyper de exemplo. Especifique apenas um dos seguintes parâmetros: estimator, run_configou pipeline.

run_config
Necessário

Um objeto para configurar a configuração para execuções de scripts/blocos de notas. Especifique apenas um dos seguintes parâmetros: estimator, run_configou pipeline.

resume_from
Necessário

Uma execução do hyperdrive ou uma lista de execuções do hyperdrive que serão herdadas como pontos de dados para aquecer o início da nova execução.

resume_child_runs
Necessário
Run | list[Run]

Uma execução subordinada do hyperdrive ou uma lista de execuções subordinadas do hyperdrive que serão retomadas à medida que forem executadas novas execuções subordinadas da nova execução do hyperdrive.

pipeline
Necessário

Um objeto de pipeline para configurar a configuração para execuções de pipelines. O objeto de pipeline será chamado com os hiperparâmetros de exemplo para submeter execuções de pipeline. Especifique apenas um dos seguintes parâmetros: estimator, run_configou pipeline.

custom_run_id
Necessário
str

ID de execução personalizado fornecido pelo utilizador

debug_flag
valor predefinido: None

Observações

O exemplo abaixo mostra a criação de um objeto HyperDriveConfig a utilizar para o tunning de hiperparâmetros. No exemplo, o nome da métrica primária corresponde a um valor registado no script de preparação.


   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 o HyperDriveConfig, veja o tutorial Otimizar hiperparâmetros para o seu modelo.

Atributos

estimator

Devolva o avaliador utilizado na execução do HyperDrive.

Valor é Nenhum se a execução utilizar uma configuração de execução de script ou um pipeline.

Devoluções

Tipo Description

O avaliador.

pipeline

Devolver o pipeline utilizado na execução do HyperDrive.

Valor é Nenhum se a execução utilizar uma configuração ou um avaliador de execução de scripts.

Devoluções

Tipo Description

O pipeline.

run_config

Devolva a configuração do script/bloco de notas utilizada na execução do HyperDrive.

O valor é Nenhum se a execução utilizar um avaliador ou pipeline.

Devoluções

Tipo Description

A configuração de execução.

source_directory

Devolva o diretório de origem da configuração a executar.

Devoluções

Tipo Description
str

O diretório de origem