Se você estiver escrevendo seu próprio código de treinamento em vez de usar o AutoML}, há várias maneiras de fazer o treinamento sem servidor da Vertex AI. Este documento oferece uma breve visão geral e comparação das diferentes maneiras de executar o treinamento sem servidor.
Recursos de treinamento sem servidor na Vertex AI
É possível criar três tipos de recursos da Vertex AI para treinar modelos personalizados na Vertex AI:
Ao criar um job personalizado, você especifica as configurações que a Vertex AI precisa executar no seu código de treinamento, incluindo:
- Um pool de workers
para treinamento de nó único (
WorkerPoolSpec) ou vários pools de workers para treinamento distribuído - Configurações opcionais para configurar a programação do job (
Scheduling), configurar algumas variáveis de ambiente para o código de treinamento, usando um personalizado }conta de serviço e usando o Peering de redes VPC
Nos pools de workers, é possível especificar as seguintes configurações:
- Tipos de máquina e aceleradores
- Configuração do tipo de código de treinamento que o pool de workers executa: um aplicativo de treinamento em Python (
PythonPackageSpec) ou um contêiner personalizado (ContainerSpec).
Os jobs de ajuste de hiperparâmetros têm outras configurações a serem definidas, como a métrica. Saiba mais sobre o ajuste de hiperparâmetros.
Um pipeline de treinamento orquestra jobs de treinamento sem servidor ou jobs de ajuste de hiperparâmetros com etapas extras, como carregar um conjunto de dados ou fazer upload do modelo na Vertex AI após a conclusão do job de treinamento.
Recursos de treinamento sem servidor
Para visualizar os pipelines de treinamento atuais no projeto, acesse a página Pipelines de treinamento na seção Vertex AI do Google Cloud console.
Acessar pipelines de treinamento
Para ver os jobs personalizados no projeto, acesse a página Jobs personalizados.
Para visualizar os jobs de ajuste de hiperparâmetros existentes no projeto, acesse a página Ajuste de hiperparâmetros.
Acesse o ajuste de hiperparâmetros
Contêineres pré-criados e personalizados
Antes de enviar um job de treinamento sem servidor, um job de ajuste de hiperparâmetros ou um pipeline de treinamento para a Vertex AI, é necessário criar um aplicativo de treinamento em Python ou um contêiner personalizado para definir o código de treinamento e as dependências que você quer executar na Vertex AI. Se você criar um aplicativo de treinamento em Python usando o TensorFlow, o PyTorch, o scikit-learn ou o XGBoost, poderá usar nossos contêineres pré-criados para executar o código. Se você não tiver certeza de qual dessas opções escolher, consulte os requisitos do código de treinamento para saber mais.
Treinamento distribuído
É possível configurar um job de treinamento sem servidor, um job de ajuste de hiperparâmetros ou um pipeline de treinamento para treinamento distribuído especificando vários pools de workers:
- Use o primeiro pool de workers para configurar a réplica principal e defina a contagem de réplicas como 1.
- Adicione mais pools de workers para configurar réplicas de workers, réplicas de servidores de parâmetros ou réplicas de avaliadores se o framework de machine learning for compatível com essas tarefas adicionais do cluster para treinamento distribuído.
Saiba mais sobre como usar o treinamento distribuído.
A seguir
- Saiba como criar um recurso permanente para executar jobs de treinamento sem servidor.
- Consulte Criar jobs de treinamento sem servidor para aprender a criar jobs de treinamento sem servidor para executar seus aplicativos de treinamento sem servidor na Vertex AI.
- Consulte Criar pipelines de treinamento para aprender a criar pipelines de treinamento para executar aplicativos de treinamento sem servidor na Vertex AI.
- Consulte Usar ajuste de hiperparâmetros para saber mais sobre as pesquisas de ajuste de hiperparâmetros.