Flusso di lavoro tabulare per AutoML end-to-end

Questo documento fornisce una panoramica della pipeline e dei componenti di AutoML end-to-end. Per scoprire come addestrare un modello con AutoML end-to-end, consulta Addestrare un modello con AutoML end-to-end.

Il flusso di lavoro tabulare per AutoML end-to-end è una pipeline AutoML completa per attività di classificazione e regressione. È simile all'API AutoML, ma ti consente di scegliere cosa controllare e cosa automatizzare. Invece di avere controlli per l'intera pipeline, hai controlli per ogni passaggio della pipeline. Questi controlli della pipeline includono:

  • Suddivisione dei dati
  • Feature engineering
  • Ricerca dell'architettura
  • Addestramento del modello
  • Ensemble di modelli
  • Distillazione del modello

Vantaggi

Di seguito sono riportati alcuni vantaggi del flusso di lavoro tabulare per AutoML end-to-end :

  • Supporta set di dati di grandi dimensioni di dimensioni superiori a 1 TB e con fino a 1000 colonne.
  • Ti consente di migliorare la stabilità e ridurre i tempi di addestramento limitando lo spazio di ricerca dei tipi di architettura o saltando la ricerca dell'architettura.
  • Ti consente di migliorare la velocità di addestramento selezionando manualmente l'hardware utilizzato per l'addestramento e la ricerca dell'architettura.
  • Consente di ridurre le dimensioni del modello e migliorare la latenza con la distillazione o modificando le dimensioni dell'ensemble.
  • Ogni componente AutoML può essere esaminato in una potente interfaccia di grafici delle pipeline che ti consente di visualizzare le tabelle di dati trasformati, le architetture dei modelli valutate e molti altri dettagli.
  • Ogni componente AutoML offre maggiore flessibilità e trasparenza, ad esempio la possibilità di personalizzare parametri, hardware, visualizzare lo stato del processo, i log e altro ancora.

AutoML end-to-end su Vertex AI Pipelines

Il flusso di lavoro tabulare per AutoML end-to-end è 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.

Panoramica della pipeline e dei componenti

Il seguente diagramma mostra la pipeline di creazione del modello per il flusso di lavoro tabulare per AutoML end-to-end :

Pipeline per AutoML Tables end-to-end 

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. merge-materialized-splits: unisce la suddivisione della valutazione materializzata e la suddivisione dell'addestramento materializzata.
  4. automl-tabular-stage-1-tuner: esegui la ricerca dell'architettura del modello e ottimizza gli iperparametri.

    • Un'architettura è definita da un insieme di iperparametri.
    • Gli iperparametri includono il tipo di modello e i relativi parametri.
    • I tipi di modelli considerati sono reti neurali e alberi con boosting.
    • Viene addestrato un modello per ogni architettura considerata.
  5. automl-tabular-cv-trainer: esegui la convalida incrociata delle architetture addestrando i modelli su diversi set di dati di input.

    • Le architetture prese in considerazione sono quelle che hanno dato i risultati migliori nel passaggio precedente.
    • Vengono selezionate circa dieci architetture migliori. Il numero esatto è definito dal budget per l'addestramento.
  6. automl-tabular-ensemble: combina le migliori architetture per produrre un modello finale.

    • Il seguente diagramma è un'illustrazione della validazione incrociata K-fold con il bagging:

    bagging ensemble 

  7. condition-is-distill - Facoltativo. Crea una versione più piccola del modello di ensemble.

    • Un modello più piccolo riduce la latenza e i costi per la previsione.
  8. automl-tabular-infra-validator: convalida se il modello addestrato è valido.

  9. model-upload: carica il modello.

  10. condition-is-evaluation - Facoltativo. Utilizza il set di test per calcolare le metriche di valutazione.

Passaggi successivi