Compartilhar via


Experiment Classe

Representa o principal ponto de entrada para criar e trabalhar com experimentos no Azure Machine Learning.

Um Experimento é um contêiner de avaliações que representam várias execuções de modelo.

Construtor de experimentos.

Construtor

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

Parâmetros

Nome Description
workspace
Obrigatório

O objeto de workspace que contém o experimento.

name
Obrigatório
str

O nome do experimento.

kwargs
Obrigatório

Um dicionário de argumentos de palavra-chave.

workspace
Obrigatório

O objeto de workspace que contém o experimento.

name
Obrigatório
str

O nome do experimento.

kwargs
Obrigatório

Um dicionário de argumentos de palavra-chave.

_skip_name_validation
Valor padrão: False
_id
Valor padrão: None
_archived_time
Valor padrão: None
_create_in_cloud
Valor padrão: True
_experiment_dto
Valor padrão: None

Comentários

Um experimento do Azure Machine Learning representa a coleção de avaliações usadas para validar a hipótese de um usuário.

No Azure Machine Learning, um experimento é representado pela Experiment classe e uma avaliação é representada pela Run classe.

Para obter ou criar um experimento de um workspace, solicite o experimento usando o nome do experimento. O nome do experimento deve ter de 3 a 36 caracteres, começar com uma letra ou um número e só pode conter letras, números, sublinhados e traços.


   experiment = Experiment(workspace, "MyExperiment")

Se o experimento não for encontrado no workspace, um novo experimento será criado.

Há duas maneiras de executar uma avaliação de experimento. Se você estiver experimentando interativamente em um Jupyter Notebook, use start_logging Se você estiver enviando um experimento do código-fonte ou algum outro tipo de avaliação configurada, use submit

Ambos os mecanismos criam um Run objeto. Em cenários interativos, use métodos de log, como log adicionar medidas e métricas ao registro de avaliação. Em cenários configurados, use métodos de status, como get_status para recuperar informações sobre a execução.

Em ambos os casos, você pode usar métodos de consulta como get_metrics recuperar os valores atuais, se houver, de quaisquer medidas e métricas de avaliação.

Métodos

archive

Arquive um experimento.

delete

Exclua um experimento no workspace.

from_directory

(Preterido) Carregue um experimento do caminho especificado.

get_docs_url

Url para a documentação desta classe.

get_runs

Retornar um gerador das execuções deste experimento, em ordem cronológica inversa.

list

Retorne a lista de experimentos no workspace.

reactivate

Reativa um experimento arquivado.

refresh

Retorne a versão mais recente do experimento da nuvem.

remove_tags

Exclua as marcas especificadas do experimento.

set_tags

Adicione ou modifique um conjunto de marcas no experimento. As marcas não passadas no dicionário são deixadas intocadas.

start_logging

Inicie uma sessão de log interativa e crie uma execução interativa no experimento especificado.

submit

Envie um experimento e retorne a execução ativa criada.

tag

Marque o experimento com uma chave de cadeia de caracteres e um valor de cadeia de caracteres opcional.

archive

Arquive um experimento.

archive()

Comentários

Após o arquivamento, o experimento não será listado por padrão. A tentativa de gravar em um experimento arquivado criará um novo experimento ativo com o mesmo nome. Um experimento arquivado pode ser restaurado chamando reactivate desde que não haja outro experimento ativo com o mesmo nome.

delete

Exclua um experimento no workspace.

static delete(workspace, experiment_id)

Parâmetros

Nome Description
workspace
Obrigatório

O workspace ao qual o experimento pertence.

experiment_id
Obrigatório

A ID do experimento a ser excluída.

from_directory

(Preterido) Carregue um experimento do caminho especificado.

static from_directory(path, auth=None)

Parâmetros

Nome Description
path
Obrigatório
str

Diretório que contém os arquivos de configuração do experimento.

auth

O objeto de autenticação. Se Nenhuma das credenciais padrão da CLI do Azure for usada ou a API solicitará credenciais.

Valor padrão: None

Retornos

Tipo Description

Retorna o experimento

get_docs_url

Url para a documentação desta classe.

get_docs_url()

Retornos

Tipo Description
str

URL

get_runs

Retornar um gerador das execuções deste experimento, em ordem cronológica inversa.

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

Parâmetros

Nome Description
type

Filtre o gerador retornado de execuções pelo tipo fornecido. Consulte add_type_provider como criar tipos de execução.

Valor padrão: None
tags

O filtro é executado por "tag" ou {"tag": "value"}.

Valor padrão: None
properties

O filtro é executado por "property" ou {"property": "value"}

Valor padrão: None
include_children

Por padrão, busque apenas execuções de nível superior. Defina como true para listar todas as execuções.

Valor padrão: False

Retornos

Tipo Description

A lista de execuções que correspondem aos filtros fornecidos.

list

Retorne a lista de experimentos no workspace.

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

Parâmetros

Nome Description
workspace
Obrigatório

O workspace do qual listar os experimentos.

experiment_name
str

Nome opcional para filtrar experimentos.

Valor padrão: None
view_type

Valor de enumeração opcional para filtrar ou incluir experimentos arquivados.

