Run Classe

Define a classe base para todas as execuções de experimento do Azure Machine Learning.

Uma execução representa uma única avaliação de um experimento. Execuções são usadas para monitorar a execução assíncrona de uma avaliação, registrar métricas e armazenar saída dessa avaliação, bem como analisar resultados e acessar artefatos gerados por ela.

Os objetos de execução são criados quando você envia um script para treinar um modelo em vários cenários diferentes no Azure Machine Learning, incluindo execuções de HyperDrive, execuções de Pipeline e execuções de AutoML. Um objeto de Execução também é criado quando você submit ou start_logging com a classe Experiment.

Para começar com experimentos e execuções, confira

Inicialize o objeto Run.

Herança
azureml._run_impl.run_base._RunBase
Run

Construtor

Run(experiment, run_id, outputs=None, **kwargs)

Parâmetros

experiment
Experiment
Obrigatório

O experimento que o contém.

run_id
str
Obrigatório

A ID da execução.

outputs
str
valor padrão: None

As saídas a serem rastreadas.

_run_dto
<xref:azureml._restclient.models.run_dto.RunDto>
Obrigatório

Somente para uso interno.

kwargs
dict
Obrigatório

Um dicionário de parâmetros de configuração adicionais.

experiment
Experiment
Obrigatório

O experimento que o contém.

run_id
str
Obrigatório

A ID da execução.

outputs
str
Obrigatório

As saídas a serem rastreadas.

kwargs
dict
Obrigatório

Um dicionário de parâmetros de configuração adicionais.

Comentários

Uma execução representa uma única avaliação de um experimento. Um objeto de Execução é usado para monitorar a execução assíncrona de uma avaliação, registrar métricas e armazenar saída dessa avaliação, bem como analisar resultados e acessar artefatos gerados por ela.

A execução é usada dentro do código de experimentação para registrar métricas e artefatos no serviço de Histórico de Execuções.

A execução é usada fora de seus experimentos para monitorar o progresso e consultar e analisar as métricas e os resultados que foram gerados.

A funcionalidade da Execução inclui:

  • Armazenar e recuperar métricas e dados

  • Carregar e baixar arquivos

  • Usar marcas e a hierarquia de filhos para facilitar a pesquisa de execuções anteriores

  • Registrar arquivos de modelo armazenados como um modelo que pode ser operacionalizado

  • Armazenar, modificar e recuperar propriedades de uma execução

  • Carregar a execução atual de um ambiente remoto com o método get_context

  • Fazer instantâneo de forma eficiente de um arquivo ou diretório para reprodutibilidade

Essa classe funciona com o Experiment nestes cenários:

  • Criar uma execução executando o código usando submit

  • Criar uma execução interativamente em um notebook usando start_logging

  • Registrar métricas e carregar artefatos no experimento, como ao usar log

  • Ler métricas e baixar artefatos ao analisar resultados experimentais, como ao usar get_metrics

Para enviar uma execução, crie um objeto de configuração que descreva como o experimento é executado. Veja os seguintes exemplos dos diferentes objetos de configuração que você pode usar:

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.train.hyperdrive.HyperDriveConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

As métricas a seguir podem ser adicionadas a uma execução durante o treinamento de um experimento.

  • Escalar

    • Registrar um valor numérico ou de cadeia de caracteres para a execução com o nome fornecido usando log. Registrar uma métrica em log para uma execução faz essa métrica ser armazenada no registro de execução no experimento. Você pode registrar em log a mesma métrica várias vezes dentro de uma execução, sendo o resultado considerado um vetor dessa métrica.

    • Exemplo: run.log("accuracy", 0.95)

  • Lista

    • Registrar uma lista de valores para a execução com o nome fornecido usando log_list.

    • Exemplo: run.log_list("accuracies", [0.6, 0.7, 0.87])

  • Linha

    • O uso de log_row cria uma métrica com várias colunas, conforme descrito em kwargs. Cada parâmetro nomeado gera uma coluna com o valor especificado. log_row pode ser chamado uma vez para registrar em log uma tupla arbitrária ou várias vezes em loop para gerar uma tabela completa.

    • Exemplo: run.log_row("Y over X", x=1, y=0.4)

  • Tabela

    • Registrar um objeto de dicionário na execução com o nome fornecido usando log_table.

    • Exemplo: run.log_table("Y over X", {"x":[1, 2, 3], "y":[0.6, 0.7, 0.89]})

  • Image

    • Faça logon uma imagem ao registro de execução. Use log_image para registrar um arquivo de imagem ou um gráfico matplotlib para a execução. Essas imagens serão visíveis e comparáveis no registro de execução.

    • Exemplo: run.log_image("ROC", path)

Métodos

add_properties

Adicionar propriedades imutáveis à execução.

As marcas e propriedades (ambas dict[str, str]) diferem em sua imutabilidade. As propriedades são imutáveis e, portanto, criam um registro permanente para fins de auditoria. As marcas são mutáveis. Para obter mais informações sobre como trabalhar com marcas e propriedades, consulte Marcas e localizar execuções.

add_type_provider

Gancho de extensibilidade para tipos de Execução personalizados armazenados no Histórico de Execuções.

cancel

Marcar a execução como cancelada.

Se houver um trabalho associado com um campo cancel_uri definido, termine esse trabalho também.

child_run

Criar uma execução filho.

clean

Remover os arquivos correspondentes para a execução atual no destino especificado na configuração de execução.

complete

Aguardar a fila de tarefas ser processada.

Em seguida, a execução é marcada como concluída. Isso normalmente é usado em cenários de bloco de anotações interativo.

create_children

Criar uma ou várias execuções filho.

download_file

Baixar um arquivo associado do armazenamento.

download_files

Baixar arquivos de um determinado prefixo de armazenamento (nome da pasta) ou do contêiner inteiro se o prefixo não for especificado.

fail

Marcar a execução como falha.

Se desejar, defina a propriedade de Erro da execução com uma mensagem ou exceção passada para error_details.

flush

Aguardar a fila de tarefas ser processada.

get

Obter a execução para este workspace com sua ID de execução.

get_all_logs

Baixar todos os logs para a execução em um diretório.

get_children

Obter todos os filhos para a execução atual selecionada por filtros especificados.

get_context

Retornar o contexto de serviço atual.

Use este método para recuperar o contexto de serviço atual para registrar métricas em log e carregar arquivos. Se allow_offline for True (o padrão), as ações em relação ao objeto de Execução serão impressas no padrão.

get_detailed_status

Buscar o status mais recente da execução. Se o status da execução for "Queued", ele mostrará os detalhes.

get_details

Obter a definição, as informações de status, os arquivos de log atuais e outros detalhes da execução.

get_details_with_logs

Retornar o status de execução, incluindo o conteúdo do arquivo de log.

