End-to-end user journey for each model

BigQuery ML supports a variety of machine learning models and a complete machine learning flow for each model, such as feature preprocessing, model creation, hyperparameter tuning, inference, evaluation, and model export. The machine learning flow for the models are split into the following two tables:

Model creation phase

Model category Model types Model creation Feature preprocessing Hyperparameter tuning Model weights Feature & training info Tutorials
Supervised learning Linear & logistic regression create model Automatic preprocessing,
Manual preprocessing1
HP tuning2
ml.trial_info
ml.weights ml.feature_info
ml.training_info
Deep neural networks (DNN) create model NA5 NA
Wide & Deep networks create model NA5 NA
Boosted trees create model NA5 NA
Random forest create model NA5 NA
AutoML classification & regression create model NA3 NA3 NA5 NA
Unsupervised learning K-means create model Automatic preprocessing,
Manual preprocessing1
HP tuning2
ml.trial_info
ml.centroids ml.feature_info
ml.training_info
cluster bike stations
Matrix factorization create model NA HP tuning2
ml.trial_info
ml.weights
Principal component analysis (PCA) create model Automatic preprocessing,
Manual preprocessing1
NA ml.principal_
components
,
ml.principal_
component_info
NA
Autoencoder create model Automatic preprocessing,
Manual preprocessing1
HP tuning2
ml.trial_info
NA5 NA
Time series models ARIMA_PLUS create model Automatic preprocessing auto.ARIMA4 ml.arima_ coefficients ml.feature_info
ml.training_info
ARIMA_PLUS_XREG create model Automatic preprocessing auto.ARIMA4 ml.arima_ coefficients ml.feature_info
ml.training_info
multivariate forecasting
Imported models TensorFlow create model NA NA NA NA predict with imported TensorFlow model
TensorFlow Lite create model NA NA NA NA NA
Open Neural Network Exchange (ONNX) create model NA NA NA NA
XGBoost create model NA NA NA NA NA
Remote models Remote model with a Vertex AI endpoint create model NA NA NA NA predict with remote model
Remote model over the Cloud Vision API create model NA NA NA NA NA
Remote model over the Cloud Translation API create model NA NA NA NA NA
Remote model over the Cloud Natural Language API create model NA NA NA NA NA
Remote model over a Vertex AI large language model (LLM)6 create model NA NA NA NA
Remote model over the Document AI API
(Preview)
create model NA NA NA NA NA
Remote model over the Speech-to-Text API
(Preview)
create model NA NA NA NA NA
Transform-only models7 Transform-only
(Preview)
create model Manual preprocessing1 NA NA ml.feature_info NA

1See TRANSFORM clause for the feature engineering tutorial. For more information about the preprocessing functions, see the BQML - Feature Engineering Functions tutorial.

2See use hyperparameter tuning to improve model performance tutorial.

3Automatic feature engineering and hyperparameter tuning are embedded in the AutoML model training by default.

4The auto.ARIMA algorithm performs hyperparameter tuning for the trend module. Hyperparameter tuning is not supported for the entire modeling pipeline. See the modeling pipeline for more details.

5BigQuery ML doesn't support functions that retrieve the weights for boosted trees, random forest, DNNs, Wide-and-deep, Autoencoder, or AutoML models. To see the weights of those models, you can export an existing model from BigQuery ML to Cloud Storage and then use the XGBoost library or the TensorFlow library to visualize the tree structure for the tree models or the graph structure for the neural networks. For more information, see the EXPORT MODEL documentation and the EXPORT MODEL tutorial.

6Uses a Vertex AI foundation model.

7This is not a typical ML model but rather an artifact that transforms raw data into features.

Model use phase

Model category Model types Evaluation Inference AI explanation Model export Tutorials
Supervised learning Linear & logistic regression ml.evaluate
ml.confusion_matrix1
ml.roc_curve2
ml.predict
ml.transform
ml.explain_predict3
ml.global_explain
ml.advanced_weights8
export model5
Deep neural networks (DNN) NA
Wide & Deep networks NA
Boosted trees ml.explain_predict3
ml.global_explain
ml.feature_importance4
NA
Random forest NA
AutoML classification & regression ml.predict ml.global_explain NA
Unsupervised learning K-means ml.evaluate ml.predict
ml.detect_anomalies
ml.transform
NA export model5 cluster bike stations
Matrix factorization ml.recommend
Principal component analysis (PCA) ml.predict
ml.detect_anomalies
ml.transform
NA
Autoencoder ml.predict
ml.detect_anomalies
ml.reconstruction_loss
ml.transform
NA
Time series models ARIMA_PLUS ml.evaluate
ml.arima_evaluate6
ml.holiday_info
ml.forecast
ml.detect_anomalies
ml.explain_forecast7 NA
ARIMA_PLUS_XREG ml.evaluate
ml.arima_evaluate6
ml.holiday_info
ml.forecast
ml.detect_anomalies
(Preview)
ml.explain_forecast7 NA multivariate forecasting
Imported models TensorFlow NA ml.predict NA export model5 predict with imported TensorFlow model
TensorFlow Lite NA ml.predict NA NA NA
Open Neural Network Exchange (ONNX) NA ml.predict NA NA
XGBoost NA ml.predict NA NA NA
Remote models Remote model with a Vertex AI endpoint NA ml.predict NA NA predict with remote model
Remote model over the Cloud Vision API NA ml.annotate_image NA NA NA
Remote model over the Cloud Translation API NA ml.translate NA NA NA
Remote model over the Cloud Natural Language API NA ml.understand_text NA NA NA
Remote model over a Vertex AI large language model (LLM)9 NA ml.generate_text ml.generate_embedding NA NA
Remote model over the Document AI API
(Preview)
NA ml.process_document NA NA NA
Remote model over the Speech-to-Text API
(Preview)
NA ml.transcribe NA NA NA
Transform-only models10
(Preview)
Transform-only
(Preview)
NA ml.transform NA export model5 NA

1ml.confusion_matrix is only applicable to classification models.

2ml.roc_curve is only applicable to binary classification models.

3ml.explain_predict is an extended version of ml.predict. For more information, see Explainable AI overview. To learn how ml.explain_predict is used, see regression tutorial and classification tutorial.

4For the difference between ml.global_explain and ml.feature_importance, see Explainable AI overview.

5See the Export a BigQuery ML model for online prediction tutorial. For more information about online serving, see the BQML - Create Model with Inline Transpose tutorial.

6For ARIMA_PLUS or ARIMA_PLUS_XREG models, ml.evaluate can take new data as input to compute forecasting metrics such as mean absolute percentage error (MAPE). In the absence of new data, ml.evaluate has an extended version ml.arima_evaluate which outputs different evaluation information.

7ml.explain_forecast is an extended version of ml.forecast. For more information, see Explainable AI overview. To learn how ml.explain_forecast is used, see the visualize results steps of the single time series forecasting and multiple time series forecasting tutorials.

8ml.advanced_weights is an extended version of ml.weights, see ml.advanced_weights for more details.

9Uses a Vertex AI foundation model.

10This is not a typical ML model but rather an artifact that transforms raw data into features.