Compartilhar via


Organizar execuções de treinamento com experimentos do MLflow

Experimentos são unidades da organização para as execuções de treinamento de modelo. Há dois tipos de experimentos: workspace e notebook.

  • Você pode criar um experimento de workspace na interface do usuário do Databricks Mosaic AI ou da API do MLflow. Os experimentos de workspace não estão associados a notebooks, e qualquer notebook pode registrar uma executar nesses experimentos usando a ID do experimento ou o nome do experimento.
  • Um experimento de notebook está associado a um notebook específico. O Azure Databricks cria automaticamente um experimento de notebook se não houver nenhum experimento ativo quando você iniciar uma execução usando mlflow.start_run().

Para ver todos os experimentos em um workspace que você tem acesso, selecione Machine Learning>Experimentos na barra lateral.

Página de experimentos

Criar experimento em área de trabalho

Esta seção descreve como criar um experimento de workspace usando a interface do usuário do Azure Databricks. Você pode criar um experimento de workspace diretamente pelo workspace ou na página Experimentos.

Você também pode usar a API do MLflow ou o provedor Terraform do Databricks com databricks_mlflow_experiment.

Para obter instruções sobre como registrar em log execuções em experimentos de workspace, consulte execuções de log e modelos para um experimento.

Criar experimento a partir do espaço de trabalho

  1. Clique em Ícone do WorkspaceWorkspace na barra lateral.

  2. Navegue até a pasta na qual você deseja criar o experimento.

  3. Clique com o botão direito do mouse na pasta e selecione Criar > Experimento MLflow.

  4. Na caixa de diálogo Criar Experimento do MLflow, insira um nome para o experimento e um local de artefato opcional. Se você não especificar um local de artefato, os artefatos serão armazenados no armazenamento de artefatos gerenciado pelo MLflow: dbfs:/databricks/mlflow-tracking/<experiment-id>.

    Para workspaces habilitados para o Catálogo do Unity, você também pode armazenar artefatos em um volume do Catálogo do Unity. Para armazenar artefatos em seu próprio armazenamento em nuvem, crie um volume externo do Catálogo do Unity.

    Para armazenar artefatos em um volume do Catálogo do Unity, especifique um caminho de volume do formulário dbfs:/Volumes/catalog_name/schema_name/volume_name/user/specified/path como o local do artefato do experimento do MLflow, na interface do usuário ou conforme mostrado no código a seguir:

    import mlflow # Storing artifacts in a volume requires MLflow 2.15.0 or above
    
    EXP_NAME = "/Users/first.last@databricks.com/my_experiment_name"
    CATALOG = "my_catalog"
    SCHEMA = "my_schema"
    VOLUME = "my_volume"
    ARTIFACT_PATH = f"dbfs:/Volumes/{CATALOG}/{SCHEMA}/{VOLUME}" # can be a managed or external volume
    
    mlflow.set_tracking_uri("databricks")
    mlflow.set_registry_uri("databricks-uc")
    
    if mlflow.get_experiment_by_name(EXP_NAME) is None:
        mlflow.create_experiment(name=EXP_NAME, artifact_location=ARTIFACT_PATH)
    mlflow.set_experiment(EXP_NAME)
    

    Se o workspace não estiver habilitado para o Catálogo do Unity ou se você não tiver acesso ao MLflow 2.15.0 ou superior, especifique um caminho neste formato: dbfs:/path/to/artifacts.

    O Databricks recomenda o uso de um volume do Catálogo do Unity para armazenamento de artefatos. Se nem um volume do Catálogo do Unity nem o DBFS forem uma opção adequada, você também poderá armazenar artefatos diretamente no Armazenamento de Blobs do Azure (não recomendado). Para armazenar artefatos no armazenamento de Blob do Azure, especifique um URI do formato wasbs://<container>@<storage-account>.blob.core.windows.net/<path>. Os artefatos armazenados no armazenamento de Blobs do Azure não aparecem na interface do usuário do MLflow; você deve baixá-los usando um cliente de armazenamento de blobs.

    Observação

    Quando você armazena um artefato em um local diferente do DBFS, o artefato não aparece na interface do usuário do MLflow. Modelos armazenados em locais diferentes do DBFS não podem ser registrados no Registro de Modelo.

  5. Clique em Criar. A página de detalhes do experimento para o novo experimento é exibida.

  6. Para registrar execuções nesse experimento, chame mlflow.set_experiment() com o caminho do experimento. Para exibir o caminho do experimento, clique no ícone de informações do ícone de informações à direita do nome do experimento. Consulte registro de execuções e aplicação de modelos em um experimento para obter detalhes e um notebook de exemplo.

