Questa pagina mostra come addestrare un modello di classificazione o regressione da un set di dati tabulare con il flusso di lavoro tabulare per TabNet.
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.
Per informazioni sugli account di servizio utilizzati da questo flusso di lavoro, consulta Account di servizio per i flussi di lavoro tabulari.
API di flusso di lavoro
Questo flusso di lavoro utilizza le seguenti API:
- Vertex AI
- Dataflow
- Compute Engine
- Cloud Storage
Addestrare un modello con HyperparameterTuningJob
Il seguente codice campione mostra come eseguire una pipeline HyperparameterTuningJob:
pipeline_job = aiplatform.PipelineJob(
...
template_path=template_path,
parameter_values=parameter_values,
...
)
pipeline_job.run(service_account=SERVICE_ACCOUNT)
Il parametro facoltativo service_account
in pipeline_job.run()
ti consente di impostare l'account di servizio Vertex AI Pipelines su un account a tua scelta.
La pipeline e i valori dei parametri sono definiti dalla seguente funzione. I dati di addestramento possono essere un file CSV in Cloud Storage o una tabella in BigQuery.
template_path, parameter_values = automl_tabular_utils.get_tabnet_hyperparameter_tuning_job_pipeline_and_parameters(...)
Di seguito è riportato un sottoinsieme di parametri get_tabnet_hyperparameter_tuning_job_pipeline_and_parameters
:
Nome parametro | Tipo | Definizione |
---|---|---|
data_source_csv_filenames |
Stringa | Un URI per un file CSV archiviato in Cloud Storage. |
data_source_bigquery_table_path |
Stringa | Un URI per una tabella BigQuery. |
dataflow_service_account |
Stringa | (Facoltativo) Account di servizio personalizzato per eseguire i job Dataflow. Il job Dataflow può essere configurato per utilizzare IP privati e una subnet VPC specifica. Questo parametro funge da override per l'account di servizio worker Dataflow predefinito. |
study_spec_parameters_override |
List[Dict[String, Any]] | (Facoltativo) Un'override per l'ottimizzazione degli iperparametri. Questo parametro può essere vuoto o contenere uno o più iperparametri possibili. Se non è impostato un valore dell'iperparametro, Vertex AI utilizza l'intervallo di ottimizzazione predefinito per l'iperparametro. |
Se vuoi configurare gli iperparametri utilizzando il parametro study_spec_parameters_override
,
puoi utilizzare la funzione di assistenza get_tabnet_study_spec_parameters_override
di Vertex AI.
La funzione ha i seguenti input:
dataset_size_bucket
: un bucket per le dimensioni del set di dati- "small": meno di 1 milione di righe
- "medium": 1 milione - 100 milioni di righe
- "large": più di 100 milioni di righe
training_budget_bucket
: un bucket per il budget della formazione- 'small': < 600 $
- 'medium': 600 - 2400 $
- 'large': > 2400 $
prediction_type
: il tipo di previsione desiderato
La funzione get_tabnet_study_spec_parameters_override
restituisce un elenco di
iperparametri e intervalli.
Di seguito è riportato un esempio di come utilizzare la funzione get_tabnet_study_spec_parameters_override
:
study_spec_parameters_override = automl_tabular_utils.get_tabnet_study_spec_parameters_override(
dataset_size_bucket="small",
prediction_type="classification",
training_budget_bucket="small",
)
Addestra un modello con CustomJob
Il seguente codice campione mostra come eseguire una pipeline CustomJob:
pipeline_job = aiplatform.PipelineJob(
...
template_path=template_path,
parameter_values=parameter_values,
...
)
pipeline_job.run(service_account=SERVICE_ACCOUNT)
Il parametro facoltativo service_account
in pipeline_job.run()
ti consente di impostare l'account di servizio Vertex AI Pipelines su un account a tua scelta.
La pipeline e i valori dei parametri sono definiti dalla seguente funzione. I dati di addestramento possono essere un file CSV in Cloud Storage o una tabella in BigQuery.
template_path, parameter_values = automl_tabular_utils.get_tabnet_trainer_pipeline_and_parameters(...)
Di seguito è riportato un sottoinsieme di parametri get_tabnet_trainer_pipeline_and_parameters
:
Nome parametro | Tipo | Definizione |
---|---|---|
data_source_csv_filenames |
Stringa | Un URI per un file CSV archiviato in Cloud Storage. |
data_source_bigquery_table_path |
Stringa | Un URI per una tabella BigQuery. |
dataflow_service_account |
Stringa | (Facoltativo) Account di servizio personalizzato per eseguire i job Dataflow. Il job Dataflow può essere configurato per utilizzare IP privati e una subnet VPC specifica. Questo parametro funge da override per l'account di servizio worker Dataflow predefinito. |
Passaggi successivi
Quando è tutto pronto per fare previsioni con il tuo modello di classificazione o regressione, hai due opzioni:
- Eseguire previsioni online (in tempo reale) utilizzando il modello
- Ottieni previsioni batch direttamente dal modello.
- Scopri di più sui prezzi per l'addestramento dei modelli.