Partilhar via


SweepJob Classe

Tarefa de varrimento para otimização de hiperparâmetros.

Herança
azure.ai.ml.entities._job.job.Job
SweepJob
azure.ai.ml.entities._job.sweep.parameterized_sweep.ParameterizedSweep
SweepJob
azure.ai.ml.entities._job.job_io_mixin.JobIOMixin
SweepJob

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

display_name
str

Nome a apresentar da tarefa.

description
str

Descrição da tarefa.

tags
dict[str, str]

Dicionário de etiquetas. As etiquetas podem ser adicionadas, removidas e atualizadas.

properties
dict[str, str]

O dicionário da propriedade do recurso.

experiment_name
str

Nome da experimentação em que a tarefa será criada, se nenhuma for fornecida, a tarefa será criada na experimentação "Predefinição".

identity
Union[ManagedIdentityConfiguration, AmlTokenConfiguration, UserIdentityConfiguration]

Identidade que a tarefa de preparação utilizará durante a execução na computação.

inputs
dict

Entradas para o comando .

outputs
dict[str, Output]

Mapeamento de enlaces de dados de saída utilizados na tarefa.

sampling_algorithm
str

O algoritmo de amostragem de hiperparâmetros a utilizar no search_space. A predefinição é "aleatória".

search_space
Dict

Dicionário do espaço de pesquisa do hiperparâmetros. A chave é o nome do hiperparâmetros e o valor é a expressão do parâmetro.

objective
Objective

Métrica para otimizar.

compute
str

O destino de computação em que a tarefa é executada.

trial
Union[CommandJob, CommandComponent]

A configuração da tarefa para cada avaliação. Cada avaliação será fornecida com uma combinação diferente de valores de hiperparâmetros que o sistema amostra do search_space.

early_termination
Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]

A política de cessação antecipada a utilizar. Uma tarefa de avaliação é cancelada quando os critérios da política especificada são cumpridos. Se for omitido, não será aplicada nenhuma política de cessação antecipada.

limits
<xref:azure.ai.ml.entities.SweepJobLimits>

Limites para o trabalho de varrer.

queue_settings
QueueSettings

Definições de fila para a tarefa.

kwargs
dict

Um dicionário de parâmetros de configuração adicionais.

Exemplos

Criar 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

Captura o conteúdo da tarefa num ficheiro no formato YAML.

set_limits

Defina limites para Varrer nó. Deixe os parâmetros como Nenhum se não quiser atualizar os valores correspondentes.

set_objective

Defina o objeto varrimento. Deixe os parâmetros como Nenhum se não quiser atualizar os valores correspondentes.

"minimizar", "maximizar". :type goal: str :keyword primary_metric: Nome da métrica a otimizar. :p aramtype primary_metric: str

dump

Captura o conteúdo da tarefa num ficheiro no formato YAML.

dump(dest: str | PathLike | IO, **kwargs) -> None

Parâmetros

dest
Union[<xref:PathLike>, str, IO[AnyStr]]
Necessário

O caminho local ou o fluxo de ficheiros no qual escrever o conteúdo YAML. Se dest for um caminho de ficheiro, será criado um novo ficheiro. Se dest for um ficheiro aberto, o ficheiro será escrito diretamente.

kwargs
dict

Argumentos adicionais a transmitir para o serializador YAML.

Exceções

Gerado se dest for um caminho de ficheiro e o ficheiro já existir.

Gerado se dest for um ficheiro aberto e o ficheiro não for gravável.

set_limits

Defina limites para Varrer nó. Deixe os parâmetros como Nenhum se 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 de avaliação total.

timeout
int

tempo limite total em segundos para varrer o nó

trial_timeout
int

tempo limite em segundos para cada avaliação

Exceções

Gerado se dest for um caminho de ficheiro e o ficheiro já existir.

Gerado se dest for um ficheiro aberto e o ficheiro não for gravável.

set_objective

Defina o objeto varrimento. Deixe os parâmetros como Nenhum se não quiser atualizar os valores correspondentes.

"minimizar", "maximizar". :type goal: str :keyword primary_metric: Nome da métrica a otimizar. :p aramtype primary_metric: str

set_objective(*, goal: str | None = None, primary_metric: str | None = None) -> None

Parâmetros

goal

Define os objetivos de métricas suportados para otimização de hiperparâmetros. Os valores aceitáveis são:

Exceções

Gerado se dest for um caminho de ficheiro e o ficheiro já existir.

Gerado se dest for um ficheiro aberto e o ficheiro não for gravável.

Atributos

base_path

O caminho base do recurso.

Devoluções

O caminho base do recurso.

Tipo de retorno

str

creation_context

O contexto de criação do recurso.

Devoluções

Os metadados de criação do recurso.

Tipo de retorno

early_termination

Política de cessação antecipada para tarefa de varrimento.

Devoluções

Política de cessação antecipada para tarefa de varrimento.

Tipo de retorno

<xref:azure.ai.ml.entities._job.sweep.early_termination_policy.EarlyTerminationPolicy>

id

O ID do recurso.

Devoluções

O ID global do recurso, um ID de Resource Manager do Azure (ARM).

Tipo de retorno

inputs

limits

Limites para tarefas de varrimento.

Devoluções

Limites para tarefas de varrimento.

Tipo de retorno

log_files

Ficheiros de saída da tarefa.

Devoluções

O dicionário de nomes de registo e URLs.

Tipo de retorno

outputs

sampling_algorithm

Algoritmo de amostragem para tarefa de varrimento.

Devoluções

Algoritmo de amostragem para tarefa de varrimento.

Tipo de retorno

status

O estado da tarefa.

Os valores comuns devolvidos incluem "Em Execução", "Concluído" e "Com Falhas". Todos os valores possíveis são:

  • NotStarted - Este é um estado temporário em que os objetos Run do lado do cliente estão antes da submissão da cloud.

  • A iniciar – a Execução começou a ser processada na cloud. O autor da chamada tem um ID de execução neste momento.

  • Aprovisionamento – a computação a pedido está a ser criada para uma determinada submissão de trabalho.

  • Preparação – o ambiente de execução está a ser preparado e encontra-se numa de duas fases:

    • Compilação da imagem do Docker

    • configuração do ambiente conda

  • Em fila – a tarefa está em fila de espera no destino de computação. Por exemplo, no BatchAI, a tarefa está num estado em fila

    enquanto aguarda que todos os nós pedidos estejam prontos.

  • Em execução – a tarefa começou a ser executada no destino de computação.

  • Finalização – a execução do código do utilizador foi concluída e a execução encontra-se em fases de pós-processamento.

  • CancelRequested - Foi pedido o cancelamento para a tarefa.

  • Concluído – a execução foi concluída com êxito. Isto inclui a execução do código do utilizador e a execução

    fases de pós-processamento.

  • Falha – a execução falhou. Normalmente, a propriedade Error numa execução irá fornecer detalhes sobre o motivo.

  • Cancelado – segue um pedido de cancelamento e indica que a execução foi cancelada com êxito.

  • NotResponding – para execuções com Heartbeats ativados, não foi enviado nenhum heartbeat recentemente.

Devoluções

Estado da tarefa.

Tipo de retorno

studio_url

Ponto final do Azure ML Studio.

Devoluções

O URL para a página de detalhes da tarefa.

Tipo de retorno

type

O tipo de tarefa.

Devoluções

O tipo de tarefa.

Tipo de retorno