Acesse mais de 700 laboratórios e cursos

Faça a previsão das compras de visitantes com o BigQuery ML

Laboratório 1 hora universal_currency_alt 5 créditos show_chart Introdutório
info Este laboratório pode incorporar ferramentas de IA para ajudar no seu aprendizado.
Acesse mais de 700 laboratórios e cursos

Visão geral

Com o Machine Learning do BigQuery (BigQuery ML), os usuários podem criar e executar modelos de machine learning no BigQuery usando consultas SQL. O objetivo é democratizar o machine learning, de modo que os especialistas em SQL criem modelos usando as respectivas ferramentas e aumentem a velocidade de desenvolvimento ao eliminar a necessidade de movimentar os dados.

O BigQuery inclui um conjunto de dados de e-commerce com milhões de registros do Google Analytics referentes à Google Merchandise Store. Neste laboratório, você vai usar esses dados para criar um modelo que prevê se um visitante fará uma transação.

O que você aprenderá

Como criar, avaliar e usar modelos de machine learning no BigQuery

Pré-requisitos

  • Um navegador, como o Chrome ou o Firefox
  • Conhecimento básico de SQL ou BigQuery

Configuração e requisitos

Para cada laboratório, você recebe um novo projeto do Google Cloud e um conjunto de recursos por um determinado período e sem custos financeiros.

  1. Faça login no Qwiklabs em uma janela anônima.

  2. Confira o tempo de acesso do laboratório (por exemplo, 1:15:00) e finalize todas as atividades nesse prazo.
    Não é possível pausar o laboratório. Você pode reiniciar o desafio, mas vai precisar refazer todas as etapas.

  3. Quando tudo estiver pronto, clique em Começar o laboratório.

  4. Anote as credenciais (Nome de usuário e Senha). É com elas que você vai fazer login no Console do Google Cloud.

  5. Clique em Abrir Console do Google.

  6. Clique em Usar outra conta, depois copie e cole as credenciais deste laboratório nos locais indicados.
    Se você usar outras credenciais, vai receber mensagens de erro ou cobranças.

  7. Aceite os termos e pule a página de recursos de recuperação.

Abra o BigQuery no Console do Cloud

  1. No Console do Google Cloud, selecione o menu de navegação > BigQuery:

Você vai ver a caixa de mensagem Olá! Este é o BigQuery no Console do Cloud. Ela tem um link para o guia de início rápido e lista as atualizações da interface.

  1. Clique em Concluído.

Tarefa 1: Analisar os dados

Nesta tarefa, você vai analisar e preparar um conjunto de dados público para um modelo de machine learning. Você vai executar uma consulta SQL para inspecionar uma amostra de dados do Google Analytics e salvar o resultado como training_data.

Os dados que usaremos neste laboratório estão no projeto bigquery-public-data, que está disponível para todos. Vamos analisar uma amostra desses dados.

  1. Para verificar se o conjunto de dados bqml_lab está presente, clique na seta à esquerda do Project_ID, que começa com qwiklabs-gcp-00-XXXXXXXXXX. O conjunto de dados bqml_lab aparece abaixo.

  2. Clique em + para criar uma nova consulta SQL. Uma nova guia aparece no BigQuery Studio.

Explicar a consulta

  1. Adicione a consulta à caixa Consulta sem título.
SELECT IF(totals.transactions IS NULL, 0, 1) AS label, IFNULL(device.operatingSystem, "") AS os, device.isMobile AS is_mobile, IFNULL(geoNetwork.country, "") AS country, IFNULL(totals.pageviews, 0) AS pageviews FROM `bigquery-public-data.google_analytics_sample.ga_sessions_*` WHERE _TABLE_SUFFIX BETWEEN '20160801' AND '20170631' LIMIT 10000;
  1. Selecione a consulta.

  2. Clique no botão Gemini Gemini Code Assist à esquerda da consulta.

  3. Clique em Explicar esta consulta.

  4. A caixa de diálogo do Gemini estará aberta à direita do BigQuery Studio.

  5. A mensagem de boas-vindas do Gemini no console do Cloud aparece no painel do Gemini. Clique em Iniciar a conversa. Confira uma explicação para a consulta, como a que aparece abaixo na janela de chat.

Observação: se nenhuma explicação aparecer na janela de chat, clique em Explicar esta consulta novamente depois de selecionar a consulta inteira.
  1. Revise a explicação.
Observação: como é uma ferramenta generativa, cada resposta do Gemini Code Assist vai ser um pouco diferente, mas os pontos principais serão os mesmos.
  1. O Gemini retorna uma resposta parecida com a seguinte:

    Esta consulta do GoogleSQL foi criada para extrair uma amostra de dados de sessão do Google Analytics e transformá-la em um formato adequado para machine learning ou fins analíticos.
  2. Clique em Executar.

  3. Clique em Salvar e selecione Salvar visualização.

  4. Na caixa de diálogo "Salvar visualização", clique em Conjunto de dados e selecione bqml_lab.

  5. Em "Tabela", digite training_data e clique em Salvar.

