SweepJob Clase
Trabajo de barrido para el ajuste de hiperparámetros.
- Herencia
-
azure.ai.ml.entities._job.job.JobSweepJobazure.ai.ml.entities._job.sweep.parameterized_sweep.ParameterizedSweepSweepJobazure.ai.ml.entities._job.job_io_mixin.JobIOMixinSweepJob
Constructor
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
Nombre del trabajo.
- display_name
- str
Nombre para mostrar del trabajo.
- description
- str
Descripción del trabajo.
- experiment_name
- str
Nombre del experimento en el que se creará el trabajo, si se proporciona Ninguno, el trabajo se creará en el experimento "Default".
Identidad que usará el trabajo de entrenamiento mientras se ejecuta en proceso.
- inputs
- dict
Entradas para el comando.
- sampling_algorithm
- str
Algoritmo de muestreo de hiperparámetros que se va a usar en el search_space. El valor predeterminado es "random".
- search_space
- Dict
Diccionario del espacio de búsqueda de hiperparámetros. La clave es el nombre del hiperparámetro y el valor es la expresión del parámetro.
- objective
- Objective
Métrica para la que se va a optimizar.
- compute
- str
Destino de proceso en el que se ejecuta el trabajo.
- trial
- Union[CommandJob, CommandComponent]
Configuración del trabajo para cada prueba. Cada prueba se proporcionará con una combinación diferente de valores de hiperparámetros que el sistema muestrea de la search_space.
- early_termination
- Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]
La directiva de terminación anticipada que se va a usar. Un trabajo de prueba se cancela cuando se cumplen los criterios de la directiva especificada. Si se omite, no se aplicará ninguna directiva de terminación anticipada.
- limits
- <xref:azure.ai.ml.entities.SweepJobLimits>
Límites del trabajo de barrido.
- queue_settings
- QueueSettings
Configuración de cola para el trabajo.
- kwargs
- dict
Diccionario de parámetros de configuración adicionales.
Ejemplos
Creación de un 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 |
Volca el contenido del trabajo en un archivo en formato YAML. |
set_limits |
Establecer límites para el nodo De barrido. Deje los parámetros como None si no desea actualizar los valores correspondientes. |
set_objective |
Establezca el objeto de barrido. Deje los parámetros como None si no desea actualizar los valores correspondientes. "minimizar", "maximizar". :type goal: str :keyword primary_metric: nombre de la métrica que se va a optimizar. :p aramtype primary_metric: str |
dump
Volca el contenido del trabajo en un archivo en formato YAML.
dump(dest: str | PathLike | IO, **kwargs) -> None
Parámetros
Ruta de acceso local o secuencia de archivos en la que se va a escribir el contenido de YAML. Si dest es una ruta de acceso de archivo, se creará un nuevo archivo. Si dest es un archivo abierto, el archivo se escribirá directamente.
- kwargs
- dict
Argumentos adicionales para pasar al serializador YAML.
Excepciones
Se genera si dest es una ruta de acceso de archivo y el archivo ya existe.
Se genera si dest es un archivo abierto y el archivo no se puede escribir.
set_limits
Establecer límites para el nodo De barrido. Deje los parámetros como None si no desea actualizar los valores correspondientes.
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 prueba simultánea.
- max_total_trials
- int
número máximo de prueba total.
- timeout
- int
tiempo de espera total en segundos para el nodo de barrido
- trial_timeout
- int
tiempo de espera en segundos para cada prueba
Excepciones
Se genera si dest es una ruta de acceso de archivo y el archivo ya existe.
Se genera si dest es un archivo abierto y el archivo no se puede escribir.
set_objective
Establezca el objeto de barrido. Deje los parámetros como None si no desea actualizar los valores correspondientes.
"minimizar", "maximizar". :type goal: str :keyword primary_metric: nombre de la métrica que se va a optimizar. :p aramtype primary_metric: str
set_objective(*, goal: str | None = None, primary_metric: str | None = None) -> None
Parámetros
- goal
Define los objetivos de métrica admitidos para el ajuste de hiperparámetros. Los valores aceptables son:
Excepciones
Se genera si dest es una ruta de acceso de archivo y el archivo ya existe.
Se genera si dest es un archivo abierto y el archivo no se puede escribir.
Atributos
base_path
Ruta de acceso base del recurso.
Devoluciones
Ruta de acceso base del recurso.
Tipo de valor devuelto
creation_context
Contexto de creación del recurso.
Devoluciones
Metadatos de creación del recurso.
Tipo de valor devuelto
early_termination
Directiva de terminación anticipada para el trabajo de barrido.
Devoluciones
Directiva de terminación anticipada para el trabajo de barrido.
Tipo de valor devuelto
id
El identificador del recurso.
Devoluciones
Identificador global del recurso, un identificador de Azure Resource Manager (ARM).
Tipo de valor devuelto
inputs
limits
Límites para el trabajo de barrido.
Devoluciones
Límites para el trabajo de barrido.
Tipo de valor devuelto
log_files
Archivos de salida del trabajo.
Devoluciones
Diccionario de nombres de registro y direcciones URL.
Tipo de valor devuelto
outputs
sampling_algorithm
Algoritmo de muestreo para el trabajo de barrido.
Devoluciones
Algoritmo de muestreo para el trabajo de barrido.
Tipo de valor devuelto
status
El estado del trabajo.
Los valores comunes devueltos incluyen "Running", "Completed" y "Failed". Todos los valores posibles son:
NotStarted: se trata de un estado temporal en el que se encuentran los objetos Run del lado cliente antes del envío en la nube.
Starting: la ejecución ha empezado a procesarse en la nube. El autor de la llamada tiene un identificador de ejecución en este momento.
Aprovisionamiento: se crea un proceso a petición para un envío de trabajo determinado.
Preparación: el entorno de ejecución se está preparando y se encuentra en una de estas dos fases:
Compilación de imágenes de Docker
configuración del entorno Conda
En cola: el trabajo se pone en cola en el destino de proceso. Por ejemplo, en BatchAI, el trabajo está en un estado en cola.
mientras espera a que todos los nodos solicitados estén listos.
En ejecución: el trabajo se ha iniciado para ejecutarse en el destino de proceso.
Finalización: la ejecución del código de usuario se ha completado y la ejecución está en fases posteriores al procesamiento.
CancelRequested: se ha solicitado la cancelación del trabajo.
Completado: la ejecución se ha completado correctamente. Esto incluye tanto la ejecución del código de usuario como la ejecución
posteriores al procesamiento de la ejecución.
Failed: error en la ejecución. Normalmente, la propiedad Error de una ejecución proporcionará detalles sobre por qué se produjo el error.
Canceled: sigue a una solicitud de cancelación e indica que la ejecución se ha cancelado correctamente.
NotResponding: en el caso de las ejecuciones que tienen los latidos habilitados, no se ha enviado recientemente ningún latido.
Devoluciones
Estado del trabajo.
Tipo de valor devuelto
studio_url
Punto de conexión de Azure ML Studio.
Devoluciones
Dirección URL de la página de detalles del trabajo.
Tipo de valor devuelto
type
Azure SDK for Python