Compartir a través de


Experiment Clase

Representa el punto de entrada principal para crear y trabajar con experimentos en Azure Machine Learning.

Un experimento es un contenedor de pruebas que representan varias ejecuciones del modelo.

Constructor de experimentos.

Herencia
azureml._logging.chained_identity.ChainedIdentity
Experiment
azureml.core._portal.HasExperimentPortal
Experiment

Constructor

Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)

Parámetros

Nombre Description
workspace
Requerido

Objeto de área de trabajo que contiene el experimento.

name
Requerido
str

El nombre del experimento.

kwargs
Requerido

Diccionario de argumentos de palabra clave.

workspace
Requerido

Objeto de área de trabajo que contiene el experimento.

name
Requerido
str

El nombre del experimento.

kwargs
Requerido

Diccionario de argumentos de palabra clave.

_skip_name_validation
Valor predeterminado: False
_id
Valor predeterminado: None
_archived_time
Valor predeterminado: None
_create_in_cloud
Valor predeterminado: True
_experiment_dto
Valor predeterminado: None

Comentarios

Un experimento de Azure Machine Learning representa la colección de pruebas utilizadas para validar la hipótesis de un usuario.

En Azure Machine Learning, la clase Experiment representa un experimento y la clase Run representa una prueba.

Para obtener o crear un experimento desde un área de trabajo, solicite el experimento con el nombre del experimento. El nombre del experimento debe tener entre 3 y 36 caracteres y debe empezar con una letra o un número; además, solo puede contener letras, números, caracteres de subrayado y guiones.


   experiment = Experiment(workspace, "MyExperiment")

Si no se encuentra el experimento en el área de trabajo, se crea un nuevo experimento.

Hay dos maneras de ejecutar una prueba de experimento. Si está experimentando interactivamente en un cuaderno de Jupyter Notebook, use start_logging. Si va a enviar un experimento desde el código fuente o desde algún otro tipo de prueba configurada, use submit.

Ambos mecanismos crean un objeto Run. En escenarios interactivos, use métodos de registro como log para agregar medidas y métricas al registro de la prueba. En escenarios configurados, use métodos de estado como get_status para recuperar información sobre la ejecución.

En ambos casos, puede usar métodos de consulta como get_metrics para recuperar los valores actuales, si los hubiera, de las métricas y medidas de la prueba.

Métodos

archive

Archiva un experimento.

delete

Elimina un experimento en el área de trabajo.

from_directory

(En desuso) Carga un experimento desde la ruta de acceso especificada.

get_docs_url

Dirección URL de la documentación de esta clase.

get_runs

Devuelve un generador de las ejecuciones de este experimento, en orden cronológico inverso.

list

Devuelve la lista de experimentos del área de trabajo.

reactivate

Reactiva un experimento archivado.

refresh

Devuelve la versión más reciente del experimento desde la nube.

remove_tags

Elimina las etiquetas especificadas del experimento.

set_tags

Agrega o modifica un conjunto de etiquetas en el experimento. Las etiquetas que no se pasan en el diccionario se mantienen intactas.

start_logging

Inicia una sesión de registro interactiva y crea una ejecución interactiva en el experimento especificado.

submit

Envía un experimento y devuelve la ejecución activa creada.

tag

Etiqueta el experimento con una clave de cadena y un valor de cadena opcional.

archive

Archiva un experimento.

archive()

Comentarios

Después del archivado, el experimento no aparecerá de manera predeterminada. Al intentar escribir en un experimento archivado, se creará un nuevo experimento activo con el mismo nombre. Un experimento archivado se puede restaurar mediante una llamada a reactivate siempre que no haya otro experimento activo con el mismo nombre.

delete

Elimina un experimento en el área de trabajo.

static delete(workspace, experiment_id)

Parámetros

Nombre Description
workspace
Requerido

Área de trabajo a la que pertenece el experimento.

experiment_id
Requerido

Identificador del experimento que se va a eliminar.