get_environment

Obter a definição de ambiente que foi usada por essa execução.

get_file_names

Listar os arquivos que são armazenados em associação com a execução.

get_metrics

Recuperar as métricas registradas para a execução.

Se recursive for True (False por padrão), busque métricas para execuções na subárvore da execução especificada.

get_properties

Buscar as propriedades mais recentes da execução do serviço.

get_secret

Obter o valor do segredo no contexto de uma execução.

Obter o valor do segredo para o nome fornecido. O nome do segredo faz referência a um valor armazenado no Azure Key Vault associado ao workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento.

get_secrets

Obter os valores de segredos para uma determinada lista de nomes de segredos.

Obter um dicionário de segredos encontrados e não encontrados para a lista de nomes fornecidos. Cada nome do segredo faz referência a um valor armazenado no Azure Key Vault associado ao workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento.

get_snapshot_id

Obter a ID do instantâneo mais recente.

get_status

Buscar o status mais recente da execução.

Os valores comuns retornados incluem "Running", "Completed" e "Failed".

get_submitted_run

PRETERIDO. Use get_context.

Obter a execução enviada para este experimento.

get_tags

Buscar o conjunto mais recente de marcas mutáveis na execução do serviço.

list

Obter uma lista de execuções em um experimento especificado por filtros opcionais.

list_by_compute

Obter uma lista de execuções em uma computação especificada por filtros opcionais.

log

Registre em log um valor de métrica para a execução com o nome fornecido.

log_accuracy_table

Registrar uma tabela de precisão no armazenamento de artefatos.

A métrica de tabela de precisão é uma métrica multiuso não escalar que pode ser usada para produzir vários tipos de gráficos de linhas que variam continuamente no espaço de probabilidades previstas. Exemplos desses gráficos são ROC, recall de precisão e curvas de desempenho.

O cálculo da tabela de precisão é semelhante ao cálculo de uma curva ROC. Uma curva ROC armazena taxas de verdadeiro positivo e taxas de falso positivo em muitos limites de probabilidade diferentes. A tabela de precisão armazena o número bruto de verdadeiros positivos, falsos positivos, verdadeiros negativos e falsos negativos em muitos limites de probabilidade.

Há dois métodos usados para selecionar limites: "probabilidade" e "percentil". Eles diferem em como fazem a amostra do espaço de probabilidades previstas.

Os limites de probabilidade são limites de espaço uniforme entre 0 e 1. Se NUM_POINTS for 5, os limites de probabilidade serão [0.0, 0.25, 0.5, 0.75, 1.0].

Os limites de percentil são espaçados de acordo com a distribuição das probabilidades previstas. Cada limite corresponde ao percentil dos dados em um limite de probabilidade. Por exemplo, se NUM_POINTS for 5, o primeiro limite será no 0º percentil, o segundo no 25º percentil, o terceiro no 50º e assim por diante.

As tabelas de probabilidade e as tabelas de percentil são listas 3D em que a primeira dimensão representa o rótulo de classe; a segunda dimensão representa a amostra em um limite (escalas com NUM_POINTS); e a terceira dimensão sempre tem 4 valores: TP, FP, TN, FN e sempre nessa ordem.

Os valores de confusão (TP, FP, TN, FN) são computados com a estratégia one vs. rest. Veja o link a seguir para obter mais detalhes: https://en.wikipedia.org/wiki/Multiclass_classification

N = nº de exemplos no conjunto de dados de validação (200 no exemplo) M = nº de limites = nº de amostras retiradas do espaço de probabilidade (5 no exemplo) C = nº de classes no conjunto de dados completo (3 no exemplo)

Algumas invariáveis da tabela de precisão:

  • TP + FP + TN + FN = N para todos os limites para todas as classes
  • TP + FN é o mesmo em todos os limites para qualquer classe
  • TN + FP é o mesmo em todos os limites para qualquer classe
  • As tabelas de probabilidade e tabelas de percentil têm forma [C, M, 4]

Observação: M pode ser qualquer valor e controla a resolução dos gráficos Isso é independente do conjuntos de dados, é definido ao calcular métricas e compensa o espaço de armazenamento, o tempo de computação e a resolução.

Os rótulos de classe devem ser cadeias de caracteres; valores de confusão devem ser inteiros; e os limites devem ser floats.

log_confusion_matrix

Registrar uma matriz de confusão no armazenamento de artefatos.

Isso registra um wrapper em torno da matriz de confusão sklearn. Os dados de métrica contêm os rótulos de classe e uma lista 2D para a própria matriz. Confira o link a seguir para obter mais detalhes sobre como a métrica é computada: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html

log_image

Registre em log uma métrica de imagem para o registro de execução.

log_list

Registrar uma lista de valores de métrica para a execução com o nome fornecido.

log_predictions

Registrar previsões no armazenamento de artefatos.

Isso registra uma pontuação de métrica que pode ser usada para comparar as distribuições de valores de destino verdadeiros com a distribuição de valores previstos para uma tarefa de regressão.

As previsões são compartimentadas, e os desvios padrão são calculados para barras de erro em um gráfico de linhas.

log_residuals

Registrar resíduos no armazenamento de artefatos.

Isso registra os dados necessários para exibir um histograma de resíduos para uma tarefa de regressão. Os resíduos são previstos – reais.

Deve haver uma borda a mais do que o número de contagens. Consulte a documentação do histograma numpy para ver exemplos de uso de contagens e bordas para representar um histograma. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_row

Registrar uma métrica de linha para a execução com o nome fornecido.

log_table

Registrar em log uma métrica de tabela para a execução com o nome fornecido.

register_model

Registrar um modelo para operacionalização.

remove_tags

Excluir a lista de marcas mutáveis nesta execução.

restore_snapshot

Restaurar um instantâneo como um arquivo ZIP. Retorna o caminho para o ZIP.

set_tags

Adicionar ou modificar um conjunto de marcas na execução. As marcas não passadas no dicionário são deixadas inalteradas.

Você também pode adicionar marcações de cadeia de caracteres simples. Quando essas marcas aparecem no dicionário de marcas como chaves, elas têm um valor None. Para obter mais informações, consulte Marcas e localizar execuções.

start

Marcar a execução como iniciada.

Normalmente, isso é usado em cenários avançados quando a execução foi criada por outro ator.

submit_child

Enviar um experimento e retornar a execução filho ativa.

tag

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

take_snapshot

Salvar um instantâneo da pasta ou do arquivo de entrada.

upload_file

Carregar um arquivo para o registro de execução.

upload_files

Carregar arquivos para o registro de execução.

upload_folder

Carregar a pasta especificada para o nome de prefixo fornecido.

wait_for_completion

Aguardar a conclusão desta execução. Retorna o objeto de status após a espera.

