
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Create a new dataset
/ 20
Create a model and specify model options
/ 20
Evaluate classification model performance
/ 15
Improve model performance with Feature Engineering(Create second model)
/ 15
Improve model performance with Feature Engineering(Better predictive power)
/ 15
Predict which new visitors will come back and purchase
/ 15
O BigQuery é um banco de dados de análise NoOps, totalmente gerenciado e de baixo custo desenvolvido pelo Google. Com ele, você pode consultar muitos terabytes de dados sem ter que gerenciar uma infraestrutura ou precisar de um administrador de banco de dados. O BigQuery usa SQL e está disponível no modelo de pagamento por uso. Assim, você fica livre para se concentrar na análise dos dados e encontrar insights relevantes.
O BigQuery ML é um recurso do BigQuery usado por analistas de dados para criar, treinar, avaliar e fazer previsões usando modelos de machine learning com o mínimo de programação.
Neste laboratório, você vai usar um conjunto especial de dados de e-commerce com milhões de registros do Google Analytics para a Google Merchandise Store carregados no BigQuery. Esses dados também serão usados para criar um modelo de classificação (regressão logística) no BigQuery ML que prevê os hábitos de compra dos clientes.
Neste laboratório, você vai aprender a:
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
Clique no botão Começar o laboratório. Se for preciso pagar por ele, uma caixa de diálogo vai aparecer para você selecionar a forma de pagamento. No painel Detalhes do Laboratório, à esquerda, você vai encontrar o seguinte:
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer Login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
Você também encontra o nome de usuário no painel Detalhes do Laboratório.
Clique em Próxima.
Copie a Senha abaixo e cole na caixa de diálogo de Olá.
Você também encontra a senha no painel Detalhes do Laboratório.
Clique em Próxima.
Acesse as próximas páginas:
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
Você 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 as notas de versão.
O console do BigQuery vai abrir.
O painel Adicionar dados
será exibido.
Clique em Marcar um projeto com estrela por nome em Outras fontes.
Digite data-to-insights
e clique em Marcar com estrela.
Clique no link abaixo para visualizar o projeto público data-to-insights:
Confira as definições de campo do conjunto de dados de e-commerce data-to-insights nesta seção. Mantenha esse link aberto em outra guia para consulta.
Clique na guia Consulta e selecione Em uma nova guia para abrir o editor de consultas.
Cenário: sua equipe de analistas de dados exportou para o BigQuery os registros do Google Analytics referentes a um site de e-commerce e criou uma nova tabela com todos os dados brutos de sessão de visitante para você investigar. Use essas informações para responder às perguntas abaixo.
Pergunta: qual porcentagem do total de visitantes fez uma compra no site?
Resultado: 2,69%
Pergunta: quais são os cinco produtos mais vendidos?
Resultado:
Row |
v2ProductName |
v2ProductCategory |
units_sold |
revenue |
1 |
Nest® Learning Thermostat 3rd Gen-USA - Stainless Steel |
Nest-USA |
17651 |
870976.95 |
2 |
Nest® Cam Outdoor Security Camera - USA |
Nest-USA |
16930 |
684034.55 |
3 |
Nest® Cam Indoor Security Camera - USA |
Nest-USA |
14155 |
548104.47 |
4 |
Nest® Protect Smoke + CO White Wired Alarm-USA |
Nest-USA |
6394 |
178937.6 |
5 |
Nest® Protect Smoke + CO White Battery Alarm-USA |
Nest-USA |
6340 |
178572.4 |
Pergunta: quantos visitantes fizeram compras em acessos posteriores ao site?
Resultados:
Row |
total_visitors |
will_buy_on_return_visit |
1 |
729848 |
0 |
2 |
11873 |
1 |
Pelos resultados, (11.873 / 741.721) = 1,6% do total de visitantes retorna e faz compras no site. Isso inclui o subconjunto de pessoas que fizeram compras na primeira sessão e depois voltaram ao site para comprar mais produtos.
Pergunta: em geral, quais são os motivos para um cliente de e-commerce acessar o site, mas só fazer a compra em outra visita?
Resposta: não existe só uma resposta certa, mas um motivo comum é que o usuário compara vários sites de e-commerce antes de tomar uma decisão final sobre a compra. Isso é muito comum na compra de produtos caros (por exemplo, um carro), que o cliente precisa pesquisar e comparar informações antes de tomar uma decisão. No entanto, isso também acontece em menor escala na compra de outros produtos anunciados no site, como camisetas, acessórios etc.
No mundo do marketing on-line, identificar esses futuros clientes com base nas características da primeira visita e promover os produtos para eles vai aumentar as taxas de conversão e reduzir o número de visitas a sites concorrentes.
Agora, você criará um modelo de machine learning no BigQuery para prever se um novo usuário fará compras no site futuramente. Identificar esses usuários valiosos pode ajudar sua equipe de marketing a exibir promoções especiais e campanhas publicitárias para eles. Essa abordagem pode garantir uma conversão entre uma visita e outra ao site de e-commerce, quando os usuários estiverem comparando os produtos.
O Google Analytics captura várias dimensões e medidas sobre a visita de um usuário ao site de e-commerce. Confira a lista completa de campos na documentação [UA] Esquema do BigQuery Export e exiba o conjunto de dados de demonstração para encontrar atributos úteis que vão ajudar um modelo de machine learning a entender a relação entre os dados da primeira visita de um usuário ao site e a probabilidade de retorno para fazer uma compra.
Sua equipe decide testar se estes dois campos são entradas relevantes para o modelo de classificação:
totals.bounces
(se o visitante saiu do site imediatamente)totals.timeOnSite
(quanto tempo o visitante ficou no site)Pergunta: Quais são os riscos de usar somente os dois campos acima?
Resposta: O desempenho de machine learning depende dos dados de treinamento que ele recebe. Se não houver informações suficientes para o modelo determinar e aprender a relação entre os recursos da entrada e o rótulo (nesse caso, se o visitante fez uma compra mais tarde), o modelo não será preciso. Treinar um modelo somente com esses dois campos pode ser um começo, e você vai conferir se eles são bons o suficiente para produzir um modelo preciso.
Resultados:
Row |
bounces |
time_on_site |
will_buy_on_return_visit |
1 |
0 |
15047 |
0 |
2 |
0 |
12136 |
0 |
3 |
0 |
11201 |
0 |
4 |
0 |
10046 |
0 |
5 |
0 |
9974 |
0 |
6 |
0 |
9564 |
0 |
7 |
0 |
9520 |
0 |
8 |
0 |
9275 |
1 |
9 |
0 |
9138 |
0 |
10 |
0 |
8872 |
0 |
Pergunta: quais campos representam os atributos de entrada e o rótulo?
Resposta: as entradas são representadas por bounces e time_on_site. O rótulo é will_buy_on_return_visit.
Pergunta: Quais dois campos são conhecidos após a primeira sessão de um visitante?
Resposta: bounces e time_on_site são conhecidos após a primeira sessão do visitante.
Pergunta: Qual campo não é conhecido até uma visita futura?
Resposta: will_buy_on_return_visit não é conhecido após a primeira visita. É importante lembrar que você está prevendo um subconjunto de usuários que retornaram ao seu site e fizeram compras. Como não há informações futuras no momento da previsão, você não tem certeza se um novo visitante voltará para fazer compras. Criar um modelo de ML é útil para saber a probabilidade de compras futuras com base nos dados recebidos na primeira sessão.
Pergunta: Depois de analisar os resultados dos dados iniciais, você acha que time_on_site e bounces serão bons indicadores da possibilidade de o usuário retornar e fazer compras no site?
Resposta: geralmente, é preciso treinar e avaliar o modelo antes de afirmar isso. No entanto, com base nos 10 maiores valores de time_on_site
, somente um cliente voltou para comprar, o que não é muito promissor. Vamos conferir como será o desempenho do modelo.
Em seguida, crie um novo conjunto de dados do BigQuery que também vai armazenar seus modelos de ML.
qwiklabs-gcp-...
), e clique em Criar conjunto de dados.Clique em Verificar meu progresso para conferir o objetivo.
Agora que você selecionou os atributos iniciais, já pode criar o primeiro modelo de ML no BigQuery.
Há dois tipos de modelos para escolher:
Modelo |
Tipo de modelo |
Tipo de dados de rótulo |
Exemplo |
Previsão |
linear_reg |
Valor numérico (normalmente um número inteiro ou ponto flutuante) |
Prever os valores de vendas para o próximo ano com base nos dados históricos das vendas. |
Classificação |
logistic_reg |
0 ou 1 para classificação binária |
Classificar um e-mail como spam ou não spam de acordo com o contexto. |
Qual tipo de modelo você deve escolher?
Já que você está dividindo os visitantes em "comprará no futuro" ou "não comprará no futuro", use logistic_reg
em um modelo de classificação.
A consulta a seguir cria um modelo e especifica as opções dele.
Clique em Verificar meu progresso para conferir o objetivo.
Após treinar o modelo, será exibida a mensagem "Essa declaração criou um novo modelo chamado qwiklabs-gcp-xxxxxxxxx:ecommerce.classification_model".
Clique em Ir para o modelo.
Para confirmar que o modelo foi criado, procure classification_model no conjunto de dados de e-commerce.
Em seguida, você vai avaliar o desempenho do modelo com novos dados de avaliação.
Para resolver problemas de classificação no ML, é preciso reduzir a taxa de falso positivo (previsão de compras que não acontecem) e aumentar a taxa de verdadeiro positivo (previsão de compras que acontecem).
É possível conferir essa relação com uma Curva ROC como a mostrada abaixo, em que o objetivo é maximizar a área sob a curva (ou AUC):
No BigQuery ML, roc_auc é apenas um campo para consulta durante a avaliação do seu modelo de ML treinado.
ML.EVALUATE
:O seguinte resultado será exibido:
Row |
roc_auc |
model_quality |
1 |
0.7238561438561438 |
decent |
Depois de avaliar seu modelo, você recebe um roc_auc de 0,72, que indica um poder preditivo adequado, mas não ótimo. Como a meta é deixar a área sob a curva o mais próximo possível de 1, é possível aprimorar o modelo.
Clique em Verificar meu progresso para conferir o objetivo.
Como já mencionamos, há muito mais atributos no conjunto de dados que podem ajudar o modelo a entender melhor a relação entre a primeira sessão de um visitante e a probabilidade de compra em uma próxima visita.
classification_model_2
:Um novo atributo importante adicionado à consulta do conjunto de dados de treinamento é a etapa máxima do processo de finalização da compra que cada visitante alcançou na sessão, registrada no campo hits.eCommerceAction.action_type
. Ao procurar esse campo nas definições de campo, você vai encontrar o mapeamento "6 = Compra realizada".
Clique em Verificar meu progresso para conferir o objetivo.
Saída:
Row |
roc_auc |
model_quality |
1 |
0.9094875124875125 |
good |
Com o novo modelo, você recebe um roc_auc de 0,91, significativamente melhor do que o primeiro.
Agora que você tem um modelo treinado, é hora de fazer algumas previsões.
Clique em Verificar meu progresso para conferir o objetivo.
Você escreverá uma consulta para prever quais novos visitantes voltarão e farão uma compra no site.
As previsões são feitas no último mês do conjunto de dados, dentro de um grupo de 12 meses.
Clique em Verificar meu progresso para conferir o objetivo.
Agora, o modelo mostra previsões para as sessões de e-commerce em julho de 2017. Veja que três novos campos foram adicionados:
Dica: ao treinar seu modelo com novos dados, adicione warm_start = true
às opções para acelerar o treinamento. Não é possível alterar as colunas de atributos. Isso exigiria a criação de um novo modelo.
roc_auc é apenas uma das métricas de desempenho disponíveis durante a avaliação do modelo. Acurácia, precisão e recall também estão disponíveis. A métrica de desempenho a ser usada dependerá muito do seu objetivo geral.
Se quiser saber mais sobre a criação de modelos em outros conjuntos de dados, como na previsão de tarifas para corridas de táxi, use o projeto bigquery-public-data.
bigquery-public-data
.O projeto bigquery-public-data
será listado na seção Explorer.
Faça nosso teste para avaliar seus conhecimentos sobre o Google Cloud Platform.
Você criou um modelo de machine learning com o BigQuery ML para classificar visitantes de e-commerce e prever os hábitos de compra deles.
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 7 de fevereiro de 2024
Laboratório testado em 9 de outubro de 2023
Copyright 2025 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.
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
One lab at a time
Confirm to end all existing labs and start this one