Partilhar via


Treinar modelos de ML com a interface do usuário do Azure Databricks AutoML

Este artigo demonstra como treinar um modelo de aprendizado de máquina usando o AutoML e a interface do usuário do Databricks Machine Learning. A interface do usuário do AutoML orienta você pelo processo de treinamento de um modelo de classificação, regressão ou previsão em um conjunto de dados.

Para acessar a interface do usuário:

  1. Na barra lateral, selecione New > AutoML Experiment.

    Você também pode criar um novo experimento AutoML na página Experimentos.

    A página Configurar experimento AutoML é exibida. Nesta página, você configura o processo AutoML, especificando o conjunto de dados, o tipo de problema, a coluna de destino ou rótulo a ser prevista, a métrica a ser usada para avaliar e pontuar as execuções do experimento e as condições de parada.

Requisitos

Consulte Requisitos para experimentos AutoML.

Configurar problemas de classificação ou regressão

Você pode configurar um problema de classificação ou regressão usando a interface do usuário AutoML com as seguintes etapas:

  1. No campo Computação, selecione um cluster executando o Databricks Runtime ML.

  2. No menu suspenso Tipo de problema de ML, selecione Regressão ou Classificação. Se você estiver tentando prever um valor numérico contínuo para cada observação, como renda anual, selecione regressão. Se você estiver tentando atribuir cada observação a uma de um conjunto discreto de classes, como risco de crédito bom ou risco de crédito ruim, selecione classificação.

  3. Em Conjunto de dados, selecione Procurar.

  4. Navegue até a tabela que deseja usar e clique em Selecionar. O esquema da tabela é exibido.

    Somente para problemas de classificação e regressão, você pode especificar quais colunas incluir no treinamento e selecionar métodos de imputação personalizados.

  5. Clique no campo Destino de previsão. Uma lista suspensa é exibida listando as colunas mostradas no esquema. Selecione a coluna que deseja que o modelo preveja.

  6. O campo Nome do experimento mostra o nome padrão. Para alterá-lo, digite o novo nome no campo.

Também pode:

Configurar problemas de previsão

Você pode configurar um problema de previsão usando a interface do usuário do AutoML com as seguintes etapas:

  1. No campo Computação, selecione um cluster executando o Databricks Runtime 10.0 ML ou superior.
  2. No menu suspenso Tipo de problema de ML, selecione Previsão.
  3. Em Conjunto de Dados, clique em Procurar. Navegue até a tabela que deseja usar e clique em Selecionar. O esquema da tabela é exibido.
  4. Clique no campo Destino de previsão. Um menu suspenso aparece listando as colunas mostradas no esquema. Selecione a coluna que deseja que o modelo preveja.
  5. Clique no campo Coluna de tempo . Uma lista suspensa é exibida mostrando as colunas do conjunto de dados do tipo timestamp ou date. Selecione a coluna que contém os períodos de tempo para a série temporal.
  6. Para previsões de várias séries, selecione a(s) coluna(s) que identificam as séries temporais individuais na lista suspensa Identificadores de séries temporais. O AutoML agrupa os dados por essas colunas como séries temporais diferentes e treina um modelo para cada série de forma independente. Se você deixar esse campo em branco, o AutoML assumirá que o conjunto de dados contém uma única série temporal.
  7. Nos campos Horizonte de previsão e frequência, especifique o número de períodos de tempo no futuro para os quais o AutoML deve calcular os valores previstos. Na caixa à esquerda, insira o número inteiro de períodos a serem previstos. Na caixa à direita, selecione as unidades. .. nota :: Para usar Auto-ARIMA, a série temporal deve ter uma frequência regular (ou seja, o intervalo entre quaisquer dois pontos deve ser o mesmo em toda a série temporal). A frequência deve corresponder à unidade de frequência especificada na chamada da API ou na interface do usuário do AutoML. O AutoML lida com as etapas de tempo ausentes preenchendo esses valores com o valor anterior.
  8. No Databricks Runtime 11.3 LTS ML e superior, você pode salvar os resultados da previsão. Para fazer isso, especifique um banco de dados no campo Banco de dados de saída. Clique em Procurar e selecione um banco de dados na caixa de diálogo. O AutoML grava os resultados da previsão em uma tabela neste banco de dados.
  9. O campo Nome do experimento mostra o nome padrão. Para alterá-lo, digite o novo nome no campo.