add_properties

Adicionar propriedades imutáveis à execução.

As marcas e propriedades (ambas dict[str, str]) diferem em sua imutabilidade. As propriedades são imutáveis e, portanto, criam um registro permanente para fins de auditoria. As marcas são mutáveis. Para obter mais informações sobre como trabalhar com marcas e propriedades, consulte Marcas e localizar execuções.

add_properties(properties)

Parâmetros

properties
dict
Obrigatório

As propriedades ocultas armazenadas no objeto de execução.

add_type_provider

Gancho de extensibilidade para tipos de Execução personalizados armazenados no Histórico de Execuções.

static add_type_provider(runtype, run_factory)

Parâmetros

runtype
str
Obrigatório

O valor de Run.type para o qual o alocador será invocado. Os exemplos incluem 'hyperdrive' ou 'azureml.scriptrun', mas podem ser estendidos com tipos personalizados.

run_factory
<xref:function>
Obrigatório

Uma função com assinatura (Experiment, RunDto) -> Run a ser invocada quando a listagem é executada.

cancel

Marcar a execução como cancelada.

Se houver um trabalho associado com um campo cancel_uri definido, termine esse trabalho também.

cancel()

child_run

Criar uma execução filho.

child_run(name=None, run_id=None, outputs=None)

Parâmetros

name
str
valor padrão: None

Um nome opcional para a execução filho, normalmente especificada para uma "parte".

run_id
str
valor padrão: None

Uma ID de execução opcional para o filho, caso contrário, ela será gerada automaticamente. Normalmente, esse parâmetro não está definido.

outputs
str
valor padrão: None

Diretório de saídas opcional para rastrear o filho.

Retornos

A execução filho.

Tipo de retorno

Run

Comentários

Isso é usado para isolar parte de uma execução em uma subseção. Isso pode ser feito para "partes" identificáveis de uma execução que são interessantes para separar ou capturar métricas independentes em uma interação de um subprocesso.

Se um diretório de saída for definido para a execução filho, o conteúdo desse diretório será carregado para o registro da execução filho quando o filho for concluído.

clean

Remover os arquivos correspondentes para a execução atual no destino especificado na configuração de execução.

clean()

Retornos

Uma lista de arquivos excluídos.

Tipo de retorno

complete

Aguardar a fila de tarefas ser processada.

Em seguida, a execução é marcada como concluída. Isso normalmente é usado em cenários de bloco de anotações interativo.

complete(_set_status=True)

Parâmetros

_set_status
bool
valor padrão: True

Indica se o evento de status deve ser enviado para rastreamento.

create_children

Criar uma ou várias execuções filho.

create_children(count=None, tag_key=None, tag_values=None)

Parâmetros

count
int
valor padrão: None

Um número opcional de filhos a serem criados.

tag_key
str
valor padrão: None

Uma chave opcional para preencher a entrada de Marcas em todos os filhos criados.

tag_Values
Obrigatório

Uma lista opcional de valores que serão mapeados para as Marcas [tag_key] na lista de execuções criadas.

tag_values
valor padrão: None

Retornos

A lista de execuções filho.

Tipo de retorno

Comentários

O parâmetro count OU os parâmetros tag_key E tag_values devem ser especificados.

download_file

Baixar um arquivo associado do armazenamento.

download_file(name, output_file_path=None, _validate_checksum=False)

Parâmetros

name
str
Obrigatório

O nome do artefato de compilação a ser baixado.

output_file_path
str
Obrigatório

O caminho local onde armazenar o artefato.

download_files

Baixar arquivos de um determinado prefixo de armazenamento (nome da pasta) ou do contêiner inteiro se o prefixo não for especificado.

download_files(prefix=None, output_directory=None, output_paths=None, batch_size=100, append_prefix=True, timeout_seconds=None)

Parâmetros

prefix
str
Obrigatório

O prefixo filepath dentro do contêiner do qual baixar todos os artefatos.

output_directory
str
Obrigatório

Um diretório opcional que todos os caminhos de artefato usam como um prefixo.

output_paths
[str]
Obrigatório

filepaths opcionais nos quais armazenar os artefatos baixados. Deve ser exclusivo e corresponder ao tamanho dos caminhos.

batch_size
int
Obrigatório

O número de arquivos a serem baixados por lote. O padrão é 100 arquivos.

append_prefix
bool
Obrigatório

Um sinalizador opcional para acrescentar o prefixo especificado do caminho do arquivo de saída final. Se for Falso, o prefixo será removido do caminho do arquivo de saída.

timeout_seconds
int
Obrigatório

O tempo limite para baixar arquivos.

fail

Marcar a execução como falha.

Se desejar, defina a propriedade de Erro da execução com uma mensagem ou exceção passada para error_details.

fail(error_details=None, error_code=None, _set_status=True)

Parâmetros

error_details
str ou BaseException
valor padrão: None

Detalhes opcionais do erro.

error_code
str
valor padrão: None

Código opcional do erro para a classificação de erro.

_set_status
bool
valor padrão: True

Indica se o evento de status deve ser enviado para rastreamento.

flush

Aguardar a fila de tarefas ser processada.

flush(timeout_seconds=300)

Parâmetros

timeout_seconds
int
valor padrão: 300

Quanto tempo aguardar (em segundos) para que a fila de tarefas seja processada.

get

Obter a execução para este workspace com sua ID de execução.

static get(workspace, run_id)

Parâmetros

workspace
Workspace
Obrigatório

O workspace que contém.

run_id
string
Obrigatório

A ID de execução.

Retornos

A execução enviada.

Tipo de retorno

Run

get_all_logs

Baixar todos os logs para a execução em um diretório.

get_all_logs(destination=None)

Parâmetros

destination
str
valor padrão: None

O caminho de destino para armazenar logs. Se não for especificado, um diretório chamado como ID de execução será criado no diretório do projeto.

Retornos

Uma lista de nomes de logs baixados.

Tipo de retorno

get_children

Obter todos os filhos para a execução atual selecionada por filtros especificados.

get_children(recursive=False, tags=None, properties=None, type=None, status=None, _rehydrate_runs=True)

Parâmetros

recursive
bool
valor padrão: False

Indica se deve recorrer a todos os descendentes.

tags
str ou dict
valor padrão: None

Se especificado, retorna execuções que correspondem a "tag" ou {"tag": "value"} especificado.

properties
str ou dict
valor padrão: None

Se especificado, retorna execuções que correspondem a "property" ou {"property": "value"} especificado.

type
str
valor padrão: None

Se especificado, retorna execuções que correspondem a este tipo.

status
str
valor padrão: None

Se especificado, retorna execuções com o status especificado "status".

_rehydrate_runs
bool
valor padrão: True

Indica se deve criar uma instância de uma execução do tipo original ou da Execução base.