Criar experimento na página Experimentos

Para criar um modelo de base de ajuste fino, AutoML ou experimento personalizado, clique em Experimentos ou selecione Novo > Experimento na barra lateral esquerda.

Na parte superior da página, selecione uma das seguintes opções para configurar um experimento:

Criar experimento de bloco de anotações

Quando você usa o comando mlflow.start_run() em um notebook, a execução registra métricas e parâmetros no experimento ativo. Se nenhum experimento estiver ativo, o Azure Databricks criará um experimento de notebook. Um experimento de notebook compartilha o mesmo nome e ID do notebook correspondente. A ID do notebook é o identificador numérico no final de uma URL e ID do Notebook.

Observação

Os usuários que executam o MLflow na computação com acesso de grupo dedicado devem verificar se o grupo tem permissão para gravar no diretório onde o notebook reside ou usar mlflow.set_tracking_uri("<path>") para especificar uma pasta para o MLflow gravar.

Como alternativa, você pode passar um caminho de workspace do Azure Databricks para um notebook existente em mlflow.set_experiment() para criar um experimento de notebook para ele.

Para obter instruções sobre como registrar execuções em experimentos de notebook, consulte Registrar execuções e modelos em um experimento.

Observação

Se você excluir um teste de notebook usando a API (por exemplo, MlflowClient.tracking.delete_experiment() no Python), o próprio notebook será movido para a pasta da lixeira.

Exibir experimentos

Cada experimento ao qual você tem acesso aparece na página de experimentos. Nessa página, você pode exibir qualquer experimento. Clique em um nome de experimento para exibir a página de detalhes do experimento.

Maneiras adicionais de acessar a página de detalhes do experimento:

  • Você pode acessar a página de detalhes do experimento de um workspace a partir do menu do workspace.
  • Você pode acessar a página de detalhes do experimento de um notebook diretamente pelo próprio notebook.

Para pesquisar experimentos, digite o texto no campo Filtrar experimentos e pressione Enter ou clique no ícone de lupa. A lista de experimentos é alterada para mostrar apenas os experimentos que contêm o texto de pesquisa nas colunas Nome ou Local .

Para uso avançado, você pode inserir uma consulta de pesquisa para tags.`mlflow.note.content` realizar a pesquisa com base na coluna Descrição. Para obter mais detalhes sobre a sintaxe, consulte Experimentos de Pesquisa. Observe que, ao contrário da pesquisa por Nome ou Localização, pesquisar por meio de marcas requer que você construa manualmente a consulta de pesquisa com um identificador e um comparador. Ele não retornará diretamente todos os resultados que contêm o texto da pesquisa.

Clique no nome de qualquer experimento na tabela para exibir a página de detalhes do experimento:

Exibir experimento

A página de detalhes do experimento lista todas as execuções associadas ao experimento. Na tabela, você pode abrir a página de execução para qualquer execução associada ao experimento clicando em seu Nome de Execução. A coluna Origem fornece acesso à versão do notebook que criou a execução. Você também pode pesquisar e filtrar as execuções por métricas ou configurações de parâmetro.

Exibir um experimento do workspace

  1. Clique em Ícone do WorkspaceWorkspace na barra lateral.
  2. Vá para a pasta que contém o experimento.
  3. Clique no nome do experimento.

Exibir o experimento no notebook

Na barra lateral direita do bloco de anotações, clique no ícone ExperimentoÍcone de Experimento.

A barra lateral Execuções do Experimento é exibida e mostra um resumo de cada execução associada ao experimento do notebook, incluindo parâmetros e métricas de execução. Na parte superior da barra lateral está o nome do experimento no qual o log mais recentemente é executado (um experimento de notebook ou um experimento de workspace).

