Experiment Classe

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

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

Construtor de experimentos.

Herança
azureml._logging.chained_identity.ChainedIdentity
Experiment
azureml.core._portal.HasExperimentPortal
Experiment

Construtor

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

Parâmetros

workspace
Workspace
Obrigatório

O objeto de workspace que contém o experimento.

name
str
Obrigatório

O nome do experimento.

kwargs
dict
Obrigatório

Um dicionário de argumentos de palavra-chave.

workspace
Workspace
Obrigatório

O objeto de workspace que contém o experimento.

name
str
Obrigatório

O nome do experimento.

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

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


   experiment = Experiment(workspace, "MyExperiment")

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

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

Ambos os mecanismos criam um objeto Run. 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, para recuperar os valores atuais, se houver, de medições de avaliação e métricas.

Métodos

archive

Arquiva um experimento.

delete

Excluir um experimento no workspace.

from_directory

(Preterido) Carrega um experimento do caminho especificado.

get_docs_url

URL para a documentação desta classe.

get_runs

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

list

Retorna a lista de experimentos no workspace.

reactivate

Reativa um experimento arquivado.

refresh

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

remove_tags

Exclui as marcas especificadas do experimento.

set_tags

Adiciona ou modifica um conjunto de marcas no experimento. As marcas não passadas no dicionário são deixadas inalteradas.

start_logging

Inicia uma sessão interativa de registro em log e cria uma execução interativa no experimento especificado.

submit

Envia um experimento e retorna a execução criada ativa.

tag

Marca a execução com uma chave de cadeia de caracteres e um valor de cadeia de caracteres opcional.

archive

Arquiva 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 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

Excluir um experimento no workspace.

static delete(workspace, experiment_id)

Parâmetros

workspace
Workspace
Obrigatório

O workspace ao qual o experimento pertence.

experiment_id
Obrigatório

A ID do experimento a ser excluído.

from_directory

(Preterido) Carrega um experimento do caminho especificado.

static from_directory(path, auth=None)

Parâmetros

path
str
Obrigatório

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

auth
ServicePrincipalAuthentication ou InteractiveLoginAuthentication
valor padrão: None

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

Retornos

Retorna o experimento

Tipo de retorno

get_docs_url

URL para a documentação desta classe.

get_docs_url()

Retornos

url

Tipo de retorno

str

get_runs

Retorna 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

type
string
valor padrão: None

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

tags
string ou dict
valor padrão: None

Filtra execuções por "tag" ou {"tag": "value"}.

properties
string ou dict
valor padrão: None

Filtra execuções por "propriedade" ou {"propriedade": "valor"}

include_children
bool
valor padrão: False

Busca por padrão apenas execuções de nível superior. Definido como true para listar todas as execuções.

Retornos

A lista de execuções correspondentes aos filtros fornecidos.

Tipo de retorno

list

Retorna a lista de experimentos no workspace.

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

Parâmetros

workspace
Workspace
Obrigatório

O workspace do qual listar os experimentos.

experiment_name
str
valor padrão: None

Nome opcional para filtrar experimentos.

view_type
ViewType
valor padrão: ActiveOnly

Valor de enum opcional para filtrar ou incluir experimentos arquivados.

tags
valor padrão: None

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

Retornos

Uma lista de objetos de experimento.

Tipo de retorno

reactivate

Reativa um experimento arquivado.

reactivate(new_name=None)

Parâmetros

new_name
str
Obrigatório

Não tem mais suporte

Comentários

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

refresh

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

refresh()

remove_tags

Exclui as marcas especificadas do experimento.

remove_tags(tags)

Parâmetros

tags
[str]
Obrigatório

As chaves de marca que serão removidas

set_tags

Adiciona ou modifica um conjunto de marcas no experimento. As marcas não passadas no dicionário são deixadas inalteradas.

set_tags(tags)

Parâmetros

tags
dict[str]
Obrigatório

As marcas armazenadas no objeto de experimento

start_logging

Inicia uma sessão interativa de registro em log e cria uma execução interativa no experimento especificado.

start_logging(*args, **kwargs)

Parâmetros

experiment
Experiment
Obrigatório

O experimento.

outputs
str
Obrigatório

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

snapshot_directory
str
Obrigatório

Diretório opcional do qual tirar um instantâneo. Se definido como Nenhum, nenhum instantâneo será tirado.

args
list
Obrigatório
kwargs
dict
Obrigatório

Retornos

Retorna uma execução iniciada.

Tipo de retorno

Run

Comentários

start_logging cria uma execução interativa para uso em cenários como Jupyter Notebooks. Qualquer métrica registrada em log durante a sessão é adicionada 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

A run_id é gerada automaticamente para cada execução e é exclusiva dentro do experimento.

submit

Envia um experimento e retorna a execução criada ativa.

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

Parâmetros

config
object
Obrigatório

A configuração a ser enviada.

tags
dict
valor padrão: None

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

kwargs
dict
Obrigatório

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

Retornos

Uma execução.

Tipo de retorno

Run

Comentários

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

Para enviar um experimento, crie um objeto de configuração que descreva como o experimento 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

Ao enviar a execução de treinamento, um instantâneo do diretório contendo os scripts de treinamento será criado e enviado ao destino de computação. Ele também é armazenado como parte do experimento em seu workspace. Se você alterar os arquivos e enviar a execução novamente, apenas os arquivos alterados serão carregados.

Para evitar que arquivos desnecessários 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

Marca a execução com uma chave de cadeia de caracteres e um valor de cadeia de caracteres opcional.

tag(key, value=None)

Parâmetros

key
str
Obrigatório

A chave de marca

value
str
Obrigatório

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

Retorna o tempo pelo qual o experimento está arquivado. O valor deve ser Nenhum para um experimento ativo.

Retornos

O tempo pelo qual o experimento está arquivado.

Tipo de retorno

str

id

Retorna a ID do experimento.

Retornos

A ID do experimento.

Tipo de retorno

str

name

Retorna o nome do experimento.

Retornos

O nome do experimento.

Tipo de retorno

str

tags

Retorna o conjunto mutável de marcas no experimento.

Retornos

As marcas no experimento.

Tipo de retorno

workspace

Retorna o workspace que contém o experimento.

Retornos

Retorna o objeto do workspace.

Tipo de retorno

workspace_object

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

Use o atributo workspace.

Retornos

O objeto de workspace.

Tipo de retorno