Retornos

Uma lista de objetos Run.

Tipo de retorno

get_context

Retornar o contexto de serviço atual.

Use este método para recuperar o contexto de serviço atual para registrar métricas em log e carregar arquivos. Se allow_offline for True (o padrão), as ações em relação ao objeto de Execução serão impressas no padrão.

get_context(allow_offline=True, used_for_context_manager=False, **kwargs)

Parâmetros

cls
Obrigatório

Indica o método de classe.

allow_offline
bool
valor padrão: True

Permitir que o contexto de serviço volte ao modo offline para que o script de treinamento possa ser testado localmente sem enviar um trabalho com o SDK. True por padrão.

kwargs
dict
Obrigatório

Um dicionário de parâmetros opcionais.

used_for_context_manager
valor padrão: False

Retornos

A execução enviada.

Tipo de retorno

Run

Comentários

Normalmente, esta função é usada para recuperar o objeto de Execução autenticado dentro de um script a ser enviado para execução por meio de experiment.submit(). Esse objeto de execução é um contexto autenticado para se comunicar com os serviços do Azure Machine Learning e um contêiner conceitual dentro do qual há métricas, arquivos (artefatos) e modelos.


   run = Run.get_context() # allow_offline=True by default, so can be run locally as well
   ...
   run.log("Accuracy", 0.98)
   run.log_row("Performance", epoch=e, error=err)

get_detailed_status

Buscar o status mais recente da execução. Se o status da execução for "Queued", ele mostrará os detalhes.

get_detailed_status()

Retornos

O status e os detalhes mais recentes

Tipo de retorno

Comentários

  • status: o status atual da execução. Mesmo valor que o retornado de get_status().

  • details: as informações detalhadas do status atual.


   run = experiment.submit(config)
   details = run.get_detailed_status()
   # details = {
   #     'status': 'Queued',
   #     'details': 'Run requested 1 node(s). Run is in pending status.',
   # }

get_details

Obter a definição, as informações de status, os arquivos de log atuais e outros detalhes da execução.

get_details()

Retornos

Retornar os detalhes da execução

Tipo de retorno

Comentários

O dicionário retornado contém os seguintes pares chave-valor:

  • runId: ID desta execução.

  • destino

  • status: o status atual da execução. Mesmo valor que o retornado de get_status().

  • startTimeUtc: hora UTC de quando essa execução foi iniciada, em ISO8601.

  • endTimeUtc: hora UTC de quando essa execução foi concluída (Concluída ou Falhou), em ISO8601.

    Essa chave não existe caso a execução ainda esteja em andamento.

  • properties: pares chave-valor imutáveis associados à execução. As propriedades padrão incluem a ID de instantâneo da execução e as informações sobre o repositório git do qual a execução foi criada (se houver). Outras propriedades podem ser adicionadas a uma execução usando add_properties.

  • inputDatasets: conjuntos de dados de entrada associados à execução.

  • outputDatasets: conjuntos de dados de saída associados à execução.

  • logFiles

  • submittedBy


   run = experiment.start_logging()

   details = run.get_details()
   # details = {
   #     'runId': '5c24aa28-6e4a-4572-96a0-fb522d26fe2d',
   #     'target': 'sdk',
   #     'status': 'Running',
   #     'startTimeUtc': '2019-01-01T13:08:01.713777Z',
   #     'endTimeUtc': '2019-01-01T17:15:65.986253Z',
   #     'properties': {
   #         'azureml.git.repository_uri': 'https://example.com/my/git/repo',
   #         'azureml.git.branch': 'master',
   #         'azureml.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'azureml.git.dirty': 'True',
   #         'mlflow.source.git.repoURL': 'https://example.com/my/git/repo',
   #         'mlflow.source.git.branch': 'master',
   #         'mlflow.source.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'ContentSnapshotId': 'b4689489-ce2f-4db5-b6d7-6ad11e77079c'
   #     },
   #     'inputDatasets': [{
   #         'dataset': {'id': 'cdebf245-701d-4a68-8055-41f9cf44f298'},
   #         'consumptionDetails': {
   #             'type': 'RunInput',
   #             'inputName': 'training-data',
   #             'mechanism': 'Mount',
   #             'pathOnCompute': '/mnt/datasets/train'
   #         }
   #     }],
   #     'outputDatasets': [{
   #         'dataset': {'id': 'd04e8a19-1caa-4b1f-b318-4cbff9af9615'},
   #         'outputType': 'RunOutput',
   #         'outputDetails': {
   #             'outputName': 'training-result'
   #         }
   #     }],
   #     'runDefinition': {},
   #     'logFiles': {},
   #     'submittedBy': 'Alan Turing'
   # }

get_details_with_logs

Retornar o status de execução, incluindo o conteúdo do arquivo de log.

get_details_with_logs()

Retornos

Retorna o status da execução com o conteúdo do arquivo de log.

Tipo de retorno

get_environment

Obter a definição de ambiente que foi usada por essa execução.

get_environment()

Retornos

Retornar o objeto de ambiente.

Tipo de retorno

get_file_names

Listar os arquivos que são armazenados em associação com a execução.

get_file_names()

Retornos

A lista de caminhos para artefatos existentes

Tipo de retorno

get_metrics

Recuperar as métricas registradas para a execução.

Se recursive for True (False por padrão), busque métricas para execuções na subárvore da execução especificada.

get_metrics(name=None, recursive=False, run_type=None, populate=False)

Parâmetros

name
str
valor padrão: None

O nome da métrica.

recursive
bool
valor padrão: False

Indica se deve recorrer a todos os descendentes.

run_type
str
valor padrão: None
populate
bool
valor padrão: False

Indica se deve buscar o conteúdo de dados externos vinculados à métrica.

Retornos

Um dicionário que contém as métricas de usuários.

Tipo de retorno

Comentários


   run = experiment.start_logging() # run id: 123
   run.log("A", 1)
   with run.child_run() as child: # run id: 456
       child.log("A", 2)

   metrics = run.get_metrics()
   # metrics = { 'A': 1 }

   metrics = run.get_metrics(recursive=True)
   # metrics = { '123': { 'A': 1 }, '456': { 'A': 2 } } note key is runId

get_properties

Buscar as propriedades mais recentes da execução do serviço.

get_properties()

Retornos

As propriedades da execução.

Tipo de retorno

Comentários

As propriedades são informações imutáveis geradas pelo sistema, como duração, data de execução, usuário e propriedades personalizadas adicionadas com o add_properties método. Para obter mais informações, consulte Marcas e localizar execuções.

Ao enviar um trabalho para o Azure Machine Learning, se os arquivos de origem forem armazenados em um repositório git local, as informações sobre o repositório serão armazenadas como propriedades. Essas propriedades git são adicionadas ao criar uma execução ou chamar Experiment.submit. Para obter mais informações sobre as propriedades git, confira Integração de git para o Azure Machine Learning.

