Experiment Classe

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

Uma Experiência é um recipiente de testes que representam múltiplas corridas de modelos.

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
Necessário

O objeto do espaço de trabalho que contém a experiência.

name
str
Necessário

O nome da experimentação.

kwargs
dict
Necessário

Um dicionário de palavras-chave.

_skip_name_validation
valor predefinido: False
_id
valor predefinido: None
_archived_time
valor predefinido: None
_create_in_cloud
valor predefinido: True
_experiment_dto
valor predefinido: None

Observações

Uma experiência de Aprendizagem automática Azure representa a coleção de ensaios usados para validar a hipótese de um utilizador.

Em Azure Machine Learning, uma experiência é representada pela Experiment classe e um julgamento é representado pela Run classe.

Para obter ou criar uma experiência a partir de um espaço de trabalho, você solicita a experiência usando o nome da experiência. O nome da experiência deve ser 3-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 a experiência não for encontrada no espaço de trabalho, uma nova experiência é criada.

Há duas formas de executar avaliações de experimentações. Se estiver a fazer experiências interativas num Jupyter Notebook, utilize start_logging se estiver a submeter uma experiência a partir de código fonte ou de algum outro tipo de ensaio configurado, utilizesubmit

Ambos os mecanismos criam um Run objeto. Em cenários interativos, utilize métodos de registo de registo, tais como log para adicionar medições e métricas ao registo experimental. Em cenários configurados, utilize métodos de estado como get_status para obter informações sobre a execução.

Em ambos os casos pode utilizar métodos de consulta como get_metrics recuperar os valores atuais, se houver, de quaisquer medições e métricas de ensaio.

Métodos

archive

Arquive uma experiência.

delete

Apague uma experiência no espaço de trabalho.

from_directory

(Depreciado) Carregue uma experiência do caminho especificado.

get_docs_url

Url para a documentação para esta classe.

get_runs

Devolve um gerador das corridas para esta experiência, por ordem cronológica inversa.

list

Devolva a lista de experiências no espaço de trabalho.

reactivate

Reativa uma experiência arquivada.

refresh

Devolva a versão mais recente da experiência da nuvem.

remove_tags

Elimine as etiquetas especificadas da experiência.

set_tags

Adicione ou modifique um conjunto de tags na experiência. As etiquetas não passadas no dicionário são deixadas intocadas.

start_logging

Inicie uma sessão de registo interativo e crie uma corrida interativa na experiência especificada.

submit

Submeta uma experiência e devolva a execução ativa criada.

tag

Marque a experiência com uma chave de corda e valor de corda opcional.

archive

Arquive uma experiência.

archive()

Observações

Após o arquivo, a experiência não será listada por defeito. Tentar escrever para uma experiência arquivada criará uma nova experiência ativa com o mesmo nome. Uma experiência arquivada pode ser restaurada ligando reactivate desde que não haja outra experiência ativa com o mesmo nome.

delete

Apague uma experiência no espaço de trabalho.

static delete(workspace, experiment_id)

Parâmetros

workspace
Workspace
Necessário

O espaço de trabalho a que pertence a experiência.

experiment_id
Necessário

A experiência de identificação da experiência a ser apagada.

from_directory

(Depreciado) Carregue uma experiência do caminho especificado.

static from_directory(path, auth=None)

Parâmetros

path
str
Necessário

Diretório contendo os ficheiros de configuração de experiências.

auth
ServicePrincipalAuthentication ou InteractiveLoginAuthentication
valor predefinido: None

O objeto auth. Se Nenhuma das credenciais padrão do Azure CLI for utilizada ou a API solicitará credenciais.

Devoluções

Devolve a Experiência

Tipo de retorno

get_docs_url

Url para a documentação para esta classe.

get_docs_url()

Devoluções

url

Tipo de retorno

str

get_runs

Devolve um gerador das corridas para esta experiência, por ordem cronológica inversa.

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

Parâmetros

type
string
valor predefinido: None

Filtrar o gerador devolvido das operações pelo tipo fornecido. Consulte add_type_provider a criação de tipos de execução.

tags
string ou dict
valor predefinido: None

O filtro funciona por "tag" ou {"tag": "valor"}.

properties
string ou dict
valor predefinido: None

Filtro funciona por "propriedade" ou {"propriedade": "valor"}

include_children
bool
valor predefinido: False

Por padrão, só vá buscar corridas de alto nível. Definido para ser verdadeiro para listar todas as corridas.

Devoluções

A lista de runs que combinam com os filtros fornecidos.

Tipo de retorno

list

Devolva a lista de experiências no espaço de trabalho.

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

Parâmetros

workspace
Workspace
Necessário

O espaço de trabalho para listar as experiências.

experiment_name
str
valor predefinido: None

Nome opcional para filtrar experiências.

view_type
ViewType
valor predefinido: ActiveOnly

Valor enum opcional para filtrar ou incluir experiências arquivadas.