Valor padrão: ActiveOnly
tags

Chave de marca opcional ou dicionário de pares chave-valor de marca para filtrar experimentos.

Valor padrão: None

Retornos

Tipo Description

Uma lista de objetos de experimento.

reactivate

Reativa um experimento arquivado.

reactivate(new_name=None)

Parâmetros

Nome Description
new_name
Obrigatório
str

Não há mais suporte

Comentários

Um experimento arquivado só poderá ser reativado se não houver outro experimento ativo com o mesmo nome.

refresh

Retorne a versão mais recente do experimento da nuvem.

refresh()

remove_tags

Exclua as marcas especificadas do experimento.

remove_tags(tags)

Parâmetros

Nome Description
tags
Obrigatório
[str]

As chaves de marca que serão removidas

set_tags

Adicione ou modifique um conjunto de marcas no experimento. As marcas não passadas no dicionário são deixadas intocadas.

set_tags(tags)

Parâmetros

Nome Description
tags
Obrigatório

As marcas armazenadas no objeto de experimento

start_logging

Inicie uma sessão de log interativa e crie uma execução interativa no experimento especificado.

start_logging(*args, **kwargs)

Parâmetros

Nome Description
experiment
Obrigatório

O experimento.

outputs
Obrigatório
str

Diretório de saídas opcionais a ser rastreado. Para nenhuma saída, passe False.

snapshot_directory
Obrigatório
str

Diretório opcional do qual tirar um instantâneo. A configuração de Nenhum não tirará nenhum instantâneo.

args
Obrigatório
kwargs
Obrigatório

Retornos

Tipo Description
Run

Retornar uma execução iniciada.

Comentários

start_logging cria uma execução interativa para uso em cenários como Jupyter Notebooks. Todas as métricas registradas durante a sessão são adicionadas ao registro de execução no experimento. Se um diretório de saída for especificado, o conteúdo desse diretório será carregado como artefatos de execução após a conclusão da execução.


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

Observação

run_id é gerado automaticamente para cada execução e é exclusivo dentro do experimento.

submit

Envie um experimento e retorne a execução ativa criada.

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

Parâmetros

Nome Description
config
Obrigatório

A configuração a ser enviada.

tags

Marcas a serem adicionadas à execução enviada, {"tag": "value"}.

Valor padrão: None
kwargs
Obrigatório

Parâmetros adicionais usados na função de envio para configurações.

Retornos

Tipo Description
Run

Uma execução.

Comentários

Enviar é uma chamada assíncrona para a plataforma do Azure Machine Learning para executar uma avaliação em hardware local ou remoto. Dependendo da configuração, o envio preparará automaticamente seus ambientes de execução, executará seu código e capturará o código-fonte e os resultados no histórico de execução do experimento.

Para enviar um experimento, primeiro você precisa criar um objeto de configuração que descreva como o experimento deve ser executado. A configuração depende do tipo de avaliação necessária.

Um exemplo de como enviar um experimento do computador local é o seguinte:


   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 obter detalhes sobre como configurar uma execução, consulte os detalhes do tipo de configuração.

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

Observação

Quando você envia a execução de treinamento, um instantâneo do diretório que contém seus scripts de treinamento é criado e enviado para o destino de computação. Ele também é armazenado como parte do experimento em seu workspace. Se você alterar arquivos e enviar a execução novamente, somente os arquivos alterados serão carregados.

Para impedir que os arquivos sejam incluídos no instantâneo, crie um arquivo .gitignore ou .amlignore no diretório e adicione os arquivos a ele. O arquivo .amlignore usa a mesma sintaxe e padrões que o arquivo .gitignore. Se ambos os arquivos existirem, o arquivo .amlignore terá precedência.

Para obter mais informações, veja cópias de sombra.

tag

Marque o experimento com uma chave de cadeia de caracteres e um valor de cadeia de caracteres opcional.

tag(key, value=None)

Parâmetros

Nome Description
key
Obrigatório
str

A chave de marca

value
Obrigatório
str

Um valor opcional para a marca

Comentários

As marcas em um experimento são armazenadas em um dicionário com chaves de cadeia de caracteres e valores de cadeia de caracteres. As marcas podem ser definidas, atualizadas e excluídas. As marcas são voltadas para o usuário e geralmente contêm informações de significado para os consumidores do experimento.


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

Atributos

archived_time

Retorne o tempo arquivado para o experimento. O valor deve ser Nenhum para um experimento ativo.

Retornos

Tipo Description
str

A hora arquivada do experimento.

id

ID de retorno do experimento.

Retornos

Tipo Description
str

A ID do experimento.

name

Nome de retorno do experimento.

Retornos

Tipo Description
str

O nome do experimento.

tags

Retorne o conjunto mutável de marcas no experimento.

Retornos

Tipo Description

As marcas em um experimento.

workspace

Retorne o workspace que contém o experimento.

Retornos

Tipo Description

Retorna o objeto de workspace.

workspace_object

(Preterido) Retorne o workspace que contém o experimento.

Use o workspace atributo.

Retornos

Tipo Description

O objeto de workspace.