get_secret

Obter o valor do segredo no contexto de uma execução.

Obter o valor do segredo para o nome fornecido. O nome do segredo faz referência a um valor armazenado no Azure Key Vault associado ao workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento.

get_secret(name)

Parâmetros

name
str
Obrigatório

O nome do segredo para o qual retornar um segredo.

Retornos

O valor do segredo.

Tipo de retorno

str

get_secrets

Obter os valores de segredos para uma determinada lista de nomes de segredos.

Obter um dicionário de segredos encontrados e não encontrados para a lista de nomes fornecidos. Cada nome do segredo faz referência a um valor armazenado no Azure Key Vault associado ao workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento.

get_secrets(secrets)

Parâmetros

secrets
list[str]
Obrigatório

Uma lista de nomes de segredos para os quais retornar valores secretos.

Retornos

Retorna um dicionário de segredos encontrados e não encontrados.

Tipo de retorno

dict[<xref:str: str>]

get_snapshot_id

Obter a ID do instantâneo mais recente.

get_snapshot_id()

Retornos

A ID de instantâneo mais recente.

Tipo de retorno

str

get_status

Buscar o status mais recente da execução.

Os valores comuns retornados incluem "Running", "Completed" e "Failed".

get_status()

Retornos

O status mais recente.

Tipo de retorno

str

Comentários

  • NotStarted – É um estado temporário em que os objetos de Execução do lado do cliente estão presentes antes do envio para a nuvem.

  • Starting – A Execução começou a ser processada na nuvem. O chamador tem uma ID de execução neste ponto.

  • Provisioning – Retornado quando a computação sob demanda está sendo criada para um determinado envio de trabalho.

  • Preparing – O ambiente de execução está sendo preparado:

    • docker image build

    • conda environment setup

  • Queued – O trabalho é enfileirado no destino de computação. Por exemplo, em BatchAI, o trabalho está na fila

    enquanto aguarda que todos os nós solicitados estejam prontos.

  • Running – O trabalho começou a ser executado no destino de computação.

  • Finalizing – O código do usuário foi concluído e a execução está nos estágios de pós-processamento.

  • CancelRequested – O cancelamento foi solicitado para o trabalho.

  • Completed – A execução foi concluída com sucesso. Isso inclui o código do usuário e a execução

    estágios de pós-processamento.

  • Failed – A execução falhou. Normalmente, a propriedade de Erro em uma execução fornecerá detalhes sobre o motivo.

  • Canceled – Segue uma solicitação de cancelamento e indica que a execução foi cancelada com êxito.

  • NotResponding – Para execuções que têm Pulsações habilitadas, nenhuma pulsação foi enviada recentemente.


   run = experiment.submit(config)
   while run.get_status() not in ['Completed', 'Failed']: # For example purposes only, not exhaustive
       print('Run {} not in terminal state'.format(run.id))
       time.sleep(10)

get_submitted_run

PRETERIDO. Use get_context.

Obter a execução enviada para este experimento.

get_submitted_run(**kwargs)

Retornos

A execução enviada.

Tipo de retorno

Run

get_tags

Buscar o conjunto mais recente de marcas mutáveis na execução do serviço.

get_tags()

Retornos

As marcas armazenadas no objeto de execução.

Tipo de retorno

list

Obter uma lista de execuções em um experimento especificado por filtros opcionais.

static list(experiment, type=None, tags=None, properties=None, status=None, include_children=False, _rehydrate_runs=True)

Parâmetros

experiment
Experiment
Obrigatório

O experimento que o contém.

type
str
valor padrão: None

Se especificado, retorna execuções que correspondem ao tipo especificado.

tags
str ou dict
valor padrão: None

Se especificado, retorna execuções que correspondem a "tag" ou {"tag": "value"} especificado.

properties
str ou dict
valor padrão: None

Se especificado, retorna execuções que correspondem a "property" ou {"property": "value"} especificado.

status
str
valor padrão: None

Se especificado, retorna execuções com o status especificado "status".

include_children
bool
valor padrão: False

Se definido como true, busca todas as execuções, não apenas as de nível superior.

_rehydrate_runs
bool
valor padrão: True

Se definido como True (por padrão), usará o provedor registrado para recriar a instância de um objeto nesse tipo em vez da Execução base.

Retornos

Uma lista de execuções.

Tipo de retorno

Comentários

O exemplo de código a seguir mostra alguns usos do método list.


   favorite_completed_runs = Run.list(experiment, status='Completed', tags='favorite')

   all_distinct_runs = Run.list(experiment)
   and_their_children = Run.list(experiment, include_children=True)

   only_script_runs = Run.list(experiment, type=ScriptRun.RUN_TYPE)

list_by_compute

Obter uma lista de execuções em uma computação especificada por filtros opcionais.

static list_by_compute(compute, type=None, tags=None, properties=None, status=None)

Parâmetros

compute
ComputeTarget
Obrigatório

A computação que contém.

type
str
valor padrão: None

Se especificado, retorna execuções que correspondem ao tipo especificado.

tags
str ou dict
valor padrão: None

Se especificado, retorna execuções que correspondem a "tag" ou {"tag": "value"} especificado.

properties
str ou dict
valor padrão: None

Se especificado, retorna execuções que correspondem a "property" ou {"property": "value"} especificado.

status
str
valor padrão: None

Se especificado, retorna execuções com o status especificado "status". Somente os valores permitidos são "Running" e "Queued".

Retornos

um gerador de ~_restclient.models.RunDto

Tipo de retorno

<xref:builtin.generator>

log

Registre em log um valor de métrica para a execução com o nome fornecido.

log(name, value, description='', step=None)

Parâmetros

name
str
Obrigatório

O nome da métrica.

value
Obrigatório

O valor a ser postado no serviço.

description
str
Obrigatório

Uma descrição de métrica opcional.

step
int
valor padrão: None

Um eixo opcional para especificar a ordem de valor em uma métrica.

Comentários

Registrar uma métrica em log para uma execução faz essa métrica ser armazenada no registro de execução no experimento. Você pode registrar em log a mesma métrica várias vezes dentro de uma execução, sendo o resultado considerado um vetor dessa métrica. Se a etapa for especificada para uma métrica, deverá ser especificada para todos os valores.

log_accuracy_table

Registrar uma tabela de precisão no armazenamento de artefatos.

A métrica de tabela de precisão é uma métrica multiuso não escalar que pode ser usada para produzir vários tipos de gráficos de linhas que variam continuamente no espaço de probabilidades previstas. Exemplos desses gráficos são ROC, recall de precisão e curvas de desempenho.

