Flusso di lavoro tabulare per TabNet

Questo documento fornisce una panoramica dei componenti e delle pipeline del flusso di lavoro tabulare per TabNet. Per scoprire come addestrare un modello con TabNet, consulta Addestrare un modello con TabNet.

TabNet utilizza l'attenzione sequenziale per scegliere le caratteristiche su cui basare il ragionamento in ogni fase decisionale. Ciò favorisce l'interpretabilità e un apprendimento più efficiente perché la capacità di apprendimento viene utilizzata per le caratteristiche più salienti.

Vantaggi

  • Seleziona automaticamente lo spazio di ricerca degli iperparametri appropriato in base alle dimensioni del set di dati, al tipo di previsione e al budget per l'addestramento.
  • Integrato con Vertex AI. Il modello addestrato è un modello Vertex AI. Puoi eseguire previsioni batch o eseguire subito il deployment del modello per le previsioni online.
  • Fornisce un'interpretabilità intrinseca del modello. Puoi ottenere informazioni sulle funzionalità utilizzate da TabNet per prendere la sua decisione.
  • Supporta l'addestramento con GPU.

TabNet su Vertex AI Pipelines

Tabular Workflow per TabNet è un'istanza gestita di Vertex AI Pipelines.

Vertex AI Pipelines è un servizio serverless che esegue le pipeline Kubeflow. Puoi utilizzare le pipeline per automatizzare e monitorare le attività di machine learning e preparazione dei dati. Ogni passaggio di una pipeline esegue parte del flusso di lavoro della pipeline. Ad esempio, una pipeline può includere passaggi per suddividere i dati, trasformare i tipi di dati e addestrare un modello. Poiché i passaggi sono istanze di componenti della pipeline, hanno input, output e un'immagine container. Gli input dei passaggi possono essere impostati dagli input della pipeline o possono dipendere dall'output di altri passaggi all'interno di questa pipeline. Queste dipendenze definiscono il flusso di lavoro della pipeline come grafo diretto aciclico.

Sono disponibili due versioni del flusso di lavoro tabulare per TabNet:

  • HyperparameterTuningJob cerca il miglior insieme di valori degli iperparametri da utilizzare per l'addestramento del modello.
  • CustomJob ti consente di specificare i valori degli iperparametri da utilizzare per l'addestramento del modello. Se sai esattamente quali valori di iperparametro ti servono, puoi specificarli anziché cercarli e risparmiare sulle risorse di addestramento.

Panoramica della pipeline e dei componenti di TabNet CustomJob

La pipeline di TabNet CustomJob può essere illustrata dal seguente diagramma:

Pipeline per CustomJob TabNet 

I componenti della pipeline sono:

  1. feature-transform-engine: esegui il feature engineering. Per maggiori dettagli, consulta Feature Transform Engine.
  2. split-materialized-data: suddividi i dati materializzati in un set di addestramento, un set di valutazione e un set di test.

    Input:

    • Dati materializzati materialized_data.

    Output:

    • Suddivisione dell'addestramento materializzata materialized_train_split.
    • Suddivisione della valutazione materializzata materialized_eval_split.
    • Set di test materializzato materialized_test_split.
  3. tabnet-trainer: esegui l'addestramento del modello.

    Input:

    • Riferimento di base dell'istanza instance_baseline.
    • Schema di addestramento training_schema.
    • Output della trasformazione transform_output.
    • Suddivisione del treno materializzata materialized_train_split.
    • Suddivisione della valutazione materializzata materialized_eval_split.
    • Set di test materializzato materialized_test_split.

    Output:

    • Modello finale
  4. automl-tabular-infra-validator: convalida il modello addestrato inviando una richiesta di previsione e controllando se viene completata correttamente.
  5. model-upload: carica il modello dal bucket Cloud Storage dell'utente in Vertex AI come modello Vertex AI.
  6. condition-run-evaluation-2: Facoltativo. Utilizza il set di test per calcolare le metriche di valutazione. Viene eseguito solo quando run_evaluation è impostato su true.

Panoramica della pipeline e dei componenti di TabNet HyperparameterTuningJob

La pipeline HyperparameterTuningJob di TabNet può essere illustrata dal seguente diagramma:

Pipeline per TabNet HyperparameterTuningJob 

  1. feature-transform-engine: esegui il feature engineering. Per maggiori dettagli, consulta Feature Transform Engine.
  2. split-materialized-data: suddividi i dati materializzati in un set di addestramento, un set di valutazione e un set di test.

    Input:

    • Dati materializzati materialized_data.

    Output:

    • Suddivisione dell'addestramento materializzata materialized_train_split.
    • Suddivisione della valutazione materializzata materialized_eval_split.
    • Set di test materializzato materialized_test_split.
  3. get-tabnet-study-spec-parameters: genera la specifica dello studio in base a una configurazione della pipeline di addestramento. Se l'utente fornisce valori per study_spec_parameters_override, utilizzali per sostituire i valori delle specifiche dello studio.

    Input:

    • Configurazione della pipeline di addestramento (max_trial_count, prediction_type).
    • Statistiche del set di dati dataset_stats.
    • Sostituzione facoltativa dei parametri delle specifiche dello studio study_spec_parameters_override.

    Output:

    • Elenco finale degli iperparametri e dei relativi intervalli per il job di ottimizzazione degli iperparametri.
  4. tabnet-hyperparameter-tuning-job: esegui uno o più tentativi di ottimizzazione degli iperparametri.

    Input:

    • Riferimento di base dell'istanza instance_baseline.
    • Schema di addestramento training_schema.
    • Output della trasformazione transform_output.
    • Suddivisione del treno materializzata materialized_train_split.
    • Suddivisione della valutazione materializzata materialized_eval_split.
    • Set di test materializzato materialized_test_split.
    • Elenco degli iperparametri e dei relativi intervalli per il job di ottimizzazione degli iperparametri.
  5. get-best-hyperparameter-tuning-job-trial: seleziona il modello dalla prova del job di ottimizzazione degli iperparametri migliore del passaggio precedente.

    Output:

    • Modello finale
  6. automl-tabular-infra-validator: convalida il modello addestrato inviando una richiesta di previsione e controllando se viene completata correttamente.
  7. model-upload: carica il modello dal bucket Cloud Storage dell'utente in Vertex AI come modello Vertex AI.
  8. condition-run-evaluation-2: Facoltativo. Utilizza il set di test per calcolare le metriche di valutazione. Viene eseguito solo quando run_evaluation è impostato su true.

Passaggi successivi