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. As execuções são usadas para monitorar a execução assíncrona de uma avaliação, as métricas de log e a saída do armazenamento da avaliação e para analisar os resultados e os artefatos de acesso gerados pela avaliação.
Os objetos de execução são criados quando você envia um script para treinar um modelo em muitos cenários diferentes no Azure Machine Learning, incluindo execuções do HyperDrive, execuções de pipeline e execuções de AutoML. Um objeto Run também é criado quando você submit ou start_logging com a Experiment classe.
Para começar a usar experimentos e execuções, confira
Inicialize o objeto Executar.
Construtor
Run(experiment, run_id, outputs=None, **kwargs)
Parâmetros
| Nome | Description |
|---|---|
|
experiment
Obrigatório
|
O experimento que contém. |
|
run_id
Obrigatório
|
A ID da execução. |
|
outputs
|
As saídas a serem controladas. Valor padrão: None
|
|
_run_dto
Obrigatório
|
<xref:azureml._restclient.models.run_dto.RunDto>
Somente para uso interno. |
|
kwargs
Obrigatório
|
Um dicionário de parâmetros de configuração adicionais. |
|
experiment
Obrigatório
|
O experimento que contém. |
|
run_id
Obrigatório
|
A ID da execução. |
|
outputs
Obrigatório
|
As saídas a serem controladas. |
|
kwargs
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 Run é usado para monitorar a execução assíncrona de uma avaliação, métricas de log e saída do repositório da avaliação e para analisar resultados e artefatos de acesso gerados pela avaliação.
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 de Execução inclui:
Armazenando e recuperando métricas e dados
Carregando e baixando arquivos
Usando marcas, bem como a hierarquia filho para facilitar a pesquisa de execuções passadas
Registrando arquivos de modelo armazenados como um modelo que pode ser operacionalizado
Armazenando, modificando e recuperando propriedades de uma execução
Carregando a execução atual de um ambiente remoto com o get_context método
Instantâneo eficiente de um arquivo ou diretório para reprodutibilidade
Essa classe funciona com estes Experiment cenários:
Criando uma execução executando o código usando submit
Criando uma execução interativamente em um notebook usando start_logging
Registrando métricas e carregando artefatos em seu 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. Aqui estão exemplos dos diferentes objetos de configuração que você pode usar:
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
Registre um valor numérico ou de cadeia de caracteres na execução com o nome fornecido usando log. Registrar uma métrica em uma execução faz com que essa métrica seja armazenada no registro de execução no experimento. Você pode registrar a mesma métrica várias vezes em uma execução, sendo o resultado considerado um vetor dessa métrica.
Exemplo:
run.log("accuracy", 0.95)
Lista
Registre uma lista de valores na execução com o nome fornecido usando log_list.
Exemplo:
run.log_list("accuracies", [0.6, 0.7, 0.87])
Linha
O uso 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_rowpode ser chamado uma vez para registrar uma tupla arbitrária ou várias vezes em um loop para gerar uma tabela completa.Exemplo:
run.log_row("Y over X", x=1, y=0.4)
Tabela
Registre 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]})
Imagem
Registre uma imagem no registro de execução. Use log_image para registrar um arquivo de imagem ou um gráfico matplotlib na 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 |
Adicione propriedades imutáveis à execução. Marcas e propriedades (ambos dict[str, str]) diferem em sua mutabilidade. 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 Marcar e localizar execuções. |
| add_type_provider |
Gancho de extensibilidade para tipos de execução personalizados armazenados no Histórico de Execuções. |
| cancel |
Marque a execução como cancelada. Se houver um trabalho associado a um campo de cancel_uri definido, encerre esse trabalho também. |
| child_run |
Criar uma execução filho. |
| clean |
Remova os arquivos correspondentes à execução atual no destino especificado na configuração de execução. |
| complete |
Aguarde até que a fila de tarefas seja processada. Em seguida, a execução é marcada como concluída. Normalmente, isso é usado em cenários interativos de notebook. |
| create_children |
Crie uma ou muitas execuções filho. |
| download_file |
Baixe um arquivo associado do armazenamento. |
| download_files |
Baixe arquivos de um determinado prefixo de armazenamento (nome da pasta) ou de todo o contêiner se o prefixo não for especificado. |
| fail |
Marque a execução como falha. Opcionalmente, defina a propriedade Error da execução com uma mensagem ou exceção passada para |
| flush |
Aguarde até que a fila de tarefas seja processada. |
| get |
Obtenha a execução deste workspace com sua ID de execução. |
| get_all_logs |
Baixe todos os logs para a execução em um diretório. |
| get_children |
Obtenha todos os filhos para a execução atual selecionada por filtros especificados. |
| get_context |
Retornar o contexto de serviço atual. Use esse método para recuperar o contexto de serviço atual para registrar em log métricas e carregar arquivos. Se |
| get_detailed_status |
Busque o status mais recente da execução. Se o status da execução for "Enfileirado", ele mostrará os detalhes. |
| get_details |
Obtenha 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 da execução, incluindo o conteúdo do arquivo de log. |
| get_environment |
Obtenha a definição de ambiente usada por essa execução. |
| get_file_names |
Liste os arquivos armazenados em associação com a execução. |
| get_metrics |
Recupere as métricas registradas na execução. Se |
| get_properties |
Busque as propriedades mais recentes da execução do serviço. |
| get_secret |
Obtenha o valor do segredo do contexto de uma execução. Obtenha 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 seu workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento. |
| get_secrets |
Obtenha os valores secretos para uma determinada lista de nomes secretos. Obtenha um dicionário de segredos encontrados e não encontrados para a lista de nomes fornecidos. Cada nome secreto faz referência a um valor armazenado no Azure Key Vault associado ao seu workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento. |
| get_snapshot_id |
Obtenha a ID de instantâneo mais recente. |
| get_status |
Busque o status mais recente da execução. Os valores comuns retornados incluem "Executando", "Concluído" e "Falha". |
| get_submitted_run |
DEPRECADO. Use get_context. Obtenha a execução enviada para este experimento. |
| get_tags |
Busque o conjunto mais recente de marcas mutáveis na execução do serviço. |
| list |
Obtenha uma lista de execuções em um experimento especificado por filtros opcionais. |
| list_by_compute |
Obtenha uma lista de execuções em uma computação especificada por filtros opcionais. |
| log |
Registre um valor de métrica na execução com o nome fornecido. |
| log_accuracy_table |
Registre uma tabela de precisão no repositório de artefatos. A métrica da tabela de precisão é uma métrica não escalar de uso múltiplo que pode ser usada para produzir vários tipos de gráficos de linhas que variam continuamente sobre o espaço de probabilidades previstas. Exemplos desses gráficos são ROC, recall de precisão e curvas de elevação. O cálculo da tabela de precisão é semelhante ao cálculo de uma curva ROC. Uma curva ROC armazena taxas positivas verdadeiras e taxas falsas positivas 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 na forma como amostram do espaço de probabilidades previstas. Os limites de probabilidade são limites uniformemente espaçados 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 de 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 tabelas de percentil são listas 3D em que a primeira dimensão representa o rótulo de classe, a segunda dimensão representa o exemplo em um limite (dimensiona 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 uma estratégia de rest versus um. Confira o link a seguir para obter mais detalhes: https://en.wikipedia.org/wiki/Multiclass_classification N = # de exemplos no conjunto de dados de validação (200 no exemplo) M = # limites = # amostras extraídas do espaço de probabilidade (5 no exemplo) C = # classes no conjunto de dados completo (3 no exemplo) Alguns invariáveis da tabela de precisão:
Observação: M pode ser qualquer valor e controla a resolução dos gráficos Isso é independente do conjunto de dados, é definido ao calcular métricas e troca espaço de armazenamento, tempo de computação e resolução. Os rótulos de classe devem ser cadeias de caracteres, os valores de confusão devem ser inteiros e os limites devem ser flutuantes. |
| log_confusion_matrix |
Registre uma matriz de confusão no repositório 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. Consulte 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 uma métrica de imagem no registro de execução. |
| log_list |
Registre uma lista de valores de métrica na execução com o nome fornecido. |
| log_predictions |
Faça previsões de log para o repositório 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 binadas e os desvios padrão são calculados para barras de erros em um gráfico de linhas. |
| log_residuals |
Registre resíduos no repositório 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 vantagem a mais do que o número de contagens. Consulte a documentação do histograma numpy para obter exemplos de uso de contagens e bordas para representar um histograma. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html |
| log_row |
Registre uma métrica de linha na execução com o nome fornecido. |
| log_table |
Registre uma métrica de tabela na execução com o nome fornecido. |
| register_model |
Registre um modelo para operacionalização. |
| remove_tags |
Exclua a lista de marcas mutáveis nesta execução. |
| restore_snapshot |
Restaure um instantâneo como um arquivo ZIP. Retorna o caminho para o ZIP. |
| set_tags |
Adicione ou modifique um conjunto de marcas na execução. As marcas não passadas no dicionário são deixadas intocadas. 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 Marcar e localizar execuções. |
| start |
Marque a execução como iniciada. Normalmente, isso é usado em cenários avançados quando a execução foi criada por outro ator. |
| submit_child |
Envie um experimento e retorne 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 |
Salve um instantâneo do arquivo ou pasta de entrada. |
| upload_file |
Carregue um arquivo no registro de execução. |
| upload_files |
Carregue arquivos no registro de execução. |
| upload_folder |
Carregue a pasta especificada no nome do prefixo fornecido. |
| wait_for_completion |
Aguarde a conclusão desta execução. Retorna o objeto de status após a espera. |
add_properties
Adicione propriedades imutáveis à execução.
Marcas e propriedades (ambos dict[str, str]) diferem em sua mutabilidade. 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 Marcar e localizar execuções.
add_properties(properties)
Parâmetros
| Nome | Description |
|---|---|
|
properties
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
| Nome | Description |
|---|---|
|
runtype
Obrigatório
|
O valor de Run.type para o qual a fábrica será invocada. Os exemplos incluem 'hyperdrive' ou 'azureml.scriptrun', mas podem ser estendidos com tipos personalizados. |
|
run_factory
Obrigatório
|
<xref:function>
Uma função com assinatura (Experimento, RunDto) –> Executar para ser invocada ao listar execuções. |
cancel
Marque a execução como cancelada.
Se houver um trabalho associado a um campo de cancel_uri definido, encerre esse trabalho também.
cancel()
child_run
Criar uma execução filho.
child_run(name=None, run_id=None, outputs=None)
Parâmetros
| Nome | Description |
|---|---|
|
name
|
Um nome opcional para a execução filho, normalmente especificado para uma "parte". Valor padrão: None
|
|
run_id
|
Uma ID de execução opcional para o filho, caso contrário, é gerada automaticamente. Normalmente, esse parâmetro não está definido. Valor padrão: None
|
|
outputs
|
Diretório de saídas opcionais a ser rastreado para o filho. Valor padrão: None
|
Retornos
| Tipo | Description |
|---|---|
|
A corrida filho. |
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 de separar ou para 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 no registro de execução filho quando o filho for concluído.
clean
Remova os arquivos correspondentes à execução atual no destino especificado na configuração de execução.
clean()
Retornos
| Tipo | Description |
|---|---|
|
Uma lista de arquivos excluídos. |
complete
Aguarde até que a fila de tarefas seja processada.
Em seguida, a execução é marcada como concluída. Normalmente, isso é usado em cenários interativos de notebook.
complete(_set_status=True)
Parâmetros
| Nome | Description |
|---|---|
|
_set_status
|
Indica se o evento de status deve ser enviado para acompanhamento. Valor padrão: True
|
create_children
Crie uma ou muitas execuções filho.
create_children(count=None, tag_key=None, tag_values=None)
Parâmetros
| Nome | Description |
|---|---|
|
count
|
Um número opcional de filhos a serem criados. Valor padrão: None
|
|
tag_key
|
Uma chave opcional para preencher a entrada Marcas em todos os filhos criados. Valor padrão: None
|
|
tag_Values
Obrigatório
|
Uma lista opcional de valores que serão mapeados para Marcas[tag_key] para a lista de execuções criadas. |
|
tag_values
|
Valor padrão: None
|
Retornos
| Tipo | Description |
|---|---|
|
A lista de execuções filho. |
Comentários
Os parâmetros count OR do parâmetro tag_key AND tag_values devem ser especificados.
download_file
download_files
Baixe arquivos de um determinado prefixo de armazenamento (nome da pasta) ou de todo o contêiner 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
| Nome | Description |
|---|---|
|
prefix
Obrigatório
|
O prefixo de caminho de arquivo dentro do contêiner do qual baixar todos os artefatos. |
|
output_directory
Obrigatório
|
Um diretório opcional que todos os caminhos de artefato usam como prefixo. |
|
output_paths
Obrigatório
|
[str]
Caminhos de arquivo opcionais nos quais armazenar os artefatos baixados. Deve ser exclusivo e corresponder ao comprimento dos caminhos. |
|
batch_size
Obrigatório
|
O número de arquivos a serem baixados por lote. O padrão é 100 arquivos. |
|
append_prefix
Obrigatório
|
Um sinalizador opcional se deve acrescentar o prefixo especificado do caminho do arquivo de saída final. Se False, o prefixo será removido do caminho do arquivo de saída. |
|
timeout_seconds
Obrigatório
|
O tempo limite para baixar arquivos. |
fail
Marque a execução como falha.
Opcionalmente, defina a propriedade Error 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
| Nome | Description |
|---|---|
|
error_details
|
str ou
BaseException
Detalhes opcionais do erro. Valor padrão: None
|
|
error_code
|
Código de erro opcional do erro para a classificação de erro. Valor padrão: None
|
|
_set_status
|
Indica se o evento de status deve ser enviado para acompanhamento. Valor padrão: True
|
flush
Aguarde até que a fila de tarefas seja processada.
flush(timeout_seconds=300)
Parâmetros
| Nome | Description |
|---|---|
|
timeout_seconds
|
Quanto tempo esperar (em segundos) para que a fila de tarefas seja processada. Valor padrão: 300
|
get
get_all_logs
Baixe todos os logs para a execução em um diretório.
get_all_logs(destination=None)
Parâmetros
| Nome | Description |
|---|---|
|
destination
|
O caminho de destino para armazenar logs. Se não for especificado, um diretório chamado ID de execução será criado no diretório do projeto. Valor padrão: None
|
Retornos
| Tipo | Description |
|---|---|
|
Uma lista de nomes de logs baixados. |
get_children
Obtenha 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
| Nome | Description |
|---|---|
|
recursive
|
Indica se todos os descendentes devem ser recursos. Valor padrão: False
|
|
tags
|
Se especificado, retorna execuções correspondentes a "tag" ou {"tag": "value"}. Valor padrão: None
|
|
properties
|
Se especificado, retorna execuções correspondentes a "property" ou {"property": "value"}. Valor padrão: None
|
|
type
|
Se especificado, retorna execuções correspondentes a esse tipo. Valor padrão: None
|
|
status
|
Se especificado, retorna execuções com o status especificado "status". Valor padrão: None
|
|
_rehydrate_runs
|
Indica se uma execução do tipo original ou da execução base deve ser instanciado. Valor padrão: True
|
Retornos
| Tipo | Description |
|---|---|
|
Uma lista de Run objetos. |
get_context
Retornar o contexto de serviço atual.
Use esse método para recuperar o contexto de serviço atual para registrar em log métricas e carregar arquivos. Se allow_offline for True (o padrão), as ações em relação ao objeto Executar serão impressas no padrão.
get_context(allow_offline=True, used_for_context_manager=False, **kwargs)
Parâmetros
| Nome | Description |
|---|---|
|
cls
Obrigatório
|
Indica o método de classe. |
|
allow_offline
|
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. Valor padrão: True
|
|
kwargs
Obrigatório
|
Um dicionário de parâmetros adicionais. |
|
used_for_context_manager
|
Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
|
A execução enviada. |
Comentários
Essa função geralmente é usada para recuperar o objeto Run 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 no qual métricas, arquivos (artefatos) e modelos estão contidos.
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
Busque o status mais recente da execução. Se o status da execução for "Enfileirado", ele mostrará os detalhes.
get_detailed_status()
Retornos
| Tipo | Description |
|---|---|
|
O status e os detalhes mais recentes |
Comentários
status: o status atual da execução. Mesmo valor que o retornado de get_status().
detalhes: as informações detalhadas sobre o 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
Obtenha a definição, as informações de status, os arquivos de log atuais e outros detalhes da execução.
get_details()
Retornos
| Tipo | Description |
|---|---|
|
Retornar os detalhes da execução |
Comentários
O dicionário retornado contém os seguintes pares chave-valor:
runId: ID desta execução.
de destino
status: o status atual da execução. Mesmo valor que o retornado de get_status().
startTimeUtc: hora UTC de quando esta execução foi iniciada, em ISO8601.
endTimeUtc: hora UTC de quando esta execução foi concluída (concluída ou com falha), em ISO8601.
Essa chave não existirá se a execução ainda estiver em andamento.
propriedades: pares chave-valor imutáveis associados à execução. As propriedades padrão incluem a ID de instantâneo da execução e informações sobre o repositório git do qual a execução foi criada (se houver). Propriedades adicionais 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 da execução, incluindo o conteúdo do arquivo de log.
get_details_with_logs()
Retornos
| Tipo | Description |
|---|---|
|
Retorna o status da execução com o conteúdo do arquivo de log. |
get_environment
Obtenha a definição de ambiente usada por essa execução.
get_environment()
Retornos
| Tipo | Description |
|---|---|
|
Retorne o objeto de ambiente. |
get_file_names
get_metrics
Recupere as métricas registradas na execução.
Se recursive for True (False por padrão), busque métricas para execuções na subárvore da execução fornecida.
get_metrics(name=None, recursive=False, run_type=None, populate=False)
Parâmetros
| Nome | Description |
|---|---|
|
name
|
O nome da métrica. Valor padrão: None
|
|
recursive
|
Indica se todos os descendentes devem ser recursos. Valor padrão: False
|
|
run_type
|
Valor padrão: None
|
|
populate
|
Indica se é necessário buscar o conteúdo de dados externos vinculados à métrica. Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
|
Um dicionário que contém as métricas dos usuários. |
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
Busque as propriedades mais recentes da execução do serviço.
get_properties()
Retornos
| Tipo | Description |
|---|---|
|
As propriedades da execução. |
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 Marcar 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 do Git, consulte a integração do Git para o Azure Machine Learning.
get_secret
Obtenha o valor do segredo do contexto de uma execução.
Obtenha 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 seu workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento.
get_secret(name)
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome do segredo para o qual retornar um segredo. |
Retornos
| Tipo | Description |
|---|---|
|
O valor do segredo. |
get_secrets
Obtenha os valores secretos para uma determinada lista de nomes secretos.
Obtenha um dicionário de segredos encontrados e não encontrados para a lista de nomes fornecidos. Cada nome secreto faz referência a um valor armazenado no Azure Key Vault associado ao seu workspace. Para obter um exemplo de como trabalhar com segredos, consulte Usar segredos em execuções de treinamento.
get_secrets(secrets)
Parâmetros
| Nome | Description |
|---|---|
|
secrets
Obrigatório
|
Uma lista de nomes secretos para os quais retornar valores secretos. |
Retornos
| Tipo | Description |
|---|---|
|
Retorna um dicionário de segredos encontrados e não encontrados. |
get_snapshot_id
Obtenha a ID de instantâneo mais recente.
get_snapshot_id()
Retornos
| Tipo | Description |
|---|---|
|
A ID do instantâneo mais recente. |
get_status
Busque o status mais recente da execução.
Os valores comuns retornados incluem "Executando", "Concluído" e "Falha".
get_status()
Retornos
| Tipo | Description |
|---|---|
|
O status mais recente. |
Comentários
NotStarted - Este é um estado temporário em que os objetos Run do lado do cliente estão antes do envio à nuvem.
Iniciando – a execução começou a ser processada na nuvem. O chamador tem uma ID de execução neste momento.
Provisionamento – Retornado quando a computação sob demanda está sendo criada para um determinado envio de trabalho.
Preparação – O ambiente de execução está sendo preparado:
compilação de imagem do Docker
configuração do ambiente conda
Enfileirado – o trabalho é enfileirado no destino de computação. Por exemplo, no BatchAI, o trabalho está em estado de fila
enquanto aguarda todos os nós solicitados estarem prontos.
Em execução – o trabalho começou a ser executado no destino de computação.
Finalização – o código do usuário foi concluído e a execução está em estágios pós-processamento.
CancelRequested - O cancelamento foi solicitado para o trabalho.
Concluído - A execução foi concluída com êxito. Isso inclui o código do usuário e a execução
estágios de pós-processamento.
Falha – a execução falhou. Normalmente, a propriedade Error em uma execução fornecerá detalhes sobre o motivo.
Cancelado – 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
DEPRECADO. Use get_context.
Obtenha a execução enviada para este experimento.
get_submitted_run(**kwargs)
Retornos
| Tipo | Description |
|---|---|
|
A execução enviada. |
get_tags
Busque o conjunto mais recente de marcas mutáveis na execução do serviço.
get_tags()
Retornos
| Tipo | Description |
|---|---|
|
As marcas armazenadas no objeto de execução. |
list
Obtenha 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
| Nome | Description |
|---|---|
|
experiment
Obrigatório
|
O experimento que contém. |
|
type
|
Se especificado, retorna execuções correspondentes ao tipo especificado. Valor padrão: None
|
|
tags
|
Se especificado, retorna execuções correspondentes a "tag" ou {"tag": "value"}. Valor padrão: None
|
|
properties
|
Se especificado, retorna execuções correspondentes a "property" ou {"property": "value"}. Valor padrão: None
|
|
status
|
Se especificado, retorna execuções com o status especificado "status". Valor padrão: None
|
|
include_children
|
Se definido como true, busque todas as execuções, não apenas as de nível superior. Valor padrão: False
|
|
_rehydrate_runs
|
Se definido como True (por padrão), usará o provedor registrado para reinstalar um objeto para esse tipo em vez da execução base. Valor padrão: True
|
Retornos
| Tipo | Description |
|---|---|
|
Uma lista de execuções. |
Comentários
O exemplo de código a seguir mostra alguns usos do list método.
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
Obtenha 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
| Nome | Description |
|---|---|
|
compute
Obrigatório
|
A computação que contém. |
|
type
|
Se especificado, retorna execuções correspondentes ao tipo especificado. Valor padrão: None
|
|
tags
|
Se especificado, retorna execuções correspondentes a "tag" ou {"tag": "value"}. Valor padrão: None
|
|
properties
|
Se especificado, retorna execuções correspondentes a "property" ou {"property": "value"}. Valor padrão: None
|
|
status
|
Se especificado, retorna execuções com o status especificado "status". Somente os valores permitidos são "Executando" e "Enfileirado". Valor padrão: None
|
Retornos
| Tipo | Description |
|---|---|
|
<xref:builtin.generator>
|
um gerador de ~_restclient.models.RunDto |
log
Registre um valor de métrica na execução com o nome fornecido.
log(name, value, description='', step=None)
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da métrica. |
|
value
Obrigatório
|
O valor a ser postado no serviço. |
|
description
Obrigatório
|
Uma descrição de métrica opcional. |
|
step
|
Um eixo opcional para especificar a ordem de valor em uma métrica. Valor padrão: None
|
Comentários
Registrar uma métrica em uma execução faz com que essa métrica seja armazenada no registro de execução no experimento. Você pode registrar a mesma métrica várias vezes em uma execução, sendo o resultado considerado um vetor dessa métrica. Se a etapa for especificada para uma métrica, ela deverá ser especificada para todos os valores.
log_accuracy_table
Registre uma tabela de precisão no repositório de artefatos.
A métrica da tabela de precisão é uma métrica não escalar de uso múltiplo que pode ser usada para produzir vários tipos de gráficos de linhas que variam continuamente sobre o espaço de probabilidades previstas. Exemplos desses gráficos são ROC, recall de precisão e curvas de elevação.
O cálculo da tabela de precisão é semelhante ao cálculo de uma curva ROC. Uma curva ROC armazena taxas positivas verdadeiras e taxas falsas positivas 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 na forma como amostram do espaço de probabilidades previstas.
Os limites de probabilidade são limites uniformemente espaçados 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 de 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 tabelas de percentil são listas 3D em que a primeira dimensão representa o rótulo de classe, a segunda dimensão representa o exemplo em um limite (dimensiona 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 uma estratégia de rest versus um. Confira o link a seguir para obter mais detalhes: https://en.wikipedia.org/wiki/Multiclass_classification
N = # de exemplos no conjunto de dados de validação (200 no exemplo) M = # limites = # amostras extraídas do espaço de probabilidade (5 no exemplo) C = # classes no conjunto de dados completo (3 no exemplo)
Alguns 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
- 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 conjunto de dados, é definido ao calcular métricas e troca espaço de armazenamento, tempo de computação e resolução.
Os rótulos de classe devem ser cadeias de caracteres, os valores de confusão devem ser inteiros e os limites devem ser flutuantes.
log_accuracy_table(name, value, description='')
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da tabela de precisão. |
|
value
Obrigatório
|
JSON que contém propriedades de nome, versão e dados. |
|
description
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
Registre uma matriz de confusão no repositório 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. Consulte 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
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da matriz de confusão. |
|
value
Obrigatório
|
JSON que contém propriedades de nome, versão e dados. |
|
description
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 uma métrica de imagem no registro de execução.
log_image(name, path=None, plot=None, description='')
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da métrica. |
|
path
Obrigatório
|
O caminho ou fluxo da imagem. |
|
plot
Obrigatório
|
<xref:matplotlib.pyplot>
O gráfico a ser registrado como uma imagem. |
|
description
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 na execução. Essas imagens serão visíveis e comparáveis no registro de execução.
log_list
log_predictions
Faça previsões de log para o repositório 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 binadas e os desvios padrão são calculados para barras de erros em um gráfico de linhas.
log_predictions(name, value, description='')
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome das previsões. |
|
value
Obrigatório
|
JSON que contém propriedades de nome, versão e dados. |
|
description
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
Registre resíduos no repositório 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 vantagem a mais do que o número de contagens. Consulte a documentação do histograma numpy para obter 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
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome dos resíduos. |
|
value
Obrigatório
|
JSON que contém propriedades de nome, versão e dados. |
|
description
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
Registre uma métrica de linha na execução com o nome fornecido.
log_row(name, description=None, **kwargs)
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da métrica. |
|
description
|
Uma descrição de métrica opcional. Valor padrão: None
|
|
kwargs
Obrigatório
|
Um dicionário de parâmetros adicionais. Nesse caso, as colunas da métrica. |
Comentários
O uso 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
Registre uma métrica de tabela na execução com o nome fornecido.
log_table(name, value, description='')
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da métrica. |
|
value
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
Obrigatório
|
Uma descrição de métrica opcional. |
register_model
Registre 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
| Nome | Description |
|---|---|
|
model_name
Obrigatório
|
O nome do modelo. |
|
model_path
|
O caminho relativo da nuvem para o modelo, por exemplo, "outputs/modelname".
Quando não especificado (Nenhum), Valor padrão: None
|
|
tags
|
Um dicionário de marcas de valor de chave a serem atribuídas ao modelo. Valor padrão: None
|
|
properties
|
Um dicionário de propriedades de valor de chave a ser atribuído ao modelo. Essas propriedades não podem ser alteradas após a criação do modelo, no entanto, novos pares de valor de chave podem ser adicionados. Valor padrão: None
|
|
model_framework
|
A estrutura do modelo a ser registrado. Estruturas com suporte no momento: TensorFlow, ScikitLearn, Onnx, Custom, Multi Valor padrão: None
|
|
model_framework_version
|
A versão da estrutura do modelo registrado. Valor padrão: None
|
|
description
|
Uma descrição opcional do modelo. Valor padrão: None
|
|
datasets
|
Uma lista de tuplas em que o primeiro elemento descreve a relação conjunto de dados-modelo e o segundo elemento é o conjunto de dados. Valor padrão: None
|
|
sample_input_dataset
|
Opcional. Conjunto de dados de entrada de exemplo para o modelo registrado Valor padrão: None
|
|
sample_output_dataset
|
Opcional. Conjunto de dados de saída de exemplo para o modelo registrado Valor padrão: None
|
|
resource_configuration
|
Opcional. Configuração de recursos para executar o modelo registrado Valor padrão: None
|
|
kwargs
Obrigatório
|
Parâmetros opcionais. |
Retornos
| Tipo | Description |
|---|---|
|
O modelo registrado. |
Comentários
model = best_run.register_model(model_name = 'best_model', model_path = 'outputs/model.pkl')
remove_tags
Exclua a lista de marcas mutáveis nesta execução.
remove_tags(tags)
Parâmetros
| Nome | Description |
|---|---|
|
tags
Obrigatório
|
Uma lista de marcas a serem removidas. |
Retornos
| Tipo | Description |
|---|---|
|
As marcas armazenadas no objeto de execução |
restore_snapshot
Restaure um instantâneo como um arquivo ZIP. Retorna o caminho para o ZIP.
restore_snapshot(snapshot_id=None, path=None)
Parâmetros
| Nome | Description |
|---|---|
|
snapshot_id
|
A ID do instantâneo a ser restaurada. O mais recente será usado se não for especificado. Valor padrão: None
|
|
path
|
O caminho em que o ZIP baixado é salvo. Valor padrão: None
|
Retornos
| Tipo | Description |
|---|---|
|
O caminho. |
set_tags
Adicione ou modifique um conjunto de marcas na execução. As marcas não passadas no dicionário são deixadas intocadas.
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 Marcar e localizar execuções.
set_tags(tags)
Parâmetros
| Nome | Description |
|---|---|
|
tags
Obrigatório
|
As marcas armazenadas no objeto de execução. |
start
Marque 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
Envie um experimento e retorne a execução filho ativa.
submit_child(config, tags=None, **kwargs)
Parâmetros
| Nome | Description |
|---|---|
|
config
Obrigatório
|
A configuração a ser enviada. |
|
tags
|
Marcas a serem adicionadas à execução enviada, por exemplo, {"tag": "value"}. Valor padrão: None
|
|
kwargs
Obrigatório
|
Parâmetros adicionais usados na função de envio para configurações. |
Retornos
| Tipo | Description |
|---|---|
|
Um objeto de execução. |
Comentários
Enviar é uma chamada assíncrona para a plataforma do 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á 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 descreva como o experimento deve 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
| Nome | Description |
|---|---|
|
key
Obrigatório
|
A chave de marca |
|
value
|
Um valor opcional para a marca Valor padrão: None
|
Comentários
Marcas e propriedades em uma execução são dicionários de cadeia de caracteres –> cadeia de caracteres. A diferença entre eles é 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 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
Salve um instantâneo do arquivo ou pasta de entrada.
take_snapshot(file_or_folder_path)
Parâmetros
| Nome | Description |
|---|---|
|
file_or_folder_path
Obrigatório
|
O arquivo ou pasta que contém o código-fonte de execução. |
Retornos
| Tipo | Description |
|---|---|
|
Retorna a ID do instantâneo. |
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
Instantâneos são obtidos automaticamente quando submit são chamados. Normalmente, esse método take_snapshot é necessário apenas para execuções interativas (notebook).
upload_file
Carregue um arquivo no registro de execução.
upload_file(name, path_or_stream, datastore_name=None)
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome do arquivo a ser carregado. |
|
path_or_stream
Obrigatório
|
O caminho local relativo ou fluxo para o arquivo a ser carregado. |
|
datastore_name
Obrigatório
|
Nome opcional do DataStore |
Retornos
| Tipo | Description |
|---|---|
Comentários
run = experiment.start_logging()
run.upload_file(name='important_file', path_or_stream="path/on/disk/file.txt")
Observação
Executa o arquivo de captura automaticamente no diretório de saída especificado, que usa como 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
Carregue arquivos no registro de execução.
upload_files(names, paths, return_artifacts=False, timeout_seconds=None, datastore_name=None)
Parâmetros
| Nome | Description |
|---|---|
|
names
Obrigatório
|
Os nomes dos arquivos a serem carregados. Se definido, os caminhos também devem ser definidos. |
|
paths
Obrigatório
|
Os caminhos locais relativos para os arquivos a serem carregados. Se definido, os nomes serão necessários. |
|
return_artifacts
Obrigatório
|
Indica que um objeto de artefato deve ser retornado para cada arquivo carregado. |
|
timeout_seconds
Obrigatório
|
O tempo limite para carregar arquivos. |
|
datastore_name
Obrigatório
|
Nome opcional do DataStore |
Comentários
upload_files tem o mesmo efeito que upload_file em arquivos separados, no entanto, há benefícios de desempenho e utilização de recursos ao usar 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
Executa arquivos de captura automaticamente no diretório de saída especificado, que usa como 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
Carregue a pasta especificada no nome do prefixo fornecido.
upload_folder(name, path, datastore_name=None)
Parâmetros
| Nome | Description |
|---|---|
|
name
Obrigatório
|
O nome da pasta de arquivos a serem carregados. |
|
folder
Obrigatório
|
O caminho local relativo para a pasta a ser carregada. |
|
datastore_name
Obrigatório
|
Nome opcional do DataStore |
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
Executa arquivos de captura automaticamente no diretório de saída especificado, que usa como 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
Aguarde 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
| Nome | Description |
|---|---|
|
show_output
|
Indica se a saída de execução deve ser mostrada em sys.stdout. Valor padrão: False
|
|
wait_post_processing
|
Indica se é necessário aguardar a conclusão do processamento pós-processamento após a conclusão da execução. Valor padrão: False
|
|
raise_on_error
|
Indica se um erro é gerado quando a execução está em um estado com falha. Valor padrão: True
|
Retornos
| Tipo | Description |
|---|---|
|
O objeto de status. |
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
| Tipo | Description |
|---|---|
|
A descrição da execução. |
display_name
Retornar o nome de exibição de execução.
O nome de exibição opcional da execução é uma cadeia de caracteres especificada pelo usuário útil para identificação posterior da execução.
Retornos
| Tipo | Description |
|---|---|
|
O nome de exibição de execução. |
experiment
Obtenha o experimento que contém a execução.
Retornos
| Tipo | Description |
|---|---|
|
Recupera o experimento correspondente à execução. |
id
Obter a ID da execução.
A ID da execução é um identificador exclusivo no experimento que contém.
Retornos
| Tipo | Description |
|---|---|
|
A ID de execução. |
name
DEPRECADO. Use display_name.
O nome opcional da execução é uma cadeia de caracteres especificada pelo usuário útil para identificação posterior da execução.
Retornos
| Tipo | Description |
|---|---|
|
A ID de execução. |
number
Obter o número de execução.
Um número monotonicamente crescente que representa a ordem das execuções dentro de um experimento.
Retornos
| Tipo | Description |
|---|---|
|
O número de execução. |
parent
Busque a execução pai para esta execução do serviço.
As execuções podem ter um pai opcional, resultando em uma hierarquia de árvore potencial de execuções. Para registrar métricas em uma execução pai, use o log método do objeto pai, por exemplo, run.parent.log().
Retornos
| Tipo | Description |
|---|---|
|
A execução pai ou Nenhuma se não estiver definida. |
properties
status
Retornar o status do objeto de execução.
tags
Retorne o conjunto de marcas mutáveis nesta execução.
Retornos
| Tipo | Description |
|---|---|
|
As marcas armazenadas no objeto de execução. |
type
Obter o tipo de execução.
Indica como a execução foi criada ou configurada.
Retornos
| Tipo | Description |
|---|---|
|
O tipo de execução. |