O cálculo da tabela de precisão é semelhante ao cálculo de uma curva ROC. Uma curva ROC armazena taxas de verdadeiro positivo e taxas de falso positivo em muitos limites de probabilidade diferentes. A tabela de precisão armazena o número bruto de verdadeiros positivos, falsos positivos, verdadeiros negativos e falsos negativos em muitos limites de probabilidade.

Há dois métodos usados para selecionar limites: "probabilidade" e "percentil". Eles diferem em como fazem a amostra do espaço de probabilidades previstas.

Os limites de probabilidade são limites de espaço uniforme entre 0 e 1. Se NUM_POINTS for 5, os limites de probabilidade serão [0.0, 0.25, 0.5, 0.75, 1.0].

Os limites de percentil são espaçados de acordo com a distribuição das probabilidades previstas. Cada limite corresponde ao percentil dos dados em um limite de probabilidade. Por exemplo, se NUM_POINTS for 5, o primeiro limite será no 0º percentil, o segundo no 25º percentil, o terceiro no 50º e assim por diante.

As tabelas de probabilidade e as tabelas de percentil são listas 3D em que a primeira dimensão representa o rótulo de classe; a segunda dimensão representa a amostra em um limite (escalas com NUM_POINTS); e a terceira dimensão sempre tem 4 valores: TP, FP, TN, FN e sempre nessa ordem.

Os valores de confusão (TP, FP, TN, FN) são computados com a estratégia one vs. rest. Veja o link a seguir para obter mais detalhes: https://en.wikipedia.org/wiki/Multiclass_classification

N = nº de exemplos no conjunto de dados de validação (200 no exemplo) M = nº de limites = nº de amostras retiradas do espaço de probabilidade (5 no exemplo) C = nº de classes no conjunto de dados completo (3 no exemplo)

Algumas invariáveis da tabela de precisão:

  • TP + FP + TN + FN = N para todos os limites para todas as classes
  • TP + FN é o mesmo em todos os limites para qualquer classe
  • TN + FP é o mesmo em todos os limites para qualquer classe
  • As tabelas de probabilidade e tabelas de percentil têm forma [C, M, 4]

Observação: M pode ser qualquer valor e controla a resolução dos gráficos Isso é independente do conjuntos de dados, é definido ao calcular métricas e compensa o espaço de armazenamento, o tempo de computação e a resolução.

Os rótulos de classe devem ser cadeias de caracteres; valores de confusão devem ser inteiros; e os limites devem ser floats.

log_accuracy_table(name, value, description='')

Parâmetros

name
str
Obrigatório

O nome da tabela de precisão.

value
str ou dict
Obrigatório

JSON que contém propriedades de nome, versão e dados.

description
str
Obrigatório

Uma descrição de métrica opcional.

Comentários

Exemplo de um valor JSON válido:


   {
       "schema_type": "accuracy_table",
       "schema_version": "1.0.1",
       "data": {
           "probability_tables": [
               [
                   [82, 118, 0, 0],
                   [75, 31, 87, 7],
                   [66, 9, 109, 16],
                   [46, 2, 116, 36],
                   [0, 0, 118, 82]
               ],
               [
                   [60, 140, 0, 0],
                   [56, 20, 120, 4],
                   [47, 4, 136, 13],
                   [28, 0, 140, 32],
                   [0, 0, 140, 60]
               ],
               [
                   [58, 142, 0, 0],
                   [53, 29, 113, 5],
                   [40, 10, 132, 18],
                   [24, 1, 141, 34],
                   [0, 0, 142, 58]
               ]
           ],
           "percentile_tables": [
               [
                   [82, 118, 0, 0],
                   [82, 67, 51, 0],
                   [75, 26, 92, 7],
                   [48, 3, 115, 34],
                   [3, 0, 118, 79]
               ],
               [
                   [60, 140, 0, 0],
                   [60, 89, 51, 0],
                   [60, 41, 99, 0],
                   [46, 5, 135, 14],
                   [3, 0, 140, 57]
               ],
               [
                   [58, 142, 0, 0],
                   [56, 93, 49, 2],
                   [54, 47, 95, 4],
                   [41, 10, 132, 17],
                   [3, 0, 142, 55]
               ]
           ],
           "probability_thresholds": [0.0, 0.25, 0.5, 0.75, 1.0],
           "percentile_thresholds": [0.0, 0.01, 0.24, 0.98, 1.0],
           "class_labels": ["0", "1", "2"]
       }
   }

log_confusion_matrix

Registrar uma matriz de confusão no armazenamento de artefatos.

Isso registra um wrapper em torno da matriz de confusão sklearn. Os dados de métrica contêm os rótulos de classe e uma lista 2D para a própria matriz. Confira o link a seguir para obter mais detalhes sobre como a métrica é computada: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html

log_confusion_matrix(name, value, description='')

Parâmetros

name
str
Obrigatório

O nome da matriz de confusão.

value
str ou dict
Obrigatório

JSON que contém propriedades de nome, versão e dados.

description
str
Obrigatório

Uma descrição de métrica opcional.

Comentários

Exemplo de um valor JSON válido:


   {
       "schema_type": "confusion_matrix",
       "schema_version": "1.0.0",
       "data": {
           "class_labels": ["0", "1", "2", "3"],
           "matrix": [
               [3, 0, 1, 0],
               [0, 1, 0, 1],
               [0, 0, 1, 0],
               [0, 0, 0, 1]
           ]
       }
   }

log_image

Registre em log uma métrica de imagem para o registro de execução.

log_image(name, path=None, plot=None, description='')

Parâmetros

name
str
Obrigatório

O nome da métrica.

path
str
Obrigatório

O caminho ou fluxo da imagem.

plot
<xref:matplotlib.pyplot>
Obrigatório

O gráfico a ser registrado como uma imagem.

description
str
Obrigatório

Uma descrição de métrica opcional.

Comentários

Use esse método para registrar um arquivo de imagem ou um gráfico matplotlib para a execução. Essas imagens serão visíveis e comparáveis no registro de execução.

log_list

Registrar uma lista de valores de métrica para a execução com o nome fornecido.

log_list(name, value, description='')

Parâmetros

name
str
Obrigatório

O nome da métrica.

value
list
Obrigatório

Os valores da métrica.

description
str
Obrigatório

Uma descrição de métrica opcional.

log_predictions

Registrar previsões no armazenamento de artefatos.

Isso registra uma pontuação de métrica que pode ser usada para comparar as distribuições de valores de destino verdadeiros com a distribuição de valores previstos para uma tarefa de regressão.

As previsões são compartimentadas, e os desvios padrão são calculados para barras de erro em um gráfico de linhas.

log_predictions(name, value, description='')

Parâmetros

name
str
Obrigatório

O nome das previsões.

value
str ou dict
Obrigatório