Também pode:

Usar tabelas de recursos existentes do Databricks Feature Store

No Databricks Runtime 11.3 LTS ML e superior, você pode usar tabelas de recursos no Databricks Feature Store para expandir o conjunto de dados de treinamento de entrada para seus problemas de classificação e regressão.

No Databricks Runtime 12.2 LTS ML e superior, você pode usar tabelas de recursos no Databricks Feature Store para expandir o conjunto de dados de treinamento de entrada para todos os seus problemas de AutoML: classificação, regressão e previsão.

Para criar uma tabela de recursos, consulte Criar uma tabela de recursos no Catálogo Unity ou Criar uma tabela de recursos no Databricks Feature Store.

Depois de concluir a configuração do experimento AutoML, você pode selecionar uma tabela de recursos com as seguintes etapas:

  1. Clique em Participar de recursos (opcional).

    Selecione o botão Ingressar em recursos

  2. Na página Ingressar Recursos Adicionais, selecione uma tabela de recursos no campo Tabela de Recursos.

  3. Para cada chave primária da tabela de recursos, selecione a chave de pesquisa correspondente. A chave de pesquisa deve ser uma coluna no conjunto de dados de treinamento que você forneceu para seu experimento AutoML.

  4. Para tabelas de recursos de séries temporais, selecione a chave de pesquisa de carimbo de data/hora correspondente. Da mesma forma, a chave de pesquisa de carimbo de data/hora deve ser uma coluna no conjunto de dados de treinamento fornecido para seu experimento AutoML.

    Selecionar chave primária e tabelas de pesquisa

  5. Para adicionar mais tabelas de recursos, clique em Adicionar outra Tabela e repita as etapas acima.

Configurações avançadas

Abra a seção Configuração Avançada (opcional) para acessar esses parâmetros.

  • A métrica de avaliação é a principal métrica usada para pontuar as corridas.
  • No Databricks Runtime 10.4 LTS ML e superior, você pode excluir estruturas de treinamento da consideração. Por padrão, o AutoML treina modelos usando estruturas listadas em algoritmos AutoML.
  • Você pode editar as condições de parada. As condições de parada padrão são:
    • Para experiências de previsão, pare após 120 minutos.
    • No Databricks Runtime 10.4 LTS ML e inferior, para experimentos de classificação e regressão, pare após 60 minutos ou depois de completar 200 ensaios, o que acontecer primeiro. Para o Databricks Runtime 11.0 ML e superior, o número de ensaios não é usado como uma condição de parada.
    • No Databricks Runtime 10.4 LTS ML e superior, para experimentos de classificação e regressão, o AutoML incorpora a parada antecipada; ele interrompe o treinamento e o ajuste de modelos se a métrica de validação não estiver mais melhorando.
  • No Databricks Runtime 10.4 LTS ML e superior, você pode selecionar uma coluna de tempo para dividir os dados para treinamento, validação e teste em ordem cronológica (aplica-se apenas à classificação e regressão).
  • O Databricks recomenda não preencher o campo Diretório de dados. Ao fazer isso, dispara o comportamento padrão que é armazenar com segurança o conjunto de dados como um artefato MLflow. Um caminho DBFS pode ser especificado, mas, nesse caso, o conjunto de dados não herda as permissões de acesso do experimento AutoML.

Seleção de colunas

Nota

Esta funcionalidade só está disponível para problemas de classificação e regressão

No Databricks Runtime 10.3 ML e superior, você pode especificar quais colunas o AutoML deve usar para treinamento. Para excluir uma coluna, desmarque-a na coluna Incluir .

Não é possível soltar a coluna selecionada como o destino de previsão ou como a coluna de tempo para dividir os dados.

Por padrão, todas as colunas são incluídas.

Imputação de valores em falta

No Databricks Runtime 10.4 LTS ML e superior, você pode especificar como os valores nulos são imputados. Na interface do usuário, selecione um método na lista suspensa na coluna Impute com no esquema da tabela.

