Stay organized with collections
Save and categorize content based on your preferences.
This document provides an overview of the Tabular Workflow for TabNet
pipelines and components. To train a model with TabNet,
see Train a model with TabNet.
TabNet uses sequential attention to choose which
features to reason from at each decision step. This promotes interpretability and
more efficient learning because the learning capacity is used for the most salient features.
Benefits
Automatically selects the appropriate hyperparameter search space based on the dataset size, inference type, and training budget.
Integrated with Vertex AI. The trained model is a Vertex AI model. You can run batch inferences or deploy the model for online inferences right away.
Provides inherent model interpretability. You can get insight into which features TabNet used to make its decision.
Supports GPU training.
TabNet on Vertex AI Pipelines
Tabular Workflow for TabNet is a managed instance of Vertex AI Pipelines.
Vertex AI Pipelines is a serverless
service that runs Kubeflow pipelines. You can use pipelines to automate
and monitor your machine learning and data preparation tasks. Each step in a
pipeline performs part of the pipeline's workflow. For example,
a pipeline can include steps to split data, transform data types, and train a model. Since steps
are instances of pipeline components, steps have inputs, outputs, and a
container image. Step inputs can be set from the pipeline's inputs or they can
depend on the output of other steps within this pipeline. These dependencies
define the pipeline's workflow as a directed acyclic graph.
Tabular Workflow for TabNet offers two versions:
HyperparameterTuningJob searches for the best set of hyperparameter values to use for model training.
CustomJob lets you specify the hyperparameter values to use for model training. If you know exactly which hyperparameter values you need, specify them instead of searching for them and save on training resources.
Overview of TabNet CustomJob pipeline and components
The following diagram illustrates the TabNet CustomJob pipeline:
The pipeline components are:
feature-transform-engine: Perform feature engineering. See
Feature Transform Engine for details.
split-materialized-data:
Split the materialized data into a training set, an evaluation set, and a test set.
Input:
Materialized data materialized_data.
Output:
Materialized training split materialized_train_split.
get-tabnet-study-spec-parameters:
Generate the study spec based on a configuration of the training pipeline. If
the user provides values for study_spec_parameters_override, use those values
to override the study spec values.
Input:
Training pipeline configuration (max_trial_count, prediction_type).
Dataset statistics dataset_stats.
Optional override of study spec parameters study_spec_parameters_override.
Output:
Final list of hyperparameters and their ranges for the hyperparameter tuning job.
tabnet-hyperparameter-tuning-job:
Perform one or more trials of hyperparameter tuning.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-29 UTC."],[],[],null,["# Tabular Workflow for TabNet\n\n| **Preview**\n|\n|\n| This feature is subject to the \"Pre-GA Offerings Terms\" in the General Service Terms section\n| of the [Service Specific Terms](/terms/service-terms#1).\n|\n| Pre-GA features are available \"as is\" and might have limited support.\n|\n| For more information, see the\n| [launch stage descriptions](/products#product-launch-stages).\n\nThis document provides an overview of the Tabular Workflow for TabNet\npipelines and components. To train a model with TabNet,\nsee [Train a model with TabNet](/vertex-ai/docs/tabular-data/tabular-workflows/tabnet-train).\n\n\n[TabNet](https://arxiv.org/abs/1908.07442) uses [sequential attention](https://papers.nips.cc/paper/7181-attention-is-all-you-need.pdf) to choose which\nfeatures to reason from at each decision step. This promotes interpretability and\nmore efficient learning because the learning capacity is used for the most salient features.\n\nBenefits\n--------\n\n\n- Automatically selects the appropriate hyperparameter search space based on the dataset size, inference type, and training budget.\n- Integrated with Vertex AI. The trained model is a Vertex AI model. You can run batch inferences or deploy the model for online inferences right away.\n- Provides inherent model interpretability. You can get insight into which features TabNet used to make its decision.\n- Supports GPU training.\n\n\u003cbr /\u003e\n\nTabNet on Vertex AI Pipelines\n-----------------------------\n\nTabular Workflow for TabNet is a managed instance of Vertex AI Pipelines.\n\n\n[Vertex AI Pipelines](/vertex-ai/docs/pipelines/introduction) is a serverless\nservice that runs Kubeflow pipelines. You can use pipelines to automate\nand monitor your machine learning and data preparation tasks. Each step in a\npipeline performs part of the pipeline's workflow. For example,\na pipeline can include steps to split data, transform data types, and train a model. Since steps\nare instances of pipeline components, steps have inputs, outputs, and a\ncontainer image. Step inputs can be set from the pipeline's inputs or they can\ndepend on the output of other steps within this pipeline. These dependencies\ndefine the pipeline's workflow as a directed acyclic graph.\n\nTabular Workflow for TabNet offers two versions:\n\n- [HyperparameterTuningJob](#hyperparametertuningjob) searches for the best set of hyperparameter values to use for model training.\n- [CustomJob](#customjob) lets you specify the hyperparameter values to use for model training. If you know exactly which hyperparameter values you need, specify them instead of searching for them and save on training resources.\n\nOverview of TabNet CustomJob pipeline and components\n----------------------------------------------------\n\nThe following diagram illustrates the TabNet CustomJob pipeline:\n\n\u003cbr /\u003e\n\nThe pipeline components are:\n\n1. **feature-transform-engine** : Perform feature engineering. See [Feature Transform Engine](/vertex-ai/docs/tabular-data/tabular-workflows/feature-engineering) for details.\n2. **split-materialized-data** : Split the materialized data into a training set, an evaluation set, and a test set.\n\n \u003cbr /\u003e\n\n Input:\n - Materialized data `materialized_data`.\n\n Output:\n - Materialized training split `materialized_train_split`.\n - Materialized evaluation split `materialized_eval_split`.\n - Materialized test set `materialized_test_split`.\n3. **tabnet-trainer** : Perform model training.\n\n \u003cbr /\u003e\n\n Input:\n - Instance baseline `instance_baseline`.\n - Training schema `training_schema`.\n - Transform output `transform_output`.\n - Materialized train split `materialized_train_split`.\n - Materialized evaluation split `materialized_eval_split`.\n - Materialized test set `materialized_test_split`.\n\n Output:\n - Final model\n4. **automl-tabular-infra-validator**: Validate the trained model by sending a prediction request and checking whether it completes successfully.\n5. **model-upload**: Upload the model from the user's Cloud Storage bucket to Vertex AI as a Vertex AI model.\n6. **condition-run-evaluation-2** : **Optional** . Use the test set to calculate evaluation metrics. Runs only when `run_evaluation` is set to `true`.\n\nOverview of TabNet HyperparameterTuningJob pipeline and components\n------------------------------------------------------------------\n\nThe following diagram illustrates the TabNet HyperparameterTuningJob pipeline:\n\n\u003cbr /\u003e\n\n1. **feature-transform-engine** : Perform feature engineering. See [Feature Transform Engine](/vertex-ai/docs/tabular-data/tabular-workflows/feature-engineering) for details.\n2. **split-materialized-data** : Split the materialized data into a training set, an evaluation set, and a test set.\n\n \u003cbr /\u003e\n\n Input:\n - Materialized data `materialized_data`.\n\n Output:\n - Materialized training split `materialized_train_split`.\n - Materialized evaluation split `materialized_eval_split`.\n - Materialized test set `materialized_test_split`.\n3. **get-tabnet-study-spec-parameters** : Generate the study spec based on a configuration of the training pipeline. If the user provides values for `study_spec_parameters_override`, use those values to override the study spec values.\n\n \u003cbr /\u003e\n\n Input:\n - Training pipeline configuration (`max_trial_count`, `prediction_type`).\n - Dataset statistics `dataset_stats`.\n - Optional override of study spec parameters `study_spec_parameters_override`.\n\n Output:\n - Final list of hyperparameters and their ranges for the hyperparameter tuning job.\n4. **tabnet-hyperparameter-tuning-job** : Perform one or more trials of hyperparameter tuning.\n\n \u003cbr /\u003e\n\n Input:\n - Instance baseline `instance_baseline`.\n - Training schema `training_schema`.\n - Transform output `transform_output`.\n - Materialized train split `materialized_train_split`.\n - Materialized evaluation split `materialized_eval_split`.\n - Materialized test set `materialized_test_split`.\n - List of hyperparameters and their ranges for the hyperparameter tuning job.\n5. **get-best-hyperparameter-tuning-job-trial** : Select the model from the best hyperparameter tuning job trial of the previous step.\n\n \u003cbr /\u003e\n\n Output:\n - Final model\n6. **automl-tabular-infra-validator**: Validate the trained model by sending a prediction request and checking whether it completes successfully.\n7. **model-upload**: Upload the model from the user's Cloud Storage bucket to Vertex AI as a Vertex AI model.\n8. **condition-run-evaluation-2** : **Optional** . Use the test set to calculate evaluation metrics. Runs only when `run_evaluation` is set to `true`.\n\nWhat's next\n-----------\n\n- [Train a model with TabNet](/vertex-ai/docs/tabular-data/tabular-workflows/tabnet-train)."]]