Nesta página, mostramos como treinar um modelo de classificação ou regressão de um conjunto de dados tabular com o fluxo de trabalho tabular para o TabNet.
Duas versões do fluxo de trabalho tabular para o treinamento do TabNet estão disponíveis:
- HyperparameterTuningJob procura o melhor conjunto de valores de hiperparâmetros a serem usados para treinamento de modelos.
- Com o CustomJob, é possível especificar os valores de hiperparâmetros a serem usados para o treinamento do modelo. Se você souber exatamente de quais valores de hiperparâmetro é necessário, especifique-os em vez de procurá-los e economizar recursos de treinamento.
Para saber mais sobre as contas de serviço usadas por esse fluxo de trabalho, consulte Contas de serviço para fluxos de trabalho tabulares.
APIs de fluxo de trabalho
Esse fluxo de trabalho usa as seguintes APIs:
- Vertex AI
- Dataflow
- Compute Engine
- Cloud Storage
Treinar um modelo com HyperparameterTuningJob
O exemplo de código a seguir demonstra como executar um pipeline:
pipeline_job = aiplatform.PipelineJob(
...
template_path=template_path,
parameter_values=parameter_values,
...
)
pipeline_job.run(service_account=SERVICE_ACCOUNT)
O parâmetro opcional service_account
em pipeline_job.run()
permite definir a
conta de serviço dos Pipelines da Vertex AI para uma conta de sua escolha.
O pipeline e os valores de parâmetro são definidos pela seguinte função: Os dados de treinamento podem ser um arquivo CSV no Cloud Storage ou uma tabela no BigQuery.
template_path, parameter_values = automl_tabular_utils.get_tabnet_hyperparameter_tuning_job_pipeline_and_parameters(...)
Confira a seguir um subconjunto de parâmetros get_tabnet_hyperparameter_tuning_job_pipeline_and_parameters
:
Nome do parâmetro | Tipo | Definição |
---|---|---|
data_source_csv_filenames |
String | Um URI para um CSV armazenado no Cloud Storage. |
data_source_bigquery_table_path |
String | Um URI de uma tabela do BigQuery. |
dataflow_service_account |
String | (Opcional) Conta de serviço personalizada para executar jobs do Dataflow. O job do Dataflow pode ser configurado para usar IPs privados e uma sub-rede VPC específica. Esse parâmetro funciona como uma substituição para a conta de serviço do worker padrão do Dataflow. |
study_spec_parameters_override |
List[Dict[String, Any]] | (Opcional) Uma substituição para ajustar hiperparâmetros. Esse parâmetro pode estar vazio ou conter um ou mais hiperparâmetros possíveis. Se um valor de hiperparâmetro não for definido, a Vertex AI usará o intervalo de ajuste padrão para o hiperparâmetro. |
Para configurar os hiperparâmetros usando o parâmetro study_spec_parameters_override
,
use a função auxiliar get_tabnet_study_spec_parameters_override
da Vertex AI.
A função tem as seguintes entradas:
dataset_size_bucket
: é um bucket para o tamanho do conjunto de dados.- 'small': < 1 milhão de linhas
- 'medium': 1M - 100M de linhas
- 'large': mais de 100 milhões de linhas
training_budget_bucket
: um bucket para o orçamento de treinamento- 'small': < US$ 600
- Média: US$ 600 - US$ 2400
- 'grande': > US$ 2.400
prediction_type
: o tipo de previsão desejado
A função get_tabnet_study_spec_parameters_override
retorna uma lista de
hiperparâmetros e intervalos.
Veja a seguir um exemplo de como a função get_tabnet_study_spec_parameters_override
pode ser usada:
study_spec_parameters_override = automl_tabular_utils.get_tabnet_study_spec_parameters_override(
dataset_size_bucket="small",
prediction_type="classification",
training_budget_bucket="small",
)
Treinar um modelo com o CustomJob
O exemplo de código a seguir demonstra como executar um pipeline:
pipeline_job = aiplatform.PipelineJob(
...
template_path=template_path,
parameter_values=parameter_values,
...
)
pipeline_job.run(service_account=SERVICE_ACCOUNT)
O parâmetro opcional service_account
em pipeline_job.run()
permite definir a
conta de serviço dos Pipelines da Vertex AI para uma conta de sua escolha.
O pipeline e os valores de parâmetro são definidos pela seguinte função: Os dados de treinamento podem ser um arquivo CSV no Cloud Storage ou uma tabela no BigQuery.
template_path, parameter_values = automl_tabular_utils.get_tabnet_trainer_pipeline_and_parameters(...)
Confira a seguir um subconjunto de parâmetros get_tabnet_trainer_pipeline_and_parameters
:
Nome do parâmetro | Tipo | Definição |
---|---|---|
data_source_csv_filenames |
String | Um URI para um CSV armazenado no Cloud Storage. |
data_source_bigquery_table_path |
String | Um URI de uma tabela do BigQuery. |
dataflow_service_account |
String | (Opcional) Conta de serviço personalizada para executar jobs do Dataflow. O job do Dataflow pode ser configurado para usar IPs privados e uma sub-rede VPC específica. Esse parâmetro funciona como uma substituição para a conta de serviço do worker padrão do Dataflow. |
A seguir
Quando estiver pronto para fazer previsões com o modelo de classificação ou regressão, você terá duas opções:
- Faça previsões on-line (em tempo real) usando seu modelo.
- Receba previsões em lote diretamente do modelo.
- Saiba mais sobre os preços do treinamento de modelos.