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

workspace
Workspace
Requerido

Objeto de área de trabajo que contiene el experimento.

name
str
Requerido

El nombre del experimento.

kwargs
dict
Requerido

Diccionario de argumentos de palabra clave.

workspace
Workspace
Requerido

Objeto de área de trabajo que contiene el experimento.

name
str
Requerido

El nombre del experimento.

kwargs
dict
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

workspace
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

path
str
Requerido

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

auth
ServicePrincipalAuthentication o InteractiveLoginAuthentication
valor predeterminado: None

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.

Devoluciones

Devuelve el experimento.

Tipo de valor devuelto

get_docs_url

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

get_docs_url()

Devoluciones

url

Tipo de valor devuelto

str

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

type
string
valor predeterminado: None

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

tags
string o dict
valor predeterminado: None

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

properties
string o dict
valor predeterminado: None

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

include_children
bool
valor predeterminado: False

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

Devoluciones

Lista de ejecuciones que coinciden con los filtros proporcionados.

Tipo de valor devuelto

list

Devuelve la lista de experimentos del área de trabajo.

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

Parámetros

workspace
Workspace
Requerido

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

experiment_name
str
valor predeterminado: None

Nombre opcional para filtrar los experimentos.

view_type
ViewType
valor predeterminado: ActiveOnly

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

tags
valor predeterminado: None

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

Devoluciones

Lista de objetos de experimento.

Tipo de valor devuelto

reactivate

Reactiva un experimento archivado.

reactivate(new_name=None)

Parámetros

new_name
str
Requerido

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

tags
[str]
Requerido

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

tags
dict[str]
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

experiment
Experiment
Requerido

El experimento.

outputs
str
Requerido

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

snapshot_directory
str
Requerido

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

args
list
Requerido
kwargs
dict
Requerido

Devoluciones

Devuelve una ejecución iniciada.

Tipo de valor devuelto

Run

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

config
object
Requerido

Configuración que se va a enviar.

tags
dict
valor predeterminado: None

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

kwargs
dict
Requerido

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

Devoluciones

Una ejecución.

Tipo de valor devuelto

Run

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

key
str
Requerido

Clave de etiqueta

value
str
Requerido

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

Hora de archivado del experimento.

Tipo de valor devuelto

str

id

Devuelve el identificador del experimento.

Devoluciones

Identificador del experimento.

Tipo de valor devuelto

str

name

Devuelve el nombre del experimento.

Devoluciones

Nombre del experimento.

Tipo de valor devuelto

str

tags

Devuelve el conjunto mutable de etiquetas del experimento.

Devoluciones

Etiquetas de un experimento.

Tipo de valor devuelto

workspace

Devuelve el área de trabajo que contiene el experimento.

Devoluciones

Devuelve el objeto de área de trabajo.

Tipo de valor devuelto

workspace_object

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

Utilice el atributo workspace.

Devoluciones

Objeto de área de trabajo.

Tipo de valor devuelto