Book Image

Machine Learning with BigQuery ML

By : Alessandro Marrandino
Book Image

Machine Learning with BigQuery ML

By: Alessandro Marrandino

Overview of this book

BigQuery ML enables you to easily build machine learning (ML) models with SQL without much coding. This book will help you to accelerate the development and deployment of ML models with BigQuery ML. The book starts with a quick overview of Google Cloud and BigQuery architecture. You'll then learn how to configure a Google Cloud project, understand the architectural components and capabilities of BigQuery, and find out how to build ML models with BigQuery ML. The book teaches you how to use ML using SQL on BigQuery. You'll analyze the key phases of a ML model's lifecycle and get to grips with the SQL statements used to train, evaluate, test, and use a model. As you advance, you'll build a series of use cases by applying different ML techniques such as linear regression, binary and multiclass logistic regression, k-means, ARIMA time series, deep neural networks, and XGBoost using practical use cases. Moving on, you'll cover matrix factorization and deep neural networks using BigQuery ML's capabilities. Finally, you'll explore the integration of BigQuery ML with other Google Cloud Platform components such as AI Platform Notebooks and TensorFlow along with discovering best practices and tips and tricks for hyperparameter tuning and performance enhancement. By the end of this BigQuery book, you'll be able to build and evaluate your own ML models with BigQuery ML.
Table of Contents (20 chapters)
Section 1: Introduction and Environment Setup
Section 2: Deep Learning Networks
Section 3: Advanced Models with BigQuery ML
Section 4: Further Extending Your ML Capabilities with GCP

Training the linear regression model

Training a BigQuery ML model is not a one-shot operation, but it's a process that can require multiple attempts and recycles to get closer to the final goal of developing an effective asset with good performance, according to the requirements of the business scenario. For our use case, we'll go try to improve the performance of our ML model multiple times. Let's get started:

  1. First, let's start training a new machine learning model named trip_duration_by_stations:
    CREATE OR REPLACE MODEL `04_nyc_bike_sharing.trip_duration_by_stations`
      (model_type='linear_reg') AS
      tripduration as label

    In this statement, we can notice the CREATE OR REPLACE MODEL keyword, which is used to create a new model. This keyword is followed by the identifier of the model, which is represented...