Clique em Verificar meu progresso para conferir o objetivo. Criar uma tabela de visualização.

Tarefa 2: Criar um modelo

Nesta tarefa, você vai gerar um novo modelo de machine learning para prever transações de visitantes com um comando de linguagem natural de consulta SQL no BigQuery. Você especifica um tipo de modelo de regressão logística e o treina usando os training_data atuais.

  1. Clique em + para criar uma nova consulta SQL. Uma nova guia aparece no BigQuery Studio.

  2. Clique em Ferramenta de geração de SQL para acessar a ferramenta de geração de SQL. A caixa de diálogo "Gerar SQL com o Gemini" vai aparecer. Você pode inserir um comando em linguagem natural nesta janela para gerar uma nova instrução SQL.

  3. Copie e cole o comando abaixo

    Crie um modelo chamado sample_model, do tipo logistic_reg, para prever se um visitante fará uma transação usando a tabela de visualização training_data.
  4. Clique em Gerar. O Gemini sugere uma consulta SQL semelhante à abaixo.

    CREATE MODEL `{{{project_0.project_id|set at lab start}}}`.`bqml_lab`.`sample_model` OPTIONS ( model_type = 'LOGISTIC_REG', input_label_cols = ['label']) AS SELECT label, os, is_mobile, country, pageviews FROM `{{{project_0.project_id|set at lab start}}}`.`bqml_lab`.`training_data`;
Observação: se a consulta gerada resultar em uma mensagem de erro, ajuste a sintaxe dela ou substitua a consulta inteira para corresponder ao exemplo fornecido acima.
  1. Clique em Inserir.

  2. Clique em Executar.

Nesse caso, bqml_lab é o nome do conjunto de dados, sample_model é o nome do modelo, training_data são os dados de transações que vimos na tarefa anterior. O tipo de modelo especificado é o de regressão logística binária.

A execução do comando CREATE MODEL cria um job de consulta que será executado de forma assíncrona. Assim, você pode fechar ou atualizar a janela da interface do BigQuery, por exemplo.

Clique em Verificar meu progresso para conferir o objetivo. Criar um modelo.

Informações do modelo e estatísticas de treinamento [opcional]

Se tiver interesse, é possível receber informações sobre o modelo clicando no conjunto de dados bqml_lab no menu à esquerda e depois no modelo sample_model na interface. Em Detalhes, você encontra algumas informações sobre o modelo básico e as opções de treinamento utilizadas na produção desse modelo. Em Treinamento, você encontra uma tabela semelhante a esta:

Uma tabela de seis colunas com 11 linhas de dados relacionados a iteração, perda de dados, taxa de aprendizado, tempo de conclusão

Tarefa 3: Avaliar o modelo

Nesta tarefa, você vai avaliar o desempenho do seu modelo de machine learning usando a função ML.EVALUATE. Ela apresenta métricas importantes que mostram a acurácia do modelo ao prever as transações dos visitantes.

  1. Clique em + para criar uma nova consulta SQL. Uma nova guia aparece no BigQuery Studio.

  2. Clique em Ferramenta de geração de SQL para acessar a ferramenta de geração de SQL. A caixa de diálogo "Gerar SQL com o Gemini" vai aparecer. Você pode inserir um comando em linguagem natural nesta janela para gerar uma nova instrução SQL.

  3. Copie e cole o comando abaixo.

    Crie uma consulta para avaliar o desempenho do modelo "bqml_lab.sample_model" usando a função "ml.EVALUATE".
  4. Clique em Gerar. O Gemini sugere uma consulta SQL semelhante à abaixo.

    SELECT * FROM ML.EVALUATE( MODEL `{{{project_0.project_id|set at lab start}}}`.`bqml_lab`.`sample_model`, TABLE `{{{project_0.project_id|set at lab start}}}`.`bqml_lab`.`training_data`);
Observação: se a consulta gerada resultar em uma mensagem de erro, ajuste a sintaxe dela ou substitua a consulta inteira para corresponder ao exemplo fornecido acima.
  1. Clique em Inserir.

  2. Clique em Executar.

Você vai encontrar uma tabela semelhante a esta:

Tabela de resultados

Tarefa 4: Usar o modelo

Nesta tarefa, você vai aprender a usar a função ML.PREDICT do BigQuery para fazer previsões. Primeiro, você precisa depurar uma consulta que usa uma função incorreta. Você vai usar o Gemini para identificar e corrigir o erro de sintaxe antes de executar a consulta para prever os dez principais países compradores.

  1. Clique em + para criar uma consulta SQL e execute a consulta abaixo:
SELECT IF(totals.transactions IS NULL, 0, 1) AS label, IFNULL(device.operatingSystem, "") AS os, device.isMobile AS is_mobile, IFNULL(geoNetwork.country, "") AS country, IFNULL(totals.pageviews, 0) AS pageviews, fullVisitorId FROM `bigquery-public-data.google_analytics_sample.ga_sessions_*` WHERE _TABLE_SUFFIX BETWEEN '20170701' AND '20170801';

