Aprenda Machine Learning com DataRobot Auto ML em 2022
Índice
- Introdução
- Preparação dos dados
- Importação dos dados no DataRobot
- Definir a variável-alvo
- Escolher o modo de modelagem
- Ir para a página de dados
- Avaliação da qualidade dos dados
- Escolher as características
- Criar uma lista de características
- Engenharia de características
- Escolher modelos
- Selecionar a lista de características
- Mudar o tamanho da amostra
- Selecionar as execuções de validação cruzada
- Adicionar o modelo
- Mudar a métrica de desempenho do modelo
- Descrição do modelo
- Avaliação do modelo
- Gráfico de ganho
- Curva ROC
- Matriz de confusão e matriz de lucros
- Métricas de desempenho do modelo
- Limiar do modelo
- Painel de treinamento do modelo
- Ajuste do modelo
- Desbloquear conjunto de validação
- Importância das características
- Velocidade vs. Precisão
- Comparação de modelos
- Seleção do modelo
- Fazer previsões
- Baixar previsões
📜 Introdução
Neste tutorial, vamos falar sobre como usar o DataRobot para construir uma lista de características, treinar modelos de aprendizado de máquina, avaliar o desempenho do modelo e fazer previsões. O DataRobot é uma plataforma de aprendizado de máquina automatizada que torna mais fácil e rápido desenvolver modelos precisos. Vamos seguir os passos abaixo para realizar essas tarefas:
⚙️ Preparação dos dados
Antes de começarmos, é necessário preparar os dados que serão usados neste tutorial. O conjunto de dados utilizado é o conjunto de dados de câncer de mama. Se você não tiver esse conjunto de dados, pode seguir as instruções fornecidas neste tutorial para exportar o conjunto de treinamento e teste como arquivos CSV.
🚀 Importação dos dados no DataRobot
Após fazer login no aplicativo DataRobot, você verá a tela inicial. Vamos importar os dados do conjunto de treinamento de câncer de mama clicando no botão laranja "Arquivo local". Após a importação, precisamos inserir a variável-alvo para o projeto.
🎯 Definir a variável-alvo
O conjunto de dados de previsão de câncer de mama possui uma variável-alvo binária chamada "target". Esta variável indica se o paciente tem câncer de mama ou não. Após definir a variável-alvo, o DataRobot automaticamente cria um gráfico de barras para a variável.
🎛️ Escolher o modo de modelagem
O DataRobot fornece quatro modos de modelagem diferentes para escolher:
- Autopilot: seleciona os melhores modelos preditivos para a variável-alvo.
- Rápido: executa os modelos selecionados no máximo do tamanho da amostra.
- Manual: executa apenas os modelos selecionados pelo usuário.
- Abrangente: executa todos os modelos do repositório, o que pode levar muito tempo para ser concluído.
O modo padrão é o "Rápido", mas vamos escolher o modo "Manual" para selecionar manualmente os modelos.
📊 Ir para a página de dados
Após clicar em "Iniciar", o DataRobot avaliará automaticamente a qualidade do conjunto de dados. O progresso da avaliação pode ser visto no lado direito da tela. Após a conclusão da avaliação, uma janela será aberta e nos perguntará se queremos ir para o repositório ou rejeitar. Vamos escolher "Rejeitar" por enquanto, pois queremos examinar as características antes de escolher os modelos do repositório.
✔️ Avaliação da qualidade dos dados
Depois de rejeitar, veremos a página de resumo dos dados, contendo informações como nome do conjunto de dados, número de características, número de registros e número de valores ausentes para cada característica. A primeira coluna é o nome da característica e as características são classificadas em ordem decrescente com base na importância da característica por padrão. Mas podemos alterar a ordenação clicando no cabeçalho das colunas. Os resultados de classificação podem ser alternados entre ordem ascendente e descendente.
✅ Escolher as características
Para escolher as características para os modelos, clique na caixa de seleção ao lado do nome da característica e desmarque as características que não desejamos incluir no modelo. Vamos desmarcar as últimas 3 características com menor importância.
📑 Criar uma lista de características
Clique no botão laranja "+ Criar lista de características", dê um nome a ela e clique em "Criar lista de características".
🔧 Engenharia de características
A etapa de engenharia de características é opcional. Podemos criar uma nova característica transformada clicando no botão laranja "Ações" e selecionando "Criar transformação f(x)". Vamos criar a característica transformada "log_mean_area" inserindo a fórmula na caixa de expressão. Após clicar no botão laranja "Criar", podemos ver que a nova característica "log_mean_area" aparece abaixo da característica original "mean_area" e a versão log da variável não apresenta nenhum aviso de qualidade dos dados.
🧩 Escolher modelos
Clique em "Modelos" no menu superior e depois em "+ Adicionar novo modelo". Em "Selecionar um modelo", pesquise por "XGBoost" e escolha a versão "BP40" com interrupção antecipada.
📒 Selecionar a lista de características
Em "Executar na lista de características", selecione a lista de características que criamos anteriormente.
📉 Mudar o tamanho da amostra
O DataRobot define 20% dos dados como retidos por padrão e divide o restante dos dados em 5 dobras para validação cruzada. O tamanho da amostra pode ser alterado clicando no sinal de mais laranja abaixo do tamanho da amostra.
✨ Selecionar as execuções de validação cruzada
Em "Execuções de VC", podemos escolher entre executar validação cruzada para uma dobra ou para todas as cinco dobras. O padrão é 1 dobra.
➕ Adicionar o modelo
Após selecionar todas as opções do modelo, clique no botão laranja "Adicionar Modelo" e o modelo será adicionado à tabela de classificação. O processo de treinamento do modelo será exibido no painel direito. Podemos seguir o mesmo processo para adicionar novos modelos clicando na seta para baixo laranja ao lado de "Selecionar um modelo".
📈 Mudar a métrica de desempenho do modelo (Opcional)
Para mudar a métrica de desempenho do modelo, clique no botão "Fechar" ao lado do botão laranja "Adicionar Modelo". A métrica padrão é "LogLoss", mas podemos alterá-la para outras métricas, como "AUC". Os resultados de validação e validação cruzada do modelo serão atualizados de acordo.
📝 Descrição do modelo
Após a conclusão do treinamento do modelo, clique no nome do modelo e o painel do modelo será expandido para mostrar mais informações. A seção "Descrever" contém todas as informações sobre o processo de treinamento do modelo.
👀 Avaliação do modelo
As informações de avaliação do modelo estão na guia "Avaliar". A guia "Grafico de ganho" mostra o gráfico de ganho plotado para os valores previstos e reais. Abaixo do gráfico de ganho, há opções para seleção de dados, número de intervalos, classificação dos intervalos e ativar perfuração. Podemos passar o mouse sobre os marcadores para ver as informações do intervalo. Após ativar a perfuração de dados, podemos clicar no sinal de adição no marcador para ver as informações do nível do registro.
📈 Gráfico da Curva ROC
A guia "Curva ROC" possui a distribuição de previsão, a curva ROC, a matriz de confusão e as métricas de desempenho do modelo.
📊 Matriz de confusão e matriz de lucros
Podemos clicar no botão "Adicionar lucro" na seção "Matriz de confusão" para adicionar uma matriz de lucros e dar um nome a ela. Ao adicionar a matriz de lucros, podemos ver os lucros ao lado das contagens na matriz de confusão.
📈 Métricas de desempenho do modelo
O DataRobot exibe pontuação F1, taxa positiva verdadeira (Sensibilidade) e valor preditivo positivo (Precisão) para o modelo por padrão, mas podemos clicar no botão laranja "Selecionar métricas" para selecionar as métricas a serem exibidas.
🎚️ Limiar do modelo
O limiar do modelo pode ser ajustado clicando no número laranja ao lado de "Limiar de exibição". Podemos maximizar a pontuação F1, maximizar o MCC ou maximizar o lucro. Alternativamente, podemos selecionar um limiar personalizado e aplicá-lo clicando no botão laranja "Usar como Limiar de Previsão".
📊 Painel de treinamento do modelo
A guia "Painel de treinamento" mostra as perdas, a precisão, a taxa de aprendizado e o momento ao longo das iterações.
💪 Ajuste do modelo
Para ajustar os hiperparâmetros do modelo, vá para "Avaliar" e depois para "Ajuste avançado". Nesta seção, são listados todos os valores atuais dos hiperparâmetros e o usuário pode alterar os valores para ajustar o modelo. Por exemplo, se quisermos ajustar o parâmetro "tamanho_lote", podemos clicar na caixa de entrada para o tamanho do lote e inserir um valor, vários valores ou um intervalo de valores.
🔓 Desbloquear conjunto de validação
Após finalizar todos os modelos, volte para "Modelos" e clique em "Desbloquear conjunto de validação do projeto" para todos os modelos no painel direito. Em seguida, clique no botão "Desbloquear conjunto de validação do projeto" na janela pop-up. Podemos ver que a coluna "Conjunto de validação" mudou de uma trava cinza para os valores de métrica.
🌟 Importância das características
O DataRobot plotará a importância das características na seção "Visão geral" em "Modelos".
⏲️ Velocidade vs. Precisão
Em "Modelos -> Velocidade vs. Precisão", há um gráfico de dispersão com o eixo x sendo o tempo para fazer 1000 previsões e o eixo y sendo o escore de validação para a métrica selecionada. Para os dois modelos neste tutorial, o modelo XGBoost é mais rápido e com uma pontuação AUC maior para o conjunto de validação.
📊 Comparação de modelos
Podemos ver o resumo da comparação dos modelos clicando em "Comparação de modelos" no sub-menu de "Modelos". O DataRobot resume as métricas em uma tabela e destaca os melhores valores entre os modelos. Para os dois modelos selecionados neste tutorial, podemos ver que o modelo XGBoost tem um melhor desempenho no conjunto de validação, enquanto o modelo de rede neural tem um melhor desempenho na validação cruzada e no conjunto de validação. O XGBoost é mais rápido que o modelo de rede neural para previsão. Também podemos comparar o desempenho dos modelos lado a lado para o gráfico de ganho duplo, gráfico de ganho, curva ROC e curva de lucro.
➡️ Seleção do modelo
Após a comparação dos modelos, decidimos avançar com o modelo de rede neural porque ele tem um melhor desempenho na validação cruzada e no conjunto de validação. Nosso conjunto de dados de teste é pequeno, então o tempo de previsão mais longo não é uma preocupação.
📈 Fazer previsões
Clique em "Modelos -> Classificação" e depois no nome do modelo de rede neural. Na seção expandida, clique em "Previsão". Em "Previsões de teste", podemos personalizar o limiar de previsão. Clique no botão laranja "Escolher arquivo" para fazer o upload do arquivo de teste. Podemos fazer o upload do arquivo do local do computador, de uma URL, de uma fonte de dados ou do AI Catalog. Após fazer o upload do arquivo de teste, ele aparecerá na seção "Conjuntos de Previsão". Clique no botão laranja "Calcular previsões" para fazer as previsões.
💾 Baixar previsões
Após a conclusão das previsões, clique no botão laranja "Baixar previsões" para fazer o download dos resultados da previsão. Os resultados de previsão contêm o ID da linha, a probabilidade prevista e a etiqueta prevista.
(Data sources: DataRobot)