Exibir parâmetros e métricas de execução

Na barra lateral, você pode navegar até a página de detalhes do experimento ou diretamente para uma execução.

  • Para exibir um experimento, clique no Link Externo à direita, perto de Execuções de Experimento.
  • Para exibir uma execução, clique no nome da execução.

Gerenciar experimentos

Você pode renomear, excluir ou gerenciar permissões para um experimento que você possui na página de experimentos, na página de detalhes do experimento ou no menu do workspace.

Observação

Você não pode renomear, excluir ou gerenciar permissões diretamente em um experimento do MLflow criado por um notebook em uma pasta Git do Databricks. Você deve executar essas ações no nível da pasta Git.

Renomear experimento

Você pode renomear um experimento que você possui na página Experimentos ou na página de detalhes do experimento para esse experimento.

  • Na página Experimentos, clique no ícone do menu kebab na coluna mais à direita e, em seguida, clique em Renomear.

Renomeie na página de Experimentos.

  • Na página de detalhes do experimento, clique no ícone de menu Kebab. Ao lado de Permissões e clique em Renomear.

Renomeie a partir da página de detalhes do experimento.

Você pode renomear um experimento do espaço de trabalho. Clique com o botão direito do mouse no nome do experimento e clique em Renomear.

Obter a ID do experimento e o caminho para o experimento

Na página de detalhes do experimento, você pode obter o caminho para um experimento de notebook clicando no ícone de informações à direita do nome do experimento. Uma nota pop-up é exibida que mostra o caminho para o experimento, a ID do experimento e o local do artefato. Você pode usar a ID do experimento no comando set_experiment MLflow para definir o experimento do MLflow ativo.

Ícone do nome do experimento

Em um notebook, você pode copiar o caminho completo do experimento clicando no Ícone de Caminho na barra lateral do experimento do notebook.

Ícone da rota do experimento na barra lateral do bloco de anotações.

Excluir o experimento do notebook

Os experimentos do notebook fazem parte do notebook e não podem ser excluídos separadamente. Quando você exclui um notebook, o experimento do notebook associado é excluído. Quando você exclui um experimento de notebook usando a interface do usuário, o notebook também é excluído.

Para excluir experimentos de notebook usando a API, use a API do Workspace para garantir que o notebook e o experimento sejam excluídos do workspace.

Excluir um espaço de trabalho ou um experimento de notebook

Você pode excluir um experimento que você possui na página de experimentos ou na página de detalhes do experimento.

Importante

Quando você exclui um experimento de notebook, o notebook também é excluído.

  • Na página Experimentos, clique no ícone de menu Kebab na coluna mais à direita e, em seguida, clique em Excluir.

Excluir da página de experimentos.

  • Na página de detalhes do experimento, clique no ícone de menu Kebab. Ao lado de Permissões, clique em Excluir.

Excluir da página de detalhes do experimento.

Você pode excluir um experimento do espaço de trabalho do ambiente de trabalho. Clique com o botão direito do mouse no nome do experimento e clique em Mover para o Lixo.

Alterar permissões para um experimento

Para alterar as permissões de um experimento na página de detalhes do experimento, clique em Permissões.

Menu de permissões de página de detalhes do experimento

Você pode alterar as permissões para um experimento que você possui na página Experimentos. Clique no ícone do menu Kebab na coluna mais à direita e clique em Permissões.

Altere as permissões da página Experimentos.

Para obter informações sobre os níveis de permissão do experimento, confira ACLs de experimento do MLflow.

Copiar experimentos entre workspaces

Para migrar experimentos do MLflow entre workspaces, é possível usar o projeto de software livre orientado pela comunidade MLflow Export-Import.

Com essas ferramentas, você pode:

  • Compartilhe e colabore com outros cientistas de dados no mesmo servidor de rastreamento ou em outro. Por exemplo, é possível clonar um experimento de outro usuário em seu workspace.
  • Copie os experimentos e execuções do MLflow do servidor de acompanhamento local para o workspace do Databricks.
  • Faça backup de experimentos e modelos críticos para outro workspace do Databricks.