tags
valor predefinido: None

Chave de etiqueta opcional ou dicionário de pares de valor-chave para filtrar experiências.

Devoluções

Uma lista de objetos experimentais.

Tipo de retorno

reactivate

Reativa uma experiência arquivada.

reactivate(new_name=None)

Parâmetros

new_name
str
Necessário

Já não suportado

Observações

Uma experiência arquivada só pode ser reativada se não houver outra experiência ativa com o mesmo nome.

refresh

Devolva a versão mais recente da experiência da nuvem.

refresh()

remove_tags

Elimine as etiquetas especificadas da experiência.

remove_tags(tags)

Parâmetros

tags
[str]
Necessário

As chaves de etiqueta que serão removidas

set_tags

Adicione ou modifique um conjunto de tags na experiência. As etiquetas não passadas no dicionário são deixadas intocadas.

set_tags(tags)

Parâmetros

tags
dict[str]
Necessário

As etiquetas armazenadas no objeto de experiência

start_logging

Inicie uma sessão de registo interativo e crie uma corrida interativa na experiência especificada.

start_logging(*args, **kwargs)

Parâmetros

experiment
Experiment
Necessário

A experiência.

outputs
str
Necessário

Diretório de saídas opcionais para rastrear.

snapshot_directory
str
Necessário

Diretório opcional para tirar uma foto de. A definição de Ninguém não tira nenhuma fotografia.

args
list
Necessário
kwargs
dict
Necessário

Devoluções

Devolva uma corrida iniciada.

Tipo de retorno

Run

Observações

start_logging cria uma corrida interativa para uso em cenários como Os Cadernos Jupyter. Quaisquer métricas registadas durante a sessão são adicionadas ao registo de execução na experiência. Se for especificado um diretório de saída, o conteúdo desse diretório é carregado como artefactos executados após a conclusão do prazo.


   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

run_id é gerado automaticamente para cada corrida e é único dentro da experiência.

submit

Submeta uma experiência e devolva a execução ativa criada.

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

Parâmetros

config
object
Necessário

O config a ser submetido.

tags
dict
valor predefinido: None

Tags a adicionar à execução submetida, {"tag": "valor"}.

kwargs
dict
Necessário

Parâmetros adicionais utilizados na função de submissão para configurações.

Devoluções

Uma corrida.

Tipo de retorno

Run

Observações

Submeter é uma chamada assíncrona para a plataforma Azure Machine Learning para executar um teste em hardware local ou remoto. Dependendo da configuração, a submissão irá preparar automaticamente os seus ambientes de execução, executar o seu código e capturar o seu código fonte e os resultados no histórico de execução da experiência.

Para submeter uma experiência, primeiro precisa de criar um objeto de configuração que descreva como a experiência deve ser executada. A configuração depende do tipo de ensaio necessário.

Um exemplo de como submeter uma experiência da 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

Nota

Quando submete a formação, uma imagem do diretório que contém os seus scripts de treino é criada e enviada para o alvo do cálculo. Também é armazenado como parte da experiência no seu espaço de trabalho. Se alterar ficheiros e submeter a execução novamente, apenas os ficheiros alterados serão carregados.

Para evitar que os ficheiros sejam incluídos no instantâneo, crie um ficheiro .gitignore ou .amlignore no diretório e adicione os ficheiros ao mesmo. O ficheiro .amlignore utiliza a mesma sintaxe e padrões que o ficheiro .gitignore. Se ambos os ficheiros existirem, o ficheiro .amlignore tem precedência.

Para mais informações, consulte Snapshots.

tag

Marque a experiência com uma chave de corda e valor de corda opcional.

tag(key, value=None)

Parâmetros

key
str
Necessário

A chave da etiqueta

value
str
Necessário

Um valor opcional para a etiqueta

Observações

As etiquetas de uma experiência são armazenadas num dicionário com teclas de corda e valores de cordas. As etiquetas podem ser definidas, atualizadas e eliminadas. As etiquetas são viradas para o utilizador e geralmente contêm informações que significam para os consumidores da experiência.


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

Atributos

archived_time

Devolva o tempo arquivado para a experiência. O valor deve ser nenhum para uma experiência ativa.

Devoluções

O tempo arquivado da experiência.

Tipo de retorno

str

id

Devolução da experiência.

Devoluções

A identificação da experiência.

Tipo de retorno

str

name

O nome de volta da experiência.

Devoluções

O nome da experiência.

Tipo de retorno

str

tags

Devolva o conjunto mutável de etiquetas na experiência.

Devoluções

As etiquetas de uma experiência.

Tipo de retorno

workspace

Devolva o espaço de trabalho que contém a experiência.

Devoluções

Devolve o objeto do espaço de trabalho.

Tipo de retorno

workspace_object

(Depreciado) Devolva o espaço de trabalho que contém a experiência.

Use o workspace atributo.

Devoluções

O objeto do espaço de trabalho.

Tipo de retorno