Dieses Dokument bietet eine Übersicht über die Pipelines und Komponenten des tabellarischen Workflows für TabNet. Informationen zum Trainieren eines Modells mit TabNet finden Sie unter Modell mit TabNet trainieren.
TabNet verwendet sequenzielle Aufmerksamkeit, um die Features auszuwählen, die bei jedem Entscheidungsschritt berücksichtigt werden sollen. Dadurch werden Interpretierbarkeit und effizientes Lernen ermöglicht, da die Lernkapazität für die wichtigsten Features verwendet wird.
Vorteile
- Wählt automatisch den entsprechenden Hyperparameter-Suchbereich anhand der Dataset-Größe, dem Vorhersagetyp und dem Trainingsbudget aus.
- In Vertex AI eingebunden. Das trainierte Modell ist ein Vertex AI-Modell. Sie können sofort Batchvorhersagen ausführen oder das Modell für Onlinevorhersagen bereitstellen.
- Bietet inhärente Modellinterpretierbarkeit. Sie erhalten einen Einblick in die Features, die TabNet für seine Entscheidung verwendet hat.
- Unterstützt GPU-Training.
TabNet in Vertex AI Pipelines
Tabellarischer Workflow für TabNet ist eine verwaltete Instanz von Vertex AI Pipelines.
Vertex AI Pipelines ist ein serverloser Dienst, der Kubeflow-Pipelines ausführt. Mithilfe von Pipelines können Sie Ihre Aufgaben für maschinelles Lernen und die Datenvorbereitung automatisieren und überwachen. Jeder Schritt in einer Pipeline führt einen Teil des Workflows der Pipeline aus. Eine Pipeline kann beispielsweise Schritte zum Aufteilen von Daten, zum Transformieren von Datentypen und zum Trainieren eines Modells enthalten. Da Schritte Instanzen von Pipeline-Komponenten sind, haben Schritte Eingaben, Ausgaben und ein Container-Image. Schritteingaben können aus den Eingaben der Pipeline festgelegt werden oder von der Ausgabe anderer Schritte in dieser Pipeline abhängen. Diese Abhängigkeiten definieren den Workflow der Pipeline als gerichtetes azyklisches Diagramm.
Es gibt zwei Versionen des tabellarischen Workflows für TabNet:
- HyperparameterTuningJob sucht nach den besten Hyperparameter-Werten für das Modelltraining.
- Mit CustomJob können Sie die Hyperparameter-Werte angeben, die für das Modelltraining verwendet werden sollen. Wenn Sie genau wissen, welche Hyperparameter-Werte Sie benötigen, können Sie diese angeben, anstatt nach ihnen zu suchen. Sie sparen damit Trainingsressourcen.
TabNet CustomJob-Pipeline und -Komponenten – Übersicht
Die TabNet CustomJob-Pipeline kann im folgenden Diagramm dargestellt werden:
Es gibt folgende Pipelinekomponenten:
- feature-transform-engine: Feature Engineering durchführen. Weitere Informationen finden Sie unter Feature Transform Engine.
- split-materialized-data: Materialisierte Daten in ein Trainings-Dataset, ein Bewertungs-Dataset und ein Test-Dataset aufteilen.
Eingabe:
- Materialisierte Daten
materialized_data
.
Ausgabe:
- Materialisierte Trainingsaufteilung
materialized_train_split
. - Materialisierte Bewertungsaufteilung
materialized_eval_split
. - Materialisiertes Test-Dataset
materialized_test_split
.
- Materialisierte Daten
- tabnet-trainer: Modelltraining durchführen.
Eingabe:
- Instanzreferenz
instance_baseline
. - Trainingsschema
training_schema
. - Transformationsausgabe
transform_output
. - Materialisierte Trainingsaufteilung
materialized_train_split
. - Materialisierte Bewertungsaufteilung
materialized_eval_split
. - Materialisiertes Test-Dataset
materialized_test_split
.
Ausgabe:
- Endgültiges Modell
- Instanzreferenz
- automl-tabular-infra-validator: Validieren Sie das trainierte Modell. Senden Sie dazu eine Vorhersageanfrage und prüfen Sie, ob sie erfolgreich verarbeitet wird.
- model-upload: Laden Sie das Modell aus dem Cloud Storage-Bucket des Nutzers als Vertex AI-Modell in Vertex AI hoch.
- condition-run-evaluation-2:
Optional. Verwenden Sie das Test-Dataset, um Bewertungsmesswerte zu berechnen. Wird nur ausgeführt, wenn
run_evaluation
auftrue
festgelegt ist.
TabNet HyperparameterTuningJob-Pipeline und -Komponenten – Übersicht
Die TabNet HyperparameterTuningJob-Pipeline kann im folgenden Diagramm dargestellt werden:
- feature-transform-engine: Feature Engineering durchführen. Weitere Informationen finden Sie unter Feature Transform Engine.
- split-materialized-data: Materialisierte Daten in ein Trainings-Dataset, ein Bewertungs-Dataset und ein Test-Dataset aufteilen.
Eingabe:
- Materialisierte Daten
materialized_data
.
Ausgabe:
- Materialisierte Trainingsaufteilung
materialized_train_split
. - Materialisierte Bewertungsaufteilung
materialized_eval_split
. - Materialisiertes Test-Dataset
materialized_test_split
.
- Materialisierte Daten
- get-tabnet-study-spec-parameters: Generieren Sie die Studienspezifikation basierend auf einer Konfiguration der Trainingspipeline. Wenn der Nutzer Werte für
study_spec_parameters_override
angibt, überschreiben Sie die Werte der Studienspezifikation mit diesen Werten.Eingabe:
- Konfiguration der Trainingspipeline (
max_trial_count
,prediction_type
). - Dataset-Statistiken
dataset_stats
. - Optionale Überschreibung der Parameter der Studienspezifikation
study_spec_parameters_override
.
Ausgabe:
- Endgültige Liste der Hyperparameter und ihrer Bereiche für den Hyperparameter-Abstimmungsjob.
- Konfiguration der Trainingspipeline (
- tabnet-hyperparameter-tuning-job: Einen oder mehrere Tests der Hyperparameter-Abstimmung durchführen.
Eingabe:
- Instanzreferenz
instance_baseline
. - Trainingsschema
training_schema
. - Transformationsausgabe
transform_output
. - Materialisierte Trainingsaufteilung
materialized_train_split
. - Materialisierte Bewertungsaufteilung
materialized_eval_split
. - Materialisiertes Test-Dataset
materialized_test_split
. - Liste der Hyperparameter und zugehörigen Bereiche für den Hyperparameter-Abstimmungsjob.
- Instanzreferenz
- get-best-hyperparameter-tuning-job-trial: Wählen Sie das Modell aus dem besten Hyperparameter-Abstimmungsjob-Test aus dem vorherigen Schritt aus.
Ausgabe:
- Endgültiges Modell
- automl-tabular-infra-validator: Validieren Sie das trainierte Modell. Senden Sie dazu eine Vorhersageanfrage und prüfen Sie, ob sie erfolgreich verarbeitet wird.
- model-upload: Laden Sie das Modell aus dem Cloud Storage-Bucket des Nutzers als Vertex AI-Modell in Vertex AI hoch.
- condition-run-evaluation-2:
Optional. Verwenden Sie das Test-Dataset, um Bewertungsmesswerte zu berechnen. Wird nur ausgeführt, wenn
run_evaluation
auftrue
festgelegt ist.
Nächste Schritte
- Modell mit TabNet trainieren.