SweepJob Classe
Trabalho de varredura para ajuste de hiperparâmetro.
- Herança
-
azure.ai.ml.entities._job.job.JobSweepJobazure.ai.ml.entities._job.sweep.parameterized_sweep.ParameterizedSweepSweepJobazure.ai.ml.entities._job.job_io_mixin.JobIOMixinSweepJob
Construtor
SweepJob(*, name: str | None = None, description: str | None = None, tags: Dict | None = None, display_name: str | None = None, experiment_name: str | None = None, identity: ManagedIdentityConfiguration | AmlTokenConfiguration | UserIdentityConfiguration | None = None, inputs: Dict[str, int | str | float | bool | Input] | None = None, outputs: Dict[str, Output] | None = None, compute: str | None = None, limits: SweepJobLimits | None = None, sampling_algorithm: str | SamplingAlgorithm | None = None, search_space: Dict[str, Choice | LogNormal | LogUniform | Normal | QLogNormal | QLogUniform | QNormal | QUniform | Randint | Uniform] | None = None, objective: Objective | None = None, trial: CommandJob | CommandComponent | None = None, early_termination: BanditPolicy | MedianStoppingPolicy | TruncationSelectionPolicy | None = None, queue_settings: QueueSettings | None = None, **kwargs: Any)
Parâmetros
- name
- str
Nome do trabalho.
- display_name
- str
Nome de exibição do trabalho.
- description
- str
Descrição do trabalho.
- experiment_name
- str
Nome do experimento em que o trabalho será criado, se Nenhum for fornecido, o trabalho será criado no experimento 'Default'.
Identidade que o trabalho de treinamento usará durante a execução na computação.
- inputs
- dict
Entradas para o comando.
- sampling_algorithm
- str
O algoritmo de amostragem de hiperparâmetro a ser usado no search_space. O padrão é "aleatório".
- search_space
- Dict
Dicionário do espaço de pesquisa do hiperparâmetro. A chave é o nome do hiperparâmetro e o valor é a expressão de parâmetro.
- objective
- Objective
Métrica para a qual otimizar.
- compute
- str
O destino de computação em que o trabalho é executado.
- trial
- Union[CommandJob, CommandComponent]
A configuração do trabalho para cada avaliação. Cada avaliação será fornecida com uma combinação diferente de valores de hiperparâmetro que os exemplos do sistema do search_space.
- early_termination
- Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]
A política de término antecipado a ser usada. Um trabalho de avaliação gratuita é cancelado quando os critérios da política especificada são atendidos. Se omitido, nenhuma política de término antecipado será aplicada.
- limits
- <xref:azure.ai.ml.entities.SweepJobLimits>
Limites para o trabalho de varredura.
- queue_settings
- QueueSettings
Configurações de fila para o trabalho.
- kwargs
- dict
Um dicionário de parâmetros de configuração adicionais.
Exemplos
Criando um SweepJob
from azure.ai.ml.entities import CommandJob
from azure.ai.ml.sweep import BayesianSamplingAlgorithm, Objective, SweepJob, SweepJobLimits
command_job = CommandJob(
inputs=dict(kernel="linear", penalty=1.0),
compute=cpu_cluster,
environment=f"{job_env.name}:{job_env.version}",
code="./scripts",
command="python scripts/train.py --kernel $kernel --penalty $penalty",
experiment_name="sklearn-iris-flowers",
)
sweep = SweepJob(
sampling_algorithm=BayesianSamplingAlgorithm(),
trial=command_job,
search_space={"ss": Choice(type="choice", values=[{"space1": True}, {"space2": True}])},
inputs={"input1": {"file": "top_level.csv", "mode": "ro_mount"}},
compute="top_level",
limits=SweepJobLimits(trial_timeout=600),
objective=Objective(goal="maximize", primary_metric="accuracy"),
)
Métodos
dump |
Despeja o conteúdo do trabalho em um arquivo no formato YAML. |
set_limits |
Definir limites para o nó De varredura. Deixe os parâmetros como Nenhum se você não quiser atualizar os valores correspondentes. |
set_objective |
Defina o objeto de varredura.. Deixe os parâmetros como Nenhum se você não quiser atualizar os valores correspondentes. "minimize", "maximize". :type goal: str :palavra-chave primary_metric: nome da métrica a ser otimizada. :p aramtype primary_metric: str |
dump
Despeja o conteúdo do trabalho em um arquivo no formato YAML.
dump(dest: str | PathLike | IO, **kwargs) -> None
Parâmetros
O caminho local ou o fluxo de arquivos no qual gravar o conteúdo YAML. Se dest for um caminho de arquivo, um novo arquivo será criado. Se dest for um arquivo aberto, o arquivo será gravado diretamente.
- kwargs
- dict
Argumentos adicionais a serem passados para o serializador YAML.
Exceções
Gerado se dest for um caminho de arquivo e o arquivo já existir.
Gerado se dest for um arquivo aberto e o arquivo não for gravável.
set_limits
Definir limites para o nó De varredura. Deixe os parâmetros como Nenhum se você não quiser atualizar os valores correspondentes.
set_limits(*, max_concurrent_trials: int | None = None, max_total_trials: int | None = None, timeout: int | None = None, trial_timeout: int | None = None) -> None
Parâmetros
- max_concurrent_trials
- int
número máximo de avaliação simultânea.
- max_total_trials
- int
número máximo total de avaliação.
- timeout
- int
tempo limite total em segundos para o nó de varredura
- trial_timeout
- int
tempo limite em segundos para cada avaliação
Exceções
Gerado se dest for um caminho de arquivo e o arquivo já existir.
Gerado se dest for um arquivo aberto e o arquivo não for gravável.
set_objective
Defina o objeto de varredura.. Deixe os parâmetros como Nenhum se você não quiser atualizar os valores correspondentes.
"minimize", "maximize". :type goal: str :palavra-chave primary_metric: nome da métrica a ser otimizada. :p aramtype primary_metric: str
set_objective(*, goal: str | None = None, primary_metric: str | None = None) -> None
Parâmetros
- goal
Define as metas de métrica com suporte para ajuste de hiperparâmetros. Os valores aceitáveis são:
Exceções
Gerado se dest for um caminho de arquivo e o arquivo já existir.
Gerado se dest for um arquivo aberto e o arquivo não for gravável.
Atributos
base_path
creation_context
O contexto de criação do recurso.
Retornos
Os metadados de criação para o recurso.
Tipo de retorno
early_termination
Política de término antecipado para o trabalho de varredura.
Retornos
Política de término antecipado para o trabalho de varredura.
Tipo de retorno
id
A ID do recurso.
Retornos
A ID global do recurso, uma ID do ARM (Resource Manager do Azure).
Tipo de retorno
inputs
limits
Limites para o trabalho de varredura.
Retornos
Limites para o trabalho de varredura.
Tipo de retorno
log_files
Arquivos de saída do trabalho.
Retornos
O dicionário de nomes de log e URLs.
Tipo de retorno
outputs
sampling_algorithm
Algoritmo de amostragem para o trabalho de varredura.
Retornos
Algoritmo de amostragem para o trabalho de varredura.
Tipo de retorno
status
O status do trabalho.
Os valores comuns retornados incluem "Running", "Completed" e "Failed". Todos os valores possíveis são:
NotStarted - Esse é um estado temporário em que os objetos Run do lado do cliente estão antes do envio à nuvem.
Starting – A Execução começou a ser processada na nuvem. O chamador tem uma ID de execução neste ponto.
Provisionamento – a computação sob demanda está sendo criada para um determinado envio de trabalho.
Preparando – o ambiente de execução está sendo preparado e está em um dos dois estágios:
Build de imagem do Docker
conda environment setup
Enfileirado – o trabalho está na fila no destino de computação. Por exemplo, no BatchAI, o trabalho está em um estado enfileirado
enquanto aguarda que todos os nós solicitados estejam prontos.
Em execução – o trabalho começou a ser executado no destino de computação.
Finalização – a execução do código do usuário foi concluída e a execução está em estágios de pós-processamento.
CancelRequested – O cancelamento foi solicitado para o trabalho.
Concluído – a execução foi concluída com êxito. Isso inclui a execução e a execução do código do usuário
estágios de pós-processamento.
Failed – A execução falhou. Normalmente, a propriedade de Erro em uma execução fornecerá detalhes sobre o motivo.
Canceled – Segue uma solicitação de cancelamento e indica que a execução foi cancelada com êxito.
NotResponding – Para execuções que têm Pulsações habilitadas, nenhuma pulsação foi enviada recentemente.
Retornos
Status do trabalho.
Tipo de retorno
studio_url
Ponto de extremidade do Estúdio do Azure ML.
Retornos
A URL para a página de detalhes do trabalho.
Tipo de retorno
type
Azure SDK for Python