Você vai notar que as partes SELECT e FROM da consulta são semelhantes às que foram usadas para gerar os dados do treinamento. A coluna adicional fullVisitorId será usada para prever transações de usuários individuais. A parte WHERE reflete a mudança no período (1º de julho a 1º de agosto de 2017).

  1. Vamos salvar esses dados de julho para que possamos usá-los nas próximas duas etapas para fazer previsões usando nosso modelo.

  2. Clique em Salvar e selecione Salvar visualização.

  3. Na caixa de diálogo "Salvar visualização", clique em Conjunto de dados e selecione bqml_lab.

  4. Em "Tabela", digite july_data e clique em Salvar.

Fazer previsões de compras por país/região

Com esta consulta, você vai tentar prever o número de transações feitas por visitantes de cada país ou região, classificar os resultados e selecionar os 10 principais por número de compras:

  1. Clique em + para criar uma nova consulta SQL.

  2. Copie e cole a consulta abaixo.

SELECT country, TOTAL(predicted_label) as total_predicted_purchases FROM ml.PREDICT(MODEL `bqml_lab.sample_model`, ( SELECT * FROM `bqml_lab.july_data`)) GROUP BY country ORDER BY total_predicted_purchases DESC LIMIT 10;
  1. Clique em Executar. Você confirma que a consulta não pode ser executada e recebe o seguinte erro:

    Função não encontrada: TOTAL em [3:3]

Depurar o código com o Gemini e corrigir o erro

  1. Clique na janela de conversa no Gemini no BigQuery.

  2. Na janela de conversa, copie e cole a pergunta abaixo.

    Por que estou vendo a mensagem de erro "Função não encontrada: TOTAL em [3:3]" ao executar esta consulta?
  3. Pressione <SHIFT><ENTER>, ou <SHIFT><return> no Mac, para criar uma nova linha na janela de conversa.

  4. Selecione e copie a consulta.

  5. Cole a consulta imediatamente após a pergunta.

  6. Pressione <SHIFT><ENTER>, ou <SHIFT><return> no Mac, para criar uma nova linha na janela de conversa.

  7. Copie e cole esta frase:

    Sugira um novo código para resolver os problemas.
  8. Clique em Enviar comando Enviar solicitação. Você recebe uma resposta do Gemini.

  9. Revise as sugestões na resposta. Com base nas sugestões, indica que TOTAL() não é uma função de agregação SQL válida no BigQuery.

Entre as sugestões, está uma consulta refinada com uma possível solução semelhante à que segue:

SELECT country, SUM(predicted_label) as total_predicted_purchases FROM ml.PREDICT(MODEL `bqml_lab.sample_model`, ( SELECT * FROM `bqml_lab.july_data`)) GROUP BY country ORDER BY total_predicted_purchases DESC LIMIT 10;
  1. Copie a consulta refinada.

  2. Clique em + para criar uma nova consulta SQL.

  3. Cole a consulta refinada na nova guia de consulta sem título.

  4. Clique em Executar.

Nesta consulta, você está usando ml.PREDICT e a parte da consulta do BigQuery ML está vinculada a comandos SQL padrão. Para este laboratório, o que interessa a você é o país e o total de compras de cada um deles. Por isso usamos SELECT, GROUP BY e ORDER BY. LIMIT é utilizado para garantir que você receba apenas os 10 resultados principais.

Você vai encontrar uma tabela semelhante a esta:

Uma tabela de três colunas com 10 linhas de dados relacionados ao total de compras previstas por país

Clique em Verificar meu progresso para conferir o objetivo. Corrija o erro e recupere as dez principais compras por país.

Desafio

Fazer previsões de compras por usuário

Desta vez, você vai tentar prever o número de transações feitas por cada visitante, classificar os resultados e selecionar os dez principais visitantes por número de transações.

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.

Antes de começar

  1. Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
  2. Os laboratórios têm um limite de tempo e não têm o recurso de pausa. Se você encerrar o laboratório, vai precisar recomeçar do início.
  3. No canto superior esquerdo da tela, clique em Começar o laboratório

Usar a navegação anônima

  1. Copie o nome de usuário e a senha fornecidos para o laboratório
  2. Clique em Abrir console no modo anônimo

Fazer login no console

  1. Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
  2. Aceite os termos e pule a página de recursos de recuperação
  3. Não clique em Terminar o laboratório a menos que você tenha concluído ou queira recomeçar, porque isso vai apagar seu trabalho e remover o projeto

Este conteúdo não está disponível no momento

Você vai receber uma notificação por e-mail quando ele estiver disponível

Ótimo!

Vamos entrar em contato por e-mail se ele ficar disponível

Um laboratório por vez

Confirme para encerrar todos os laboratórios atuais e iniciar este

Use a navegação anônima para executar o laboratório

Para executar este laboratório, use o modo de navegação anônima ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.