BigQuery ML model weights overview
This document describes how BigQuery ML supports model weights discoverability for machine learning (ML) models.
An ML model is an artifact that is saved after running an ML algorithm on training data. The model represents the rules, numbers, and any other algorithm-specific data structures that are required to make predictions. Some examples include the following:
- A linear regression model is comprised of a vector of coefficients that have specific values.
- A decision tree model is comprised of one or more trees of if-then statements that have specific values.
- A deep neural network model is comprised of a graph structure with vectors or matrices of weights that have specific values.
In BigQuery ML, the term model weights is used to describe the components that a model is comprised of.
For information about the supported SQL statements and functions for each model type, see End-to-end user journey for each model.
Model weights offerings in BigQuery ML
BigQuery ML offers multiple functions that you can use to retrieve the model weights for different models.
Model category | Model types | Model weights functions | What the function does |
---|---|---|---|
Supervised models | Linear & Logistic Regression | ML.WEIGHTS |
Retrieves the feature coefficients and the intercept. |
Unsupervised models | Kmeans | ML.CENTROIDS |
Retrieves the feature coefficients for all of the centroids. |
Matrix Factorization | ML.WEIGHTS |
Retrieves the weights of all of the latent factors. They represent the two decomposed matrices, the user matrix and the item matrix. | |
PCA | ML.PRINCIPAL_COMPONENTS |
Retrieves the feature coefficients for all principal components, also known as eigenvectors. | |
ML.PRINCIPAL_COMPONENT_INFO |
Retrieves the statistics of each principal component, such as eigenvalue. | ||
Time series models | ARIMA_PLUS | ML.ARIMA_COEFFICIENTS |
Retrieves the coefficients of the ARIMA model, which is used to model the trend component of the input time series. For information about other components, such as seasonal patterns that are present in the time series, use ML.ARIMA_EVALUATE . |
BigQuery ML doesn't support model weight functions for the following types of models:
To see the weights of all of these model types except for AutoML Tables models, export the model from BigQuery ML to Cloud Storage. You can then use the XGBoost library to visualize the tree structure for boosted tree and random forest models, or the TensorFlow library to visualize the graph structure for DNN and wide-and-deep models. There is no method for getting model weight information for AutoML Tables models.
For more information about exporting a model, see
EXPORT MODEL
statement
and
Export a BigQuery ML model for online prediction.