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 categoryModel typesModel creationFeature preprocessingHyperparameter tuningModel weightsFeature & training infoTutorials
Supervised learningLinear & logistic regressioncreate modelAutomatic preprocessing,
Manual preprocessing1
HP tuning2
ml.trial_info
ml.weightsml.feature_info
ml.training_info
Deep neural networks (DNN)create modelN/A5N/A
Wide & Deep networkscreate modelN/A5N/A
Boosted treescreate modelN/A5N/A
Random forestcreate modelN/A5N/A
AutoML classification & regressioncreate modelN/A3N/A3N/A5N/A
Unsupervised learningK-meanscreate modelAutomatic preprocessing,
Manual preprocessing1
HP tuning2
ml.trial_info
ml.centroidsml.feature_info
ml.training_info
cluster bike stations
Matrix factorizationcreate modelN/AHP tuning2
ml.trial_info
ml.weights
Principal component analysis (PCA)create modelAutomatic preprocessing,
Manual preprocessing1
N/Aml.principal_
components
,
ml.principal_
component_info
N/A
Autoencodercreate modelAutomatic preprocessing,
Manual preprocessing1
HP tuning2
ml.trial_info
N/A5N/A
Time series modelsARIMA_PLUScreate modelAutomatic preprocessingauto.ARIMA4ml.arima_ coefficientsml.feature_info
ml.training_info
ARIMA_PLUS_XREGcreate modelAutomatic preprocessingauto.ARIMA4ml.arima_ coefficientsml.feature_info
ml.training_info
TimesFMN/AN/AN/AN/AN/Aforecast multiple time series
Generative AI remote modelsRemote model over a Vertex AI text generation model6create modelN/AN/AN/AN/A
Remote model over a Vertex AI embedding generation model6create modelN/AN/AN/AN/A
AI remote modelsRemote model over the Cloud Vision APIcreate modelN/AN/AN/AN/AN/A
Remote model over the Cloud Translation APIcreate modelN/AN/AN/AN/AN/A
Remote model over the Cloud Natural Language APIcreate modelN/AN/AN/AN/AN/A
Remote model over the Document AI APIcreate modelN/AN/AN/AN/AN/A
Remote model over the Speech-to-Text API
create modelN/AN/AN/AN/AN/A
Remote modelsRemote model with a Vertex AI endpointcreate modelN/AN/AN/AN/Apredict with remote model
Imported modelsTensorFlowcreate modelN/AN/AN/AN/Apredict with imported TensorFlow model
TensorFlow Litecreate modelN/AN/AN/AN/AN/A
Open Neural Network Exchange (ONNX)create modelN/AN/AN/AN/A
XGBoostcreate modelN/AN/AN/AN/AN/A
Transform-only models7Transform-onlycreate modelManual preprocessing1N/AN/Aml.feature_infoN/A
Contribution analysis modelsContribution analysiscreate modelManual preprocessingN/AN/AN/AGet data insights from a contribution analysis model

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 or customizes it by using supervised tuning.

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

Model use phase

Model categoryModel typesEvaluationInferenceAI explanationModel monitoringModel exportTutorials
Supervised learningLinear & logistic regressionml.evaluate
ml.confusion_matrix1
ml.roc_curve2
ml.predict
ml.transform
ml.explain_predict3
ml.global_explain
ml.advanced_weights8
ml.describe_data
ml.validate_data_drift
ml.validate_data_skew
ml.tfdv_describe
ml.tfdv_validate
export model5
Deep neural networks (DNN)N/A
Wide & Deep networksN/A
Boosted treesml.explain_predict3
ml.global_explain
ml.feature_importance4
N/A
Random forestN/A
AutoML classification & regressionml.predictml.global_explainml.describe_data
ml.validate_data_drift
ml.validate_data_skew
ml.tfdv_describe
ml.tfdv_validate
N/A
Unsupervised learningK-meansml.evaluateml.predict
ml.detect_anomalies
ml.transform
N/Aml.describe_data
ml.validate_data_drift
ml.validate_data_skew
ml.tfdv_describe
ml.tfdv_validate
export model5cluster bike stations
Matrix factorizationml.recommend
ml.generate_embedding
N/A
Principal component analysis (PCA)ml.predict
ml.generate_embedding
ml.detect_anomalies
ml.transform
ml.describe_data
ml.validate_data_drift
ml.validate_data_skew
ml.tfdv_describe
ml.tfdv_validate
N/A
Autoencoderml.predict
ml.generate_embedding
ml.detect_anomalies
ml.reconstruction_loss
ml.transform
N/A
Time series modelsARIMA_PLUSml.evaluate
ml.arima_evaluate6
ml.holiday_info
ml.forecast
ml.detect_anomalies
ml.explain_forecast7N/AN/A
ARIMA_PLUS_XREGml.forecast
ml.detect_anomalies
ml.describe_data
ml.validate_data_drift
ml.validate_data_skew
ml.tfdv_describe
ml.tfdv_validate
TimesFMN/Aai.forecastN/AN/AN/Aforecast multiple time series
Generative AI remote modelsRemote model over a Vertex AI text generation model9ml.evaluate11ml.generate_text
ai.generate_table (Preview)
N/AN/AN/A
Remote model over a Vertex AI embedding generation model9N/Aml.generate_embeddingN/AN/A
AI remote modelsRemote model over the Cloud Vision APIN/Aml.annotate_imageN/AN/AN/AN/A
Remote model over the Cloud Translation APIN/Aml.translateN/AN/AN/A
Remote model over the Cloud Natural Language APIN/Aml.understand_textN/AN/AN/A
Remote model over the Document AI APIN/Aml.process_documentN/AN/AN/A
Remote model over the Speech-to-Text APIN/Aml.transcribeN/AN/AN/A
Remote modelsRemote model with a Vertex AI endpointN/Aml.predictN/AN/AN/Apredict with remote model
Imported modelsTensorFlowN/Aml.predictN/AN/Aexport model5predict with imported TensorFlow model
TensorFlow LiteN/Aml.predictN/AN/AN/A
Open Neural Network Exchange (ONNX)N/Aml.predictN/AN/A
XGBoostN/Aml.predictN/AN/AN/A
Transform-only models10Transform-onlyN/Aml.transformN/AN/Aexport model5N/A
Contribution analysis modelsContribution analysisN/Aml.get_insightsN/AN/AN/AGet data insights from a contribution analysis model

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 or customizes it by using supervised tuning.

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

11Not supported for all Vertex AI LLMs. For more information, see ml.evaluate.