Vertex AI: Previsão de risco de empréstimo com AutoML
- Visão geral
- Configuração
- Introdução à Vertex AI
- Tarefa 1: preparar os dados de treinamento
- Tarefa 2: treinar o modelo
- Tarefa 3: avaliar o desempenho do modelo (somente demonstração)
- Tarefa 4: implantar o modelo (apenas demonstração)
- Tarefa 5: token do portador SML
- Tarefa 6: receber previsões
- Parabéns!
- Finalize o laboratório
Visão geral
Neste laboratório, você vai usar a Vertex AI para treinar e fornecer um modelo de machine learning para prever o risco de empréstimo com um conjunto de dados tabular.
Objetivos
Você vai aprender como:
- fazer upload de um conjunto de dados para a Vertex AI;
- treinar um modelo de machine learning com o AutoML;
- avaliar o desempenho do modelo;
- implantar o modelo em um endpoint;
- receber previsões.
Configuração
Antes de clicar no botão Start Lab
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer, que é iniciado quando você clica em Start Lab, mostra por quanto tempo os recursos do Cloud ficarão disponíveis.
Este laboratório prático do Qwiklabs permite que você realize as atividades em um ambiente real de nuvem, não em um ambiente simulado ou de demonstração. Isso é possível porque você recebe credenciais novas e temporárias para fazer login e acessar o Google Cloud Platform durante o laboratório.
O que é necessário
Para fazer este laboratório, você precisa ter:
- acesso a um navegador de Internet padrão (recomendamos o Chrome);
- tempo para concluir todas as atividades.
Observação: não use um projeto seu nem uma conta pessoal do GCP neste laboratório.
Como começar o laboratório e fazer login no console
-
Clique no botão Começar o laboratório. Se for preciso pagar pelo laboratório, você verá um pop-up para selecionar a forma de pagamento. Um painel aparece à esquerda contendo as credenciais temporárias que você precisa usar no laboratório.
-
Copie o nome de usuário e clique em Abrir console do Google. O laboratório ativa os recursos e depois abre a página Escolha uma conta em outra guia.
Observação: abra as guias em janelas separadas, lado a lado. -
Na página "Escolha uma conta", clique em Usar outra conta. A página de login abre.
-
Cole o nome de usuário que foi copiado do painel "Detalhes da conexão". Em seguida, copie e cole a senha.
- Acesse as próximas páginas:
- Aceite os Termos e Condições.
- Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
- Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do Cloud abre nesta guia.
Introdução à Vertex AI
Este laboratório usa a Vertex AI, a plataforma unificada de IA no Google Cloud, para treinar e implantar um modelo de ML. A Vertex AI oferece duas opções em uma plataforma para criar um modelo de ML: uma solução sem código com AutoML e uma solução baseada em código com Treinamento personalizado usando o Vertex Workbench. Você usa o AutoML neste laboratório.
Neste laboratório, você criará um modelo de ML para determinar se um cliente específico vai pagar um empréstimo.
Tarefa 1: preparar os dados de treinamento
O painel inicial da Vertex AI ilustra as fases principais de treinamento e implantação de um modelo de ML: preparar os dados de treinamento, treinar o modelo e receber previsões. Depois, o painel exibe suas atividades recentes, como conjuntos de dados, modelos, previsões, endpoints e instâncias de notebooks.
Crie um conjunto de dados
- No console do Google Cloud, em Menu de navegação, clique em Vertex AI > Conjuntos de dados.
- Clique em Criar conjunto de dados.
- Dê ao conjunto de dados o nome LoanRisk.
- Para o tipo de dados e objetivo, clique em Tabular e selecione Regressão/classificação.
- Clique em Criar.
Faça upload dos dados
Você pode importar dados na Vertex AI de três formas:
- Fazer upload de arquivos CSV do seu computador.
- Selecionar arquivos CSV do Cloud Storage.
- Selecionar uma tabela ou visualização do BigQuery.
Para facilitar, o conjunto de dados já foi carregado no Cloud Storage.
-
Escolha Selecionar arquivos CSV do Cloud Storage como a fonte dos dados.
-
Para Importar o caminho do arquivo, insira:
- Clique em Continuar.
(Opcional) Gerar estatísticas
-
Para ver estatísticas descritivas de cada coluna do seu conjunto de dados, clique em Gerar estatísticas.
A geração das estatísticas pode levar alguns minutos, especialmente na primeira vez. -
Quando as estatísticas estiverem prontas, clique no nome de cada coluna para exibir gráficos de análise.
Tarefa 2: treinar o modelo
Com um conjunto de dados carregado, você já pode treinar um modelo para prever se o cliente vai pagar o empréstimo.
- Clique em Treinar novo modelo e selecione Outro.
Método de treinamento
-
O conjunto de dados já foi nomeado LoanRisk.
-
Em Objetivo, selecione Classificação.
Selecione Classificação em vez de Regressão porque você vai prever um número distinto (se um cliente vai pagar um empréstimo: 0 para pagamento, 1 para inadimplência/não pagamento), e não um número contínuo.
- Clique em Continuar.
Detalhes do modelo
Especifique o nome do modelo e a coluna de destino.
-
Dê um nome ao modelo, como LoanRisk.
-
Para Coluna de destino, selecione Padrão.
-
(Opcional) Explore Opções avançadas para determinar como atribuir os dados de treinamento X teste e especificar a criptografia.
-
Clique em Continuar.
-
Em Adicionar atributos, clique em Continuar.
Opções de treinamento
Especifique quais colunas você quer incluir no modelo de treinamento. Por exemplo, ClientID pode ser irrelevante para prever o risco de empréstimo.
-
Clique no sinal de menos para excluir a linha ClientID do modelo de treinamento.
-
(Opcional) Acesse as Opções avançadas para selecionar diferentes objetivos de otimização.
Para mais informações sobre objetivos de otimização para modelos tabulares de AutoML, consulte Guia de objetivos de otimização para modelos tabulares do AutoML. -
Clique em Continuar.
Computação e preços
-
Para Orçamento, que representa o número de horas de uso do nó para treinamento, insira 1.
Treinar seu modelo de AutoML por uma hora de computação normalmente é um bom começo para entender se há uma relação entre os atributos e o rótulo que você selecionou. Depois, é possível modificar os atributos e treinar mais para melhorar o desempenho do modelo. -
Deixe a parada antecipada ativada.
-
Clique em Iniciar treinamento.
Dependendo do tamanho dos dados e do método de treinamento, o treinamento pode levar de alguns minutos a algumas horas. Normalmente, você recebe um e-mail do Google Cloud quando o trabalho de treinamento é concluído. No entanto, você não vai receber um e-mail no ambiente do Qwiklabs.
Para diminuir a espera pelo treinamento de modelo, o download de um modelo pré-treinado é feito na Tarefa 5 para receber previsões na Tarefa 6. O modelo pré-treinado é o resultado do treinamento seguindo as mesmas etapas, da Tarefa 1 à Tarefa 2.
Tarefa 3: avaliar o desempenho do modelo (somente demonstração)
A Vertex AI dispõe de muitas métricas para avaliar o desempenho do modelo. Você vai se concentrar em três:
- Curva de precisão/recall
- Matriz de confusão
- Importância do atributo
A curva de precisão/recall
O limite de confiança determina como um modelo de ML conta os casos positivos. Um limite maior aumenta a precisão, mas diminui o recall. Um limite menor diminui a precisão, mas aumenta o recall.
Você pode ajustar manualmente o limite para observar o impacto na precisão e no recall e encontrar o melhor ponto de compensação entre os dois para atender às suas necessidades de negócios.
A matriz de confusão
Uma matriz de confusão informa a porcentagem de exemplos de cada classe no seu conjunto de teste que o modelo previu corretamente.
A matriz de confusão mostra que seu modelo inicial é capaz de prever 100% dos exemplos de pagamento e 87% dos exemplos padrão no seu conjunto de teste corretamente, o que não é tão ruim.
Essa porcentagem pode melhorar se você acrescentar exemplos (mais dados), criar novos atributos, alterar o método de treinamento etc.
A importância do atributo
Na Vertex AI, a importância do atributo é exibida usando um gráfico de barras para ilustrar como cada atributo contribui para uma previsão. Quanto maior a barra ou o valor numérico associado a um atributo, mais importante ele é.
Esses valores de importância do atributo podem ser usados para ajudar a melhorar seu modelo e ter mais confiança em suas previsões. Você pode decidir remover os atributos menos importantes na próxima vez que treinar um modelo ou combinar dois dos atributos mais significativos em um cruzamento de atributos para ver se isso melhora o desempenho do modelo.
A importância do atributo é apenas um exemplo da funcionalidade abrangente de machine learning da Vertex AI chamada Explainable AI. A Explainable AI é um conjunto de ferramentas e frameworks criado para ajudar você a entender e interpretar as previsões feitas pelos seus modelos de machine learning.
Tarefa 4: implantar o modelo (apenas demonstração)
Agora que você tem um modelo treinado, a próxima etapa é criar um endpoint na Vertex. Um atributo de modelo na Vertex pode ter vários endpoints associados a ele e você pode dividir o tráfego entre os endpoints.
Crie e defina um endpoint
-
Na página do seu modelo, clique em Implantar e testar e depois em Implantar no endpoint.
-
Em Nome do endpoint, digite LoanRisk
-
Clique em Continuar.
Configurações e monitoramento de modelo
-
Não mude as configurações de divisão de tráfego.
-
Em Tipo de máquina, selecione e2-standard-8, 8 vCPUs, 32 GiB de memória.
-
Em Opções de explicabilidade, clique em Atribuição de atributos.
-
Clique em Concluído.
-
Clique em Continuar.
-
Em Monitoramento do modelo, clique em Continuar.
-
Em Objetivos do modelo > Fonte de dados de treinamento, selecione Conjunto de dados da Vertex AI.
-
Selecione seu conjunto de dados no menu suspenso.
-
Em Coluna de destino, digite Padrão.
-
Não altere as outras configurações e clique em Implantar.
Seu endpoint vai levar alguns minutos para ser implantado. Quando estiver concluído, uma marca de seleção verde vai aparecer ao lado do nome.
Agora está tudo pronto para você receber previsões no modelo implantado.
Tarefa 5: token do portador SML
Receba o token do portador
Você vai precisar fornecer seu token do portador se quiser autenticar o token para que ele possa chamar o endpoint e receber previsões.
Siga as instruções abaixo para receber seu token. Podem ocorrer problemas nesse processo por conta dos cookies na janela anônima. Se isso acontecer com você, tente usar uma janela normal do navegador.
-
Faça login em https://gsp-auth-kjyo252taq-uc.a.run.app/
-
Use seu endereço de e-mail e senha de estudante para fazer login.
-
Clique no botão Copiar. Com isso, você copia um token bem longo para a área de transferência.
Como o token fica disponível por apenas 60 segundos, você precisa seguir para as próximas etapas depois de copiar essa informação.
Tarefa 6: receber previsões
Nesta seção, você vai usar o serviço Shared Machine Learning (SML) para trabalhar com um modelo já treinado.
VARIÁVEL DE AMBIENTE | VALOR |
---|---|
AUTH_TOKEN | Use o valor da seção anterior |
ENDPOINT | https://sml-api-vertex-kjyo252taq-uc.a.run.app/vertex/predict/tabular_classification |
INPUT_DATA_FILE | INPUT-JSON |
Para usar o modelo treinado, você precisará criar algumas variáveis de ambiente.
-
Abra uma janela do Cloud Shell.
-
Substitua
INSERT_SML_BEARER_TOKEN
pelo valor do token do portador da seção anterior:
- Faça o download dos recursos do laboratório:
- Extraia os recursos do laboratório:
- Crie uma variável de ambiente ENDPOINT:
- Crie uma variável de ambiente
INPUT_DATA_FILE
:
O arquivo INPUT-JSON
é composto pelos seguintes valores:
age | ClientID | income | loan |
---|---|---|---|
40,77 | 997 | 44.964,01 | 3.944,22 |
-
Teste o serviço SML transmitindo os parâmetros especificados nas variáveis de ambiente.
-
Execute uma solicitação ao serviço SML:
Essa consulta vai resultar em uma resposta semelhante a:
- Altere o arquivo
INPUT-JSON
para testar outro cenário:
age | ClientID | income | loan |
---|---|---|---|
30,00 | 998 | 50.000,00 | 20.000,00 |
-
Edite o arquivo
INPUT-JSON
e substitua os valores originais. Use o editor que preferir (vim
,nano
,emacs
) ou o editor de código do Cloud Shell. -
Teste o serviço SML transmitindo os parâmetros especificados nas variáveis de ambiente.
-
Execute uma solicitação ao serviço SML:
Nesse caso, supondo que a renda da pessoa seja de 50.000, ela tenha 30 anos idade e o empréstimo seja de 20.000, o modelo prevê que essa pessoa vai pagar o empréstimo.
Essa consulta vai resultar em uma resposta semelhante a:
Se você usa o console do Google Cloud, a imagem abaixo ilustra como a mesma ação pode ser realizada:
Parabéns!
Você já pode usar a Vertex AI para:
- fazer o upload de um conjunto de dados;
- treinar um modelo com o AutoML;
- avaliar o desempenho do modelo;
- implantar o modelo de AutoML treinado em um endpoint;
- receber previsões.
Consulte a documentação da Vertex AI para saber mais sobre as diferentes partes da plataforma.
Finalize o laboratório
Clique em Terminar o laboratório após a conclusão. O Google Cloud Ensina remove os recursos usados e limpa a conta por você.
Você vai poder avaliar sua experiência no laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Enviar.
O número de estrelas indica o seguinte:
- 1 estrela = muito insatisfeito
- 2 estrelas = insatisfeito
- 3 estrelas = neutro
- 4 estrelas = satisfeito
- 5 estrelas = muito satisfeito
Feche a caixa de diálogo se não quiser enviar feedback.
Para enviar seu feedback, fazer sugestões ou correções, use a guia Suporte.
Copyright 2020 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.