Este tutorial ensina analistas de dados a usar o BigQuery ML. Com o BigQuery ML, é possível criar e executar modelos de machine learning no BigQuery usando consultas SQL. Este laboratório apresenta um método de ajuste de hiperparâmetros que especifica a opção de treinamento num_trials.
Neste laboratório, você usa a tabela de amostra tlc_yellow_trips_2018 para criar um modelo que prevê a gorjeta para uma corrida de táxi. Você vai ter uma melhoria de desempenho de aproximadamente 40% (r2_score) com o ajuste de hiperparâmetro.
Objetivos
Neste laboratório, você vai usar o BigQuery ML para:
Criar um modelo de regressão linear usando a instrução CREATE MODEL com num_trials configurado em 20.
Verificar a visão geral de todos os 20 testes usando a função ML.TRIAL_INFO.
Avaliar o modelo de ML usando a função ML.EVALUATE.
Fazer previsões usando o modelo e a função de ML ML.PREDICT.
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.
Faça login no Qwiklabs em uma janela anônima.
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.
Quando tudo estiver pronto, clique em Começar o laboratório.
Anote as credenciais (Nome de usuário e Senha). É com elas que você vai fazer login no Console do Google Cloud.
Clique em Abrir Console do Google.
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.
Aceite os termos e pule a página de recursos de recuperação.
Ative a API BigQuery
No Console do Google Cloud, no menu de navegação (), clique em APIs e serviços > Biblioteca.
Procure a API BigQuery e clique em Ativar, caso ainda não esteja habilitada.
Tarefa 1: criar seu conjunto de dados de treinamento
A primeira tarefa é criar um conjunto de dados do BigQuery para armazenar seus dados de treinamento e o modelo de ML. Para criar o conjunto de dados, faça o seguinte:
Na página do BigQuery, no painel Explorer, clique em Ver ações () ao lado do ID do projeto e selecione Criar conjunto de dados.
Para o ID do conjunto de dados, digite bqml_tutorial, e para local do dados, selecione Estados Unidos (EUA).
Atualmente, os conjuntos de dados públicos são armazenados no local multirregional EUA. Para simplificar, coloque seu conjunto de dados no mesmo local.
Não altere as outras configurações e clique em Criar conjunto de dados.
Tarefa 2: criar sua tabela de entrada de treinamento
Nesta tarefa, você materializa a tabela de entrada de treinamento com 100 mil linhas.
Veja o esquema da tabela de origem tlc_yellow_trips_2018 (Abra este link em uma nova guia).
Clique em Criar nova consulta, e cole a seguinte consulta na área de texto do Editor de consultas para criar a tabela de dados de entrada de treinamento:
CREATE TABLE `bqml_tutorial.taxi_tip_input` AS
SELECT
* EXCEPT(tip_amount), tip_amount AS label
FROM
`bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2018`
WHERE
tip_amount IS NOT NULL
LIMIT 100000
Clique em Executar.
Tarefa 3: criar um modelo.
Em seguida, crie um modelo de regressão linear com ajuste de hiperparâmetros usando a tabela de amostra tlc_yellow_trips_2018 no BigQuery.
A consulta SQL padrão a seguir é usada para criar o modelo com ajuste de hiperparâmetros:
CREATE MODEL `bqml_tutorial.hp_taxi_tip_model`
OPTIONS
(model_type='linear_reg',
num_trials=20,
max_parallel_trials=2) AS
SELECT
*
FROM
`bqml_tutorial.taxi_tip_input`
Detalhes da consulta
O modelo LINEAR_REG tem dois hiperparâmetros ajustáveis: l1_reg e l2_reg. A consulta anterior usa o espaço de pesquisa padrão. Também é possível especificar o espaço de pesquisa explicitamente:
Além disso, essas outras opções de treinamento de ajuste de hiperparâmetros também usam os valores padrão:
hparam_tuning_algorithm: "VIZIER_DEFAULT"
hparam_tuning_objectives: ["r2_score"]
max_parallel_trials é definido como 2 para acelerar o processo de ajuste. Com dois testes em execução a qualquer momento, o ajuste inteiro leva cerca de 10 jobs de treinamento em série em vez de 20. No entanto, observe que os dois testes simultâneos não podem se beneficiar dos resultados de treinamento uns dos outros.
Execute a consulta CREATE MODEL
Para executar a consulta CREATE MODEL para criar e treinar seu modelo, faça o seguinte:
No Console do Cloud, clique em Escrever nova consulta.
Insira a consulta SQL padrão (acima) na área de texto do Editor de consultas.
Clique em Executar.
A consulta leva cerca de 17 minutos para ser concluída.
Acompanhe o progresso do ajuste nos detalhes da execução em "Estágios":
Tarefa 4: acessar informações de testes
Para acessar as informações gerais de todos os testes, incluindo seus hiperparâmetros, objetivos, status e o teste ideal, use a função ML.TRIAL_INFO, e confira o resultado no Console do Cloud após executar a SQL:
SELECT *
FROM
ML.TRIAL_INFO(MODEL `bqml_tutorial.hp_taxi_tip_model`)
É possível executar essa consulta SQL assim que um teste for concluído. Se o ajuste for interrompido no meio, todos os testes já concluídos vão permanecer disponíveis para uso.
Tarefa 5: avaliar o modelo
Após criar seu modelo, visualize as métricas de avaliação de todos os testes usando a função ML.EVALUATE ou o Console do Google Cloud.
Execute ML.EVALUATE:
SELECT *
FROM
ML.EVALUATE(MODEL `bqml_tutorial.hp_taxi_tip_model`)
Este SQL busca métricas de avaliação para todos os testes calculados a partir dos dados TEST.
Verifique a seção Divisão de dados para comparar a diferença entre os objetivos ML.TRIAL_INFO e as métricas de avaliação ML.EVALUATE.
Você também pode avaliar um teste específico fornecendo seus próprios dados. Acesse ML.EVALUATE para mais detalhes.
Verificar métricas de avaliação usando o Console do Google Cloud
Você também pode verificar as métricas de avaliação visualizando a guia Avaliação do modelo.
Tarefa 6: usar o modelo para prever gorjetas de táxi
Depois de avaliar seu modelo, o próximo passo é usá-lo para prever a gorjeta de um táxi.
Use esta consulta para prever a gorjeta:
SELECT
*
FROM
ML.PREDICT(MODEL `bqml_tutorial.hp_taxi_tip_model`,
(
SELECT
*
FROM
`bqml_tutorial.taxi_tip_input`
LIMIT 10))
Detalhes da consulta
A primeira instrução SELECT recupera todas as colunas, incluindo a coluna predicted_label. Esta coluna é gerada pela função ML.PREDICT. Quando você utiliza a função ML.PREDICT, o nome da coluna de saída para o modelo é predicted_label_column_name.
A previsão é feita no teste ideal por padrão.
Você pode selecionar outro teste especificando o parâmetro trial_id.
SELECT
*
FROM
ML.PREDICT(MODEL `bqml_tutorial.hp_taxi_tip_model`,
(
SELECT
*
FROM
`bqml_tutorial.taxi_tip_input`
LIMIT
10),
STRUCT(3 AS trial_id))
Saiba mais sobre o uso das funções de disponibilização de modelo em ML.PREDICT.
Tarefa 7: limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto ou mantenha o projeto e exclua cada um dos recursos.
Como excluir seu conjunto de dados
A exclusão do seu projeto vai remover todos os conjuntos de dados e tabelas no projeto. Caso prefira reutilizá-lo, exclua o conjunto de dados criado neste tutorial:
Se necessário, abra a página do BigQuery no Console do Cloud.
No painel Explorer, clique em Ver ações () ao lado do conjunto de dados e clique em Excluir.
Na caixa de diálogo "Excluir conjunto de dados", para confirmar o comando de exclusão, digite delete, e depois clique em Excluir.
Parabéns!
Você aprendeu a usar o BigQuery ML para:
Criar um modelo de regressão linear usando a instrução CREATE MODEL com num_trials configurado em 20.
Verificar a visão geral de todos os 20 testes usando a função ML.TRIAL_INFO.
Avaliar o modelo de ML usando a função ML.EVALUATE.
Fazer previsões usando o modelo de ML e a função ML.PREDICT.
Finalize o laboratório
Após terminar seu laboratório, clique em End Lab. O Qwiklabs removerá os recursos usados e limpará a conta para você.
Você poderá avaliar sua experiência neste laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Submit.
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 Support.
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.
Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
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.
No canto superior esquerdo da tela, clique em Começar o laboratório
Usar a navegação anônima
Copie o nome de usuário e a senha fornecidos para o laboratório
Clique em Abrir console no modo anônimo
Fazer login no console
Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
Aceite os termos e pule a página de recursos de recuperação
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.
Neste laboratório, você vai usar o ajuste de hiperparâmetros do BigQuery ML para melhorar o desempenho do modelo
Duração:
Configuração: 0 minutos
·
Tempo de acesso: 90 minutos
·
Tempo para conclusão: 90 minutos