Por padrão, o AutoML seleciona um método de imputação com base no tipo de coluna e no conteúdo.

Nota

Se você especificar um método de imputação não padrão, o AutoML não executará a deteção de tipo semântico.

Execute o experimento e monitore os resultados

Para iniciar o experimento AutoML, clique em Iniciar AutoML. O experimento começa a ser executado e a página de treinamento AutoML é exibida. Para atualizar a tabela de execuções, clique em Botão Atualizar.

Nesta página, pode:

  • Pare a experiência a qualquer momento.
  • Abra o bloco de anotações de exploração de dados.
  • O monitor é executado.
  • Navegue até a página de execução para qualquer execução.

Com o Databricks Runtime 10.1 ML e superior, o AutoML exibe avisos para possíveis problemas com o conjunto de dados, como tipos de coluna sem suporte ou colunas de alta cardinalidade.

Nota

O Databricks faz o seu melhor para indicar possíveis erros ou problemas. No entanto, isso pode não ser abrangente e pode não capturar problemas ou erros para os quais você pode estar pesquisando. Por favor, certifique-se de conduzir suas próprias avaliações também.

Para ver quaisquer avisos para o conjunto de dados, clique na guia Avisos na página de treinamento ou na página do experimento após a conclusão do experimento.

Avisos AutoML

Quando o experimento for concluído, você poderá:

  • Registre e implante um dos modelos com MLflow.
  • Selecione Ver bloco de notas para o melhor modelo para rever e editar o bloco de notas que criou o melhor modelo.
  • Selecione Exibir bloco de anotações de exploração de dados para abrir o bloco de anotações de exploração de dados.
  • Pesquise, filtre e classifique as execuções na tabela de execuções.
  • Veja os detalhes de qualquer corrida:
    • O bloco de anotações gerado contendo o código-fonte para uma execução de avaliação pode ser encontrado clicando na execução MLflow. O bloco de anotações é salvo na seção Artefatos da página de execução. Você pode baixar este bloco de anotações e importá-lo para o espaço de trabalho, se o download de artefatos estiver habilitado pelos administradores do espaço de trabalho.
    • Para ver os resultados da execução, clique na coluna Modelos ou na coluna Hora de Início. A página de execução é exibida mostrando informações sobre a execução da avaliação (como parâmetros, métricas e tags) e artefatos criados pela execução, incluindo o modelo. Esta página também inclui trechos de código que você pode usar para fazer previsões com o modelo.

Para voltar a este experimento AutoML mais tarde, encontre-o na tabela na página Experimentos. Os resultados de cada experimento AutoML, incluindo os blocos de anotações de exploração de dados e treinamento, são armazenados em uma databricks_automl pasta na pasta inicial do usuário que executou o experimento.

Registrar e implantar um modelo

Você pode registrar e implantar seu modelo com a interface do usuário do AutoML:

  1. Selecione o link na coluna Modelos para o modelo a ser registrado. Quando uma execução é concluída, o melhor modelo (com base na métrica primária) é a linha superior.
  2. Selecione botão registrar modelo para registrar o modelo no Registro modelo.
  3. Selecione Ícone ModelosModelos na barra lateral para navegar até o Registro de modelo.
  4. Selecione o nome do seu modelo na tabela de modelos.
  5. Na página do modelo registrado, você pode servir o modelo com o Model Serving.

Nenhum módulo chamado 'pandas.core.indexes.numeric

Ao servir um modelo construído usando AutoML com Model Serving, você pode obter o erro: No module named 'pandas.core.indexes.numeric.

Isso ocorre devido a uma versão incompatível pandas entre o AutoML e o modelo que serve o ambiente de ponto final. Você pode resolver esse erro executando o script add-pandas-dependency.py. O script edita o requirements.txt e conda.yaml para o modelo registrado para incluir a versão de dependência apropriada pandas : pandas==1.5.3

  1. Modifique o script para incluir o run_id da execução do MLflow onde o modelo foi registrado.
  2. Registro novo do modelo no registro do modelo MLflow.
  3. Tente servir a nova versão do modelo MLflow.