Checkpoints
Calculate trips taken by Yellow taxi in each month of 2015
/ 10
Calculate average speed of Yellow taxi trips in 2015
/ 10
Test whether fields are good inputs to your fare forecasting model
/ 20
Create a BigQuery dataset to store models
/ 10
Create a taxifare model
/ 20
Evaluate classification model performance
/ 10
Predict taxi fare amount
/ 20
Estimar tarifas de táxi com um modelo de previsão do BigQuery ML
- GSP246
- Visão geral
- Configuração e requisitos
- Tarefa 1: analisar os dados sobre corridas de táxi em Nova York
- Tarefa 2: identificar um objetivo
- Tarefa 3: selecionar atributos e criar seu conjunto de dados de treinamento
- Tarefa 4: criar um conjunto de dados do BigQuery para armazenar modelos
- Tarefa 5: selecionar um tipo de modelo do BigQuery ML e especificar as opções
- Tarefa 6: avaliar o desempenho do modelo de classificação
- Tarefa 7: estimar o valor da tarifa de táxi
- Tarefa 8: melhorar o modelo com a engenharia de atributos
- Tarefa 9: testar seu conhecimento
- Tarefa 10: outros conjuntos de dados para analisar
- Parabéns!
GSP246
Visão geral
O BigQuery é um banco de dados de análise NoOps, totalmente gerenciado e de baixo custo desenvolvido pelo Google. Ele permite consultar muitos terabytes de dados sem ter que gerenciar uma infraestrutura nem precisar de um administrador de banco de dados.
Com o BigQuery ML, os analistas de dados podem usar modelos de machine learning com o mínimo de programação para criar, treinar, avaliar e fazer previsões.
Neste laboratório, você vai analisar milhões de corridas dos táxis amarelos de Nova York, disponibilizadas em um conjunto de dados público do BigQuery. Esses dados serão usados para criar um modelo de machine learning dentro do BigQuery que estima as tarifas cobradas com base nas entradas, avaliar o desempenho e fazer previsões com o modelo.
Conteúdo
Neste laboratório, você vai aprender a realizar estas tarefas:
- Usar o BigQuery para encontrar conjuntos de dados públicos
- Consultar e analisar o conjunto de dados público sobre os táxis
- Criar um conjunto de dados de treinamento e avaliação para usar na predição em lote
- Criar um modelo de previsão (regressão linear) no BigQuery ML
- Avaliar o desempenho do seu modelo de machine learning
Configuração e requisitos
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 é iniciado quando você clica em Começar o 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, 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:
- Acesso a um navegador de Internet padrão (recomendamos o Chrome).
- Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você vai encontrar o seguinte:
- O botão Abrir console do Google Cloud
- O tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
-
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.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta. -
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Nome de usuário"}}} Você também encontra o Nome de usuário no painel Detalhes do laboratório.
-
Clique em Seguinte.
-
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
{{{user_0.password | "Senha"}}} Você também encontra a Senha no painel Detalhes do laboratório.
-
Clique em Seguinte.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais. -
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 Google Cloud será aberto nesta guia.
Abrir o console do BigQuery
- No Console do Google Cloud, selecione o menu de navegação > BigQuery:
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.
- Clique em OK.
O console do BigQuery vai abrir.
Tarefa 1: analisar os dados sobre corridas de táxi em Nova York
Pergunta: Quantas corridas os táxis amarelos fizeram por mês em 2015?
- Copie e cole o código SQL abaixo no EDITOR de consultas:
- Depois, clique em Executar.
Este é o resultado:
Notamos que cada mês de 2015 teve mais de 10 milhões de corridas de táxi em Nova York, uma quantidade nada modesta.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Pergunta: qual foi a velocidade média das corridas dos táxis amarelos em 2015?
- Substitua a consulta anterior pelas informações abaixo e clique em Executar:
Este é o resultado:
Durante o dia, a velocidade média é de aproximadamente 18 a 19 km/h, mas ela quase dobra para 34 km/h às 5h da manhã. Isso faz sentido, já que provavelmente há menos tráfego nesse horário.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Tarefa 2: identificar um objetivo
Agora você criará um modelo de machine learning no BigQuery para estimar o preço de uma corrida de táxi em Nova York, com base no conjunto de dados históricos das corridas e em dados sobre as corridas. Estimar a tarifa antes da corrida pode ajudar bastante ao planejar a viagem, tanto para o passageiro quanto para a empresa de táxi.
Tarefa 3: selecionar atributos e criar seu conjunto de dados de treinamento
O conjunto de dados público sobre os táxis amarelos de Nova York é fornecido pela cidade e foi carregado no BigQuery para você analisar.
Consulte a lista completa dos campos e depois visualize o conjunto de dados para encontrar atributos úteis que podem ajudar um modelo de machine learning a entender a relação entre os dados históricos das corridas de táxi e as tarifas cobradas.
Sua equipe decide testar se os campos abaixo serão úteis para o modelo de previsão de tarifas:
- Valor dos pedágios
- Valor da tarifa
- Hora do dia
- Endereço de partida
- Endereço de destino
- Número de passageiros
- Substitua a consulta pelo seguinte:
Alguns detalhes sobre a consulta:
- A parte principal da consulta está no final (
SELECT * from taxitrips
). -
taxitrips
faz a maior parte da extração para o conjunto de dados de Nova York, eSELECT
contém o rótulo e os atributos do treinamento. -
WHERE
remove os dados que você não quer adicionar ao treinamento. -
WHERE
também inclui uma cláusula de amostra para coletar apenas 1/1.000 dos dados. - Defina uma variável chamada
TRAIN
para criar rapidamente um conjuntoEVAL
independente.
- Agora que você conhece a finalidade desta consulta, clique em Executar.
O resultado será parecido com este:
Qual é o rótulo (resposta correta)?
total_fare
é o rótulo (o que será estimado). Como você criou esse campo com base em tolls_amount
e fare_amount
, pode desconsiderar a inclusão das gorjetas dos clientes no modelo, porque elas são opcionais.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Tarefa 4: criar um conjunto de dados do BigQuery para armazenar modelos
Nesta seção, você criará um novo conjunto de dados do BigQuery que armazenará seus modelos de ML.
-
No painel Explorer à esquerda, clique no ícone Ver ações ao lado do ID do projeto, e depois clique em Criar conjunto de dados.
-
Na caixa de diálogo "Criar conjunto de dados", digite as seguintes informações:
- Em ID do conjunto de dados, digite taxi.
- Selecione us(multiple regions in United States) como o Tipo de local.
- Mantenha os outros valores padrão.
- Depois clique em Criar conjunto de dados.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Tarefa 5: selecionar um tipo de modelo do BigQuery ML e especificar as opções
Agora que você selecionou os atributos iniciais, já pode criar o primeiro modelo de ML no BigQuery.
Há diversos tipos de modelos à sua disposição:
- Previsão de valores numéricos, como as vendas do mês seguinte com a regressão linear (linear_reg).
- Classificação binária ou multiclasse, como e-mails de spam ou não, usando a regressão logística (logistic_reg).
- Clustering k-means para você aprender a fazer análises por conta própria (kmeans).
- Insira a consulta a seguir para criar um modelo e especificar as opções correspondentes.
-
Depois, clique em Executar para treinar o modelo.
-
Aguarde o modelo ser treinado (5 a 10 minutos).
Após treinar o modelo, aparecerá a mensagem "This statement will create a new model named qwiklabs-gcp-03-xxxxxxxx:taxi.taxifare_model.", o que indica que o modelo foi treinado com sucesso.
- Abra seu conjunto de dados sobre os táxis e confirme se taxifare_model aparece desta vez.
Em seguida, você avaliará o desempenho do modelo com novos dados de avaliação.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Tarefa 6: avaliar o desempenho do modelo de classificação
Selecione os critérios de desempenho
Para modelos de regressão linear, é importante usar uma métrica de perda como a raiz do erro quadrático médio (REMQ) (página em inglês). Continue treinando e melhorando o modelo até ele atingir a menor REMQ.
No BQML, é possível consultar o campo mean_squared_error
ao avaliar seu modelo de ML treinado. Adicione SQRT()
para gerar a REMQ.
Agora que o treinamento terminou, você pode avaliar o desempenho do modelo com essa consulta usando ML.EVALUATE
.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
Agora você está avaliando o modelo com outro conjunto de viagens de táxi usando seu filtro params.EVAL
.
- Depois que o modelo for executado, revise os resultados (o valor da REMQ do modelo apresentará pequenas variações).
Linha |
REMQ |
1 |
9.477056435999074 |
Após avaliar o modelo, você receberá uma REMQ de 9,47. Como adotamos a raiz do erro quadrático médio (REMQ), o erro 9,47 pode ser avaliado nas mesmas unidades que total_fare. Portanto, cerca de US$ 9,47.
Saber se essa métrica de perda é aceitável ou não para a produção do seu modelo depende totalmente dos critérios de referência definidos antes do treinamento. A referência define um nível mínimo aceitável de desempenho e acurácia para o modelo.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Tarefa 7: estimar o valor da tarifa de táxi
Agora, escreva uma consulta para fazer previsões com seu novo modelo.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
Agora serão exibidas as previsões de tarifas de táxi do modelo, as tarifas reais e outras informações sobre as viagens. Os resultados serão parecidos com estes:
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa corretamente, receberá uma pontuação de avaliação.
Tarefa 8: melhorar o modelo com a engenharia de atributos
A criação de modelos de machine learning é um processo iterativo. Após avaliarmos o desempenho do modelo inicial, geralmente voltamos e removemos atributos e linhas para ver se conseguimos um modelo ainda melhor.
Como filtrar o conjunto de dados de treinamento
Vamos consultar as estatísticas comuns de tarifas de táxi.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
O resultado é parecido com este:
Você deve ter notado alguns valores atípicos no conjunto de dados (tarifas negativas ou acima de US$ 50.000). Aplique um pouco do que você sabe sobre o assunto para evitar que o modelo aprenda outliers atípicos.
Limite os dados a valores entre US$ 6 e US$ 200.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
O resultado é parecido com este:
Ficou um pouco melhor. Aproveite que você já está aqui e limite a distância percorrida para se concentrar na cidade de Nova York.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
O resultado é parecido com este:
Você ainda tem um grande conjunto de dados com mais de 800 milhões de corridas para treinar o novo modelo. Repita o treinamento com essas novas restrições e analise o desempenho.
Treine o modelo novamente
Dê ao novo modelo o nome taxi.taxifare_model_2
e treine novamente o modelo de regressão linear para prever a tarifa total. Você também perceberá que foram adicionados alguns atributos calculados para a distância euclidiana (linha reta) entre os locais de partida e chegada.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
Pode levar alguns minutos para treinar o modelo de novo. Já será possível avançar para a próxima etapa assim que receber esta mensagem no console:
Avalie o novo modelo
Agora que otimizou o modelo de regressão linear, avalie o conjunto de dados que o usa e confira o desempenho.
- Copie e cole as seguintes informações no EDITOR de consultas e clique em Executar:
O resultado é parecido com este:
A REMQ caiu para +- US$ 5,12, que é significativamente melhor do que o valor de cerca de US$ 9,47 do primeiro modelo.
Como a REQM define o desvio padrão dos erros de previsão, vemos que a regressão linear treinada novamente deixou nosso modelo muito mais preciso.
Tarefa 9: testar seu conhecimento
Responda às perguntas de múltipla escolha abaixo para reforçar sua compreensão dos conceitos abordados neste laboratório. Use tudo o que você aprendeu até aqui.
Tarefa 10: outros conjuntos de dados para analisar
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.
-
Para abrir o conjunto de dados bigquery-public-data, clique em +Adicionar > Marcar um projeto com estrela por nome > Inserir o nome do projeto, depois insira
bigquery-public-data
. -
Clique em Marcar com estrela.
O projeto bigquery-public-data
será listado na seção Explorer.
Parabéns!
Você criou um modelo de machine learning no BigQuery para prever o valor de uma corrida de táxi em Nova York.
Próximas etapas / Saiba mais
- Para saber mais sobre o BigQuery ML, consulte esta documentação.
- Para saber como gerenciar modelos do BigQuery ML na Vertex AI, leia a documentação sobre como registrar modelos do BigQuery ML com o Model Registry.
Treinamento e certificação do Google Cloud
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 24 de agosto de 2023
Copyright 2024 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.