Treinar um modelo com amplitude e profundidade

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 amplitude e profundidade.

Duas versões do fluxo de trabalho tabular para treinamento amplo e profundo 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_wide_and_deep_hyperparameter_tuning_job_pipeline_and_parameters(...)

Confira a seguir um subconjunto de parâmetros get_wide_and_deep_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_wide_and_deep_study_spec_parameters_override da Vertex AI. Essa função retorna uma lista de hiperparâmetros e intervalos.

Veja a seguir um exemplo de como a função get_wide_and_deep_study_spec_parameters_override pode ser usada:

study_spec_parameters_override = automl_tabular_utils.get_wide_and_deep_study_spec_parameters_override()

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_wide_and_deep_trainer_pipeline_and_parameters(...)

Confira a seguir um subconjunto de parâmetros get_wide_and_deep_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: