Partilhar 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 testes que representam várias execuções de modelo.

Construtor de experimento.

Construtor

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

Parâmetros

Name Description
workspace
Necessário

O objeto de espaço de trabalho que contém o experimento.

name
Necessário
str

O nome do experimento.

kwargs
Necessário

Um dicionário de palavras-chave args.

workspace
Necessário

O objeto de espaço de trabalho que contém o experimento.

name
Necessário
str

O nome do experimento.

kwargs
Necessário

Um dicionário de palavras-chave args.

_skip_name_validation
Default value: False
_id
Default value: None
_archived_time
Default value: None
_create_in_cloud
Default value: True
_experiment_dto
Default value: None

Observações

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 Experiment é representado pela classe e uma avaliação é representada pela Run classe.

Para obter ou criar um experimento a partir de um espaço de trabalho, 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 espaço de trabalho, um novo experimento será criado.

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

Ambos os mecanismos criam um Run objeto. Em cenários interativos, use métodos de registro em log, como log para adicionar medições 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 medições e métricas de avaliação.

Métodos

archive

Arquivar uma experiência.

delete

Exclua um experimento no espaço de trabalho.

from_directory

(Preterido) Carregue um experimento a partir do caminho especificado.

get_docs_url

Url para a documentação desta classe.

get_runs

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

list

Retornar a lista de experimentos no espaço de trabalho.

reactivate

Reativa um experimento arquivado.

refresh

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

remove_tags

Exclua as tags especificadas do experimento.

set_tags

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

start_logging

Inicie uma sessão de registro interativo 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

Arquivar uma experiência.

archive()

Observações

Após o arquivamento, o experimento não será listado por padrão. Tentar 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 espaço de trabalho.

static delete(workspace, experiment_id)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho ao qual o experimento pertence.

experiment_id
Necessário

O id do experimento a ser excluído.

from_directory

(Preterido) Carregue um experimento a partir do caminho especificado.

static from_directory(path, auth=None)

Parâmetros

Name Description
path
Necessário
str

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

auth

O objeto auth. Se Nenhum, as credenciais padrão da CLI do Azure serão usadas ou a API solicitará credenciais.

Default value: None

Devoluções

Tipo Description

Devolve a Experiência

get_docs_url

Url para a documentação desta classe.

get_docs_url()

Devoluções

Tipo Description
str

URL

get_runs

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

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

Parâmetros

Name Description
type

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

Default value: None
tags

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

Default value: None
properties

O filtro é executado por "propriedade" ou {"propriedade": "valor"}

Default value: None
include_children

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

Default value: False

Devoluções

Tipo Description

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

list

Retornar a lista de experimentos no espaço de trabalho.

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

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho a partir do qual listar os experimentos.

experiment_name
str

Nome opcional para filtrar experimentos.

Default value: None
view_type

Valor de enum opcional para filtrar ou incluir experimentos arquivados.

Default value: ActiveOnly
tags

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

Default value: None

Devoluções

Tipo Description

Uma lista de objetos de experimento.

reactivate

Reativa um experimento arquivado.

reactivate(new_name=None)

Parâmetros

Name Description
new_name
Necessário
str

Não é mais suportado

Observações

Um experimento arquivado só pode 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 tags especificadas do experimento.

remove_tags(tags)

Parâmetros

Name Description
tags
Necessário
[str]

As chaves de tag que serão removidas

set_tags

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

set_tags(tags)

Parâmetros

Name Description
tags
Necessário

As tags armazenadas no objeto de experimento

start_logging

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

start_logging(*args, **kwargs)

Parâmetros

Name Description
experiment
Necessário

A experiência.

outputs
Necessário
str

Diretório de saídas opcional para rastrear. Para nenhuma saída, passe False.

snapshot_directory
Necessário
str

Diretório opcional para tirar instantâneo. A configuração como Nenhum não tirará nenhum instantâneo.

args
Necessário
kwargs
Necessário

Devoluções

Tipo Description
Run

Retornar uma execução iniciada.

Observações

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

Name Description
config
Necessário

A configuração a ser enviada.

tags

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

Default value: None
kwargs
Necessário

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

Devoluções

Tipo Description
Run

Uma corrida.

Observações

Enviar é uma chamada assíncrona para a plataforma 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á seu código-fonte e resultados no histórico de execução do experimento.

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

Um exemplo de como enviar um experimento de sua máquina 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 espaço de trabalho. Se você alterar os arquivos e enviar a execução novamente, somente os arquivos alterados serão carregados.

Para impedir que 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, consulte Instantâneos.

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

Name Description
key
Necessário
str

A chave da tag

value
Necessário
str

Um valor opcional para a tag

Observações

As tags em um experimento são armazenadas em um dicionário com teclas de cadeia de caracteres e valores de cadeia de caracteres. As tags podem ser definidas, atualizadas e excluídas. As tags 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.

Devoluções

Tipo Description
str

O tempo arquivado do experimento.

id

ID de retorno do experimento.

Devoluções

Tipo Description
str

O id do experimento.

name

Nome de retorno do experimento.

Devoluções

Tipo Description
str

O nome do experimento.

tags

Retorne o conjunto mutável de tags no experimento.

Devoluções

Tipo Description

As tags em um experimento.

workspace

Retornar o espaço de trabalho que contém o experimento.

Devoluções

Tipo Description

Retorna o objeto de espaço de trabalho.

workspace_object

(Preterido) Retornar o espaço de trabalho que contém o experimento.

Use o workspace atributo.

Devoluções

Tipo Description

O objeto de espaço de trabalho.