JSON que contém propriedades de nome, versão e dados.

description
str
Obrigatório

Uma descrição de métrica opcional.

Comentários

Exemplo de um valor JSON válido:


   {
       "schema_type": "predictions",
       "schema_version": "1.0.0",
       "data": {
           "bin_averages": [0.25, 0.75],
           "bin_errors": [0.013, 0.042],
           "bin_counts": [56, 34],
           "bin_edges": [0.0, 0.5, 1.0]
       }
   }

log_residuals

Registrar resíduos no armazenamento de artefatos.

Isso registra os dados necessários para exibir um histograma de resíduos para uma tarefa de regressão. Os resíduos são previstos – reais.

Deve haver uma borda a mais do que o número de contagens. Consulte a documentação do histograma numpy para ver exemplos de uso de contagens e bordas para representar um histograma. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_residuals(name, value, description='')

Parâmetros

name
str
Obrigatório

O nome dos resíduos.

value
str ou dict
Obrigatório

JSON que contém propriedades de nome, versão e dados.

description
str
Obrigatório

Uma descrição de métrica opcional.

Comentários

Exemplo de um valor JSON válido:


   {
       "schema_type": "residuals",
       "schema_version": "1.0.0",
       "data": {
           "bin_edges": [50, 100, 200, 300, 350],
           "bin_counts": [0.88, 20, 30, 50.99]
       }
   }

log_row

Registrar uma métrica de linha para a execução com o nome fornecido.

log_row(name, description=None, **kwargs)

Parâmetros

name
str
Obrigatório

O nome da métrica.

description
str
valor padrão: None

Uma descrição de métrica opcional.

kwargs
dict
Obrigatório

Um dicionário de parâmetros opcionais. Nesse caso, as colunas da métrica.

Comentários

O uso de log_row cria uma métrica de tabela com colunas, conforme descrito em kwargs. Cada parâmetro nomeado gera uma coluna com o valor especificado. log_row pode ser chamado uma vez, para registrar uma tupla arbitrária, ou várias vezes em um loop, para gerar uma tabela completa.


   citrus = ['orange', 'lemon', 'lime']
   sizes = [ 10, 7, 3]
   for index in range(len(citrus)):
       run.log_row("citrus", fruit = citrus[index], size=sizes[index])

log_table

Registrar em log uma métrica de tabela para a execução com o nome fornecido.

log_table(name, value, description='')

Parâmetros

name
str
Obrigatório

O nome da métrica.

value
dict
Obrigatório

O valor da tabela da métrica, um dicionário em que as chaves são colunas a serem postadas no serviço.

description
str
Obrigatório

Uma descrição de métrica opcional.

register_model

Registrar um modelo para operacionalização.

register_model(model_name, model_path=None, tags=None, properties=None, model_framework=None, model_framework_version=None, description=None, datasets=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None, **kwargs)

Parâmetros

model_name
str
Obrigatório

O nome do modelo.

model_path
str
valor padrão: None

O caminho de nuvem relativo para o modelo, por exemplo, "outputs/modelname". Quando não especificado (None), model_name é usado como o caminho.

tags
dict[str, str]
valor padrão: None

Um dicionário de marcas de valor de chave para atribuir ao modelo.

properties
dict[str, str]
valor padrão: None

Um dicionário de propriedades de valor de chave para atribuir ao modelo. Essas propriedades não podem ser alteradas após a criação do modelo; no entanto, novos pares de chave e valor podem ser adicionados.

model_framework
str
valor padrão: None

A estrutura do modelo a ser registrado. Estruturas compatíveis atualmente: TensorFlow, ScikitLearn, Onnx, Custom, Multi

model_framework_version
str
valor padrão: None

A versão da estrutura do modelo registrado.

description
str
valor padrão: None

Uma descrição opcional do modelo.

datasets
list[(str, AbstractDataset)]
valor padrão: None

Uma lista de tuplas em que o primeiro elemento descreve a relação entre conjunto de dados e modelo, e o segundo elemento é o conjunto de dados.

sample_input_dataset
AbstractDataset
valor padrão: None

Opcional. Amostra de conjunto de dados de entrada para o modelo registrado

sample_output_dataset
AbstractDataset
valor padrão: None

Opcional. Amostra de conjunto de dados de saída para o modelo registrado

resource_configuration
ResourceConfiguration
valor padrão: None

Opcional. Configuração de recurso para executar o modelo registrado

kwargs
dict
Obrigatório

Parâmetros opcionais.

Retornos

O modelo registrado.

Tipo de retorno

Comentários


   model = best_run.register_model(model_name = 'best_model', model_path = 'outputs/model.pkl')

remove_tags

Excluir a lista de marcas mutáveis nesta execução.

remove_tags(tags)

Parâmetros

tags
list
Obrigatório

Uma lista de marcas a serem removidas.

Retornos

As marcas armazenadas no objeto de execução

restore_snapshot

Restaurar um instantâneo como um arquivo ZIP. Retorna o caminho para o ZIP.

restore_snapshot(snapshot_id=None, path=None)

Parâmetros

snapshot_id
str
valor padrão: None

A ID de instantâneo a ser restaurada. A mais recente será usada se não for especificada.

path
str
valor padrão: None

O caminho onde o ZIP baixado é salvo.

Retornos

O caminho.

Tipo de retorno

str

set_tags

Adicionar ou modificar um conjunto de marcas na execução. As marcas não passadas no dicionário são deixadas inalteradas.

Você também pode adicionar marcações de cadeia de caracteres simples. Quando essas marcas aparecem no dicionário de marcas como chaves, elas têm um valor None. Para obter mais informações, consulte Marcas e localizar execuções.

set_tags(tags)

Parâmetros

tags
dict[str] ou str
Obrigatório

As marcas armazenadas no objeto de execução.

start

Marcar a execução como iniciada.

Normalmente, isso é usado em cenários avançados quando a execução foi criada por outro ator.

start()

submit_child

Enviar um experimento e retornar a execução filho ativa.