from_directory

(En desuso) Carga un experimento desde la ruta de acceso especificada.

static from_directory(path, auth=None)

Parámetros

Nombre Description
path
Requerido
str

Directorio que contiene los archivos de configuración del experimento.

auth

Objeto de autenticación. Si es None (Ninguno), se usarán las credenciales predeterminadas de la CLI de Azure o la API solicitará las credenciales.

Valor predeterminado: None

Devoluciones

Tipo Description

Devuelve el experimento.

get_docs_url

Dirección URL de la documentación de esta clase.

get_docs_url()

Devoluciones

Tipo Description
str

url

get_runs

Devuelve un generador de las ejecuciones de este experimento, en orden cronológico inverso.

get_runs(type=None, tags=None, properties=None, include_children=False)

Parámetros

Nombre Description
type

Filtra el generador de ejecuciones devuelto por el tipo proporcionado. Consulte add_type_provider para crear tipos de ejecución.

Valor predeterminado: None
tags

Filtra las ejecuciones por "etiqueta" o {"etiqueta": "valor"}.

Valor predeterminado: None
properties

Filtra las ejecuciones por "propiedad" o {"propiedad": "valor"}.

Valor predeterminado: None
include_children

De manera predeterminada, solo recupera las ejecuciones de nivel superior. Establézcalo en true para enumerar todas las ejecuciones.

Valor predeterminado: False

Devoluciones

Tipo Description

Lista de ejecuciones que coinciden con los filtros proporcionados.

list

Devuelve la lista de experimentos del área de trabajo.

static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)

Parámetros

Nombre Description
workspace
Requerido

Área de trabajo desde la que se enumeran los experimentos.

experiment_name
str

Nombre opcional para filtrar los experimentos.

Valor predeterminado: None
view_type

Valor de enumeración opcional para filtrar o incluir los experimentos archivados.

Valor predeterminado: ActiveOnly
tags

Clave de etiqueta opcional o diccionario de pares clave-valor de etiqueta por los que filtrar los experimentos.

Valor predeterminado: None

Devoluciones

Tipo Description

Lista de objetos de experimento.

reactivate

Reactiva un experimento archivado.

reactivate(new_name=None)

Parámetros

Nombre Description
new_name
Requerido
str

Ya no se admite

Comentarios

Un experimento archivado solo se puede reactivar si no hay otro experimento activo con el mismo nombre.

refresh

Devuelve la versión más reciente del experimento desde la nube.

refresh()

remove_tags

Elimina las etiquetas especificadas del experimento.

remove_tags(tags)

Parámetros

Nombre Description
tags
Requerido
[str]

Claves de etiqueta que se van a quitar

set_tags

Agrega o modifica un conjunto de etiquetas en el experimento. Las etiquetas que no se pasan en el diccionario se mantienen intactas.

set_tags(tags)

Parámetros

Nombre Description
tags
Requerido

Etiquetas almacenadas en el objeto de experimento

start_logging

Inicia una sesión de registro interactiva y crea una ejecución interactiva en el experimento especificado.

start_logging(*args, **kwargs)

Parámetros

Nombre Description
experiment
Requerido

El experimento.

outputs
Requerido
str

Directorio de salidas opcionales para realizar el seguimiento. Para ninguna salida, pase False.

snapshot_directory
Requerido
str

Directorio opcional del que se toma una instantánea. Si se establece en None (Ninguno), no se tomará ninguna instantánea.

args
Requerido
kwargs
Requerido

Devoluciones

Tipo Description
Run

Devuelve una ejecución iniciada.

Comentarios

start_logging crea una ejecución interactiva para su uso en escenarios como los cuadernos de Jupyter. Todas las métricas que se registran durante la sesión se agregan al registro de ejecución en el experimento. Si se especifica un directorio de salida, el contenido de ese directorio se carga como artefactos de ejecución tras la finalización de la ejecución.


   experiment = Experiment(workspace, "My Experiment")
   run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
   ...
   run.log_metric("Accuracy", accuracy)
   run.complete()

