Experiment Classe

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

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

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

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

name
<xref:str>

O nome do experimento.

kwargs
<xref:dict>

Um dicionário de args de palavra-chave.

Comentários

Um experimento 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 espaço de trabalho, você solicita o experimento usando o nome do experimento. O nome do experimento deve ter 3-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 espaço de trabalho, um novo experimento será criado.

Há duas maneiras de realizar um teste de experimento. Se você estiver experimentando interativamente em um notebook Jupyter, 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 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 para recuperar os valores atuais, se houver, de quaisquer medições de avaliação e métricas.

Métodos

archive

Arquive um experimento.

delete

Exclua um experimento no espaço de trabalho.

from_directory

Preterido Carregar um experimento a partir do caminho especificado.

get_docs_url

URL para a documentação desta classe.

get_runs

Retornar um gerador de 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 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 inalteradas.

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 espaço de trabalho.

delete(workspace, experiment_id)

Parâmetros

workspace
Workspace

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

experiment_id

A ID do experimento do teste a ser excluído.

from_directory

Preterido Carregar um experimento a partir do caminho especificado.

from_directory(path, auth=None)

Parâmetros

path
<xref:str>

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 nenhuma das credenciais de CLI do Azure padrão será usada 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()

Parâmetros

cls

Retornos

url

Tipo de retorno

<xref:str>

get_runs

Retornar um gerador de 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

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

tags
string ou <xref:dict>
valor padrão: None

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

properties
string ou <xref:dict>
valor padrão: None

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

include_children
<xref:bool>
valor padrão: False

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

Retornos

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

Tipo de retorno

list

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

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

Parâmetros

workspace
Workspace

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

experiment_name
<xref:str>
valor padrão: None

Nome opcional para filtrar experimentos.

view_type
ViewType
valor padrão: ActiveOnly

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

tags
valor padrão: None

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

Retornos

Uma lista de objetos de experimento.

Tipo de retorno

reactivate

Reativa um experimento arquivado.

reactivate(new_name=None)

Parâmetros

new_name
<xref: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

tags
[<xref: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 inalteradas.

set_tags(tags)

Parâmetros

tags
<xref:dict>[<xref:str>]

As marcas armazenadas no objeto 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

experiment
Experiment

O experimento.

outputs
<xref:str>

Diretório de saídas opcionais a ser acompanhado.

snapshot_directory
<xref:str>

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

args
list
kwargs
<xref:dict>

Retornos

Retornar uma execução iniciada.

Tipo de retorno

Run

Comentários

start_logging cria uma execução interativa para uso em cenários como notebooks Jupyter. 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=".")
   ...
   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

config
<xref:object>

A configuração a ser enviada.

tags
<xref:dict>
valor padrão: None

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

kwargs
<xref:dict>

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

Retornos

Uma execução.

Tipo de retorno

Run

Comentários

Enviar é 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, o envio irá 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ção do experimento.

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

Um exemplo de como enviar um experimento de seu 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.

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

key
<xref:str>

A chave de marca

value
<xref: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

O tempo de arquivamento do experimento.

Tipo de retorno

<xref:str>

id

ID de retorno do experimento.

Retornos

A ID do experimento.

Tipo de retorno

<xref:str>

name

Nome de retorno do experimento.

Retornos

O nome do experimento.

Tipo de retorno

<xref:str>

tags

Retornar o conjunto mutável de marcas no experimento.

Retornos

As marcas em um experimento.

Tipo de retorno

<xref:dict>[<xref:str>]

workspace

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

Retornos

Retorna o objeto de espaço de trabalho.

Tipo de retorno

workspace_object

Preterido Retorne o espaço de trabalho que contém o experimento.

Use o workspace atributo.

Retornos

O objeto de espaço de trabalho.

Tipo de retorno