submit_child(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, por exemplo, {"tag": "value"}.

kwargs
dict
Obrigatório

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

Retornos

Um objeto de 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 filho do computador local usando ScriptRunConfig é 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 = parent_run.submit_child(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 submit.

tag

Marque 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
valor padrão: None

Um valor opcional para a marca

Comentários

As marcas e as propriedades em uma execução são dicionários da cadeia de caracteres -> cadeia de caracteres. A diferença entre elas é a mutabilidade: as marcas podem ser definidas, atualizadas e excluídas enquanto as propriedades só podem ser adicionadas. Isso torna as propriedades mais apropriadas para gatilhos de comportamento relacionados ao sistema/fluxo de trabalho, enquanto as marcas geralmente são voltadas para o usuário e são significativas para os consumidores do experimento.


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

   run.add_properties({'BuildId': os.environ.get('VSTS_BUILD_ID')}) # Properties are not

   tags = run.get_tags()
   # tags = { 'DeploymentCandidate': None, 'modifiedBy': 'release pipeline' }

take_snapshot

Salvar um instantâneo da pasta ou do arquivo de entrada.

take_snapshot(file_or_folder_path)

Parâmetros

file_or_folder_path
str
Obrigatório

O arquivo ou a pasta que contém o código-fonte da execução.

Retornos

Retorna a ID do instantâneo.

Tipo de retorno

str

Comentários

Os instantâneos devem ser o código-fonte usado para executar a execução do experimento. Elas são armazenadas com a execução para que a avaliação de execução possa ser replicada no futuro.

Observação

Os instantâneos são feitos automaticamente quando submit é chamado. Normalmente, esse método take_snapshot só é necessário para execuções interativas (notebook).

upload_file

Carregar um arquivo para o registro de execução.

upload_file(name, path_or_stream, datastore_name=None)

Parâmetros

name
str
Obrigatório

O nome do arquivo a ser carregado.

path_or_stream
str
Obrigatório

O caminho local relativo ou o fluxo para o arquivo a ser carregado.

datastore_name
str
Obrigatório

Nome opcional do armazenamento de dados

Tipo de retorno

Comentários


   run = experiment.start_logging()
   run.upload_file(name='important_file', path_or_stream="path/on/disk/file.txt")

Observação

Execuções de capturam automaticamente os arquivos no diretório de saída especificado, cujo padrão é ". /outputs" para a maioria dos tipos de execução. Use upload_file somente quando arquivos adicionais precisarem ser carregados ou um diretório de saída não for especificado.

upload_files

Carregar arquivos para o registro de execução.

upload_files(names, paths, return_artifacts=False, timeout_seconds=None, datastore_name=None)

Parâmetros

names
list
Obrigatório

Os nomes dos arquivos a serem carregados. Se definidos, os caminhos também devem ser definidos.

paths
list
Obrigatório

Os caminhos locais relativos para os arquivos a serem carregados. Se definidos, os nomes são necessários.

return_artifacts
bool
Obrigatório

Indica que um objeto de artefato deve ser retornado para cada arquivo carregado.

timeout_seconds
int
Obrigatório

O tempo limite para carregar arquivos.

datastore_name
str
Obrigatório

Nome opcional do armazenamento de dados

Comentários

upload_files tem o mesmo efeito que upload_file em arquivos separados. No entanto, há benefícios de utilização de desempenho e de recursos ao usar o upload_files.


   import os

   run = experiment.start_logging()
   file_name_1 = 'important_file_1'
   file_name_2 = 'important_file_2'
   run.upload_files(names=[file_name_1, file_name_2],
                       paths=['path/on/disk/file_1.txt', 'other/path/on/disk/file_2.txt'])

   run.download_file(file_name_1, 'file_1.txt')

   os.mkdir("path")  # The path must exist
   run.download_file(file_name_2, 'path/file_2.txt')

Observação

As execuções capturam automaticamente os arquivos no diretório de saída especificado, cujo padrão é "./outputs" para a maioria dos tipos de execução. Use upload_files somente quando arquivos adicionais precisarem ser carregados ou um diretório de saída não for especificado.

upload_folder

Carregar a pasta especificada para o nome de prefixo fornecido.

upload_folder(name, path, datastore_name=None)

Parâmetros

name
str
Obrigatório

O nome da pasta de arquivos a ser carregada.

folder
str
Obrigatório

O caminho local relativo para a pasta a ser carregada.

datastore_name
str
Obrigatório

Nome opcional do armazenamento de dados

Comentários


   run = experiment.start_logging()
   run.upload_folder(name='important_files', path='path/on/disk')

   run.download_file('important_files/existing_file.txt', 'local_file.txt')

Observação

As execuções capturam automaticamente os arquivos no diretório de saída especificado, cujo padrão é "./outputs" para a maioria dos tipos de execução. Use upload_folder somente quando arquivos adicionais precisarem ser carregados ou um diretório de saída não for especificado.

wait_for_completion

Aguardar a conclusão desta execução. Retorna o objeto de status após a espera.

wait_for_completion(show_output=False, wait_post_processing=False, raise_on_error=True)

Parâmetros

show_output
bool
valor padrão: False

Indica se a saída de execução deve ser mostrada em sys.stdout.

wait_post_processing
bool
valor padrão: False

Indica se é necessário aguardar a conclusão do processamento da postagem após a conclusão da execução.

raise_on_error
bool
valor padrão: True

Indica se um Erro é gerado quando a Execução está em um estado de falha.

Retornos

O objeto de status.

Tipo de retorno

Atributos

description

Retorne a descrição da execução.

A descrição opcional da execução é uma cadeia de caracteres especificada pelo usuário, útil para descrever uma execução.

Retornos

A descrição da execução.

Tipo de retorno

str

display_name

Retorne o nome de exibição da execução.

O nome de exibição opcional da execução é uma cadeia de caracteres especificada pelo usuário que é útil para a identificação posterior da execução.

Retornos

O nome de exibição da execução.

Tipo de retorno

str

experiment

Obter o experimento que contém a execução.

Retornos

Recupera o experimento correspondente à execução.

Tipo de retorno

id

Obter a ID de execução.

A ID de execução é um identificador exclusivo no experimento que o contém.

Retornos

A ID de execução.

Tipo de retorno

str

name

PRETERIDO. Use display_name.

O nome opcional da execução é uma cadeia de caracteres especificada pelo usuário que é útil para a identificação posterior da execução.

Retornos

A ID de execução.

Tipo de retorno

str

number

Obter o número de execução.

Um número uniformemente crescente que representa a ordem das execuções em um experimento.

Retornos

O número de execução.

Tipo de retorno

int

parent

Busque a execução pai para essa execução no serviço.

As execuções podem ter um pai opcional, resultando em uma possível hierarquia de árvore de execuções. Para registrar métricas em uma execução pai, use o método log do objeto pai, por exemplo, run.parent.log().

Retornos

A execução pai ou None se não estiver definida.

Tipo de retorno

Run

properties

Retornar as propriedades imutáveis desta execução.

Retornos

As propriedades armazenadas no cache local da execução.

Tipo de retorno

dict[str],
str

Comentários

As propriedades incluem informações imutáveis geradas pelo sistema, como duração, data de execução, usuário etc.

status

Retornar o status do objeto de execução.

tags

Retornar o conjunto de marcas mutáveis nesta execução.

Retornos

As marcas armazenadas no objeto de execução.

Tipo de retorno

type

Obter o tipo de execução.

Indica como a execução foi criada ou configurada.

Retornos

O tipo de execução.

Tipo de retorno

str