Nota

Se genera automáticamente un elemento run_id para cada ejecución y es único dentro del experimento.

submit

Envía un experimento y devuelve la ejecución activa creada.

submit(config, tags=None, **kwargs)

Parámetros

Nombre Description
config
Requerido

Configuración que se va a enviar.

tags

Etiquetas que se van a agregar a la ejecución enviada, {"etiqueta": "valor"}.

Valor predeterminado: None
kwargs
Requerido

Parámetros adicionales utilizados en la función de envío para las configuraciones.

Devoluciones

Tipo Description
Run

Una ejecución.

Comentarios

El envío es una llamada asincrónica a la plataforma de Azure Machine Learning para ejecutar una prueba en hardware local o remoto. Según la configuración, el envío preparará automáticamente los entornos de ejecución, ejecutará el código y capturará el código fuente y los resultados en el historial de ejecución del experimento.

Para enviar un experimento, primero debe crear un objeto de configuración que describa cómo se va a ejecutar el experimento. La configuración depende del tipo de prueba necesaria.

El siguiente es un ejemplo de cómo enviar un experimento desde la máquina local:


   from azureml.core import ScriptRunConfig

   # run a trial from the train.py code in your current directory
   config = ScriptRunConfig(source_directory='.', script='train.py',
       run_config=RunConfiguration())
   run = experiment.submit(config)

   # get the url to view the progress of the experiment and then wait
   # until the trial is complete
   print(run.get_portal_url())
   run.wait_for_completion()

Para más información sobre cómo configurar una ejecución, consulte los detalles del tipo de configuración.

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

Nota

Cuando envía la ejecución de entrenamiento, se crea una instantánea del directorio que contiene los scripts de entrenamiento y se envía al destino de proceso. También se almacena como parte del experimento del área de trabajo. Si cambia los archivos y vuelve a enviar la ejecución, solo se cargarán los archivos cambiados.

Para evitar que los archivos se incluyan en la instantánea, cree un archivo .gitignore o .amlignore en el directorio y agregue en él los archivos. El archivo .amlignore usa la misma sintaxis y los mismos patrones que el archivo .gitignore. Si ambos archivos existen, el archivo .amlignore tiene prioridad.

Para más información, consulte Instantánea.

tag

Etiqueta el experimento con una clave de cadena y un valor de cadena opcional.

tag(key, value=None)

Parámetros

Nombre Description
key
Requerido
str

Clave de etiqueta

value
Requerido
str

Valor opcional para la etiqueta

Comentarios

Las etiquetas de un experimento se almacenan en un diccionario con claves de cadena y valores de cadena. Las etiquetas se pueden establecer, actualizar y eliminar. Las etiquetas están orientadas al usuario y generalmente contienen información significativa para los consumidores del experimento.


   experiment.tag('')
   experiment.tag('DeploymentCandidate')
   experiment.tag('modifiedBy', 'Master CI')
   experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable

Atributos

archived_time

Devuelve la hora de archivado del experimento. El valor debe ser None (Ninguno) para un experimento activo.

Devoluciones

Tipo Description
str

Hora de archivado del experimento.

id

Devuelve el identificador del experimento.

Devoluciones

Tipo Description
str

Identificador del experimento.

name

Devuelve el nombre del experimento.

Devoluciones

Tipo Description
str

Nombre del experimento.

tags

Devuelve el conjunto mutable de etiquetas del experimento.

Devoluciones

Tipo Description

Etiquetas de un experimento.

workspace

Devuelve el área de trabajo que contiene el experimento.

Devoluciones

Tipo Description

Devuelve el objeto de área de trabajo.

workspace_object

(En desuso) Devuelve el área de trabajo que contiene el experimento.

Utilice el atributo workspace.

Devoluciones

Tipo Description

Objeto de área de trabajo.