Condividi tramite


Formazione DDP (Distributed Data Parallel)

Importante

Questa funzionalità è in versione beta.

Questa pagina include esempi di notebook per l'uso del training DDP (Distributed Data Parallel) nel calcolo GPU serverless. DDP è la tecnica di parallelismo più comune per il training distribuito, in cui il modello completo viene replicato in ogni GPU e i batch di dati vengono suddivisi tra GPU.

Quando usare DDP

Usare DDP quando:

  • Il modello si adatta completamente alla memoria di una singola GPU
  • Si vuole scalare il training aumentando la larghezza di banda dei dati
  • È necessario l'approccio di training distribuito più semplice con supporto automatico nella maggior parte dei framework

Per i modelli di dimensioni maggiori che non trovano spazio nella memoria di una singola GPU, considera invece FSDP o DeepSpeed.

Addestramento di una semplice rete neurale perceptron multistrato (MLP) con PyTorch DDP

Il notebook seguente illustra il training distribuito di una semplice rete neurale mlp (Multilayer Perceptron) usando il modulo DDP di PyTorch in Azure Databricks con risorse GPU serverless.

PyTorch DDP

Ottieni il notebook

Addestramento del modello OpenAI GPT-OSS 20B su 8xH100 utilizzando TRL e DDP

Questo notebook illustra come usare l'API Python gpu serverless per eseguire l'ottimizzazione con supervisione (SFT) nel modello GPT-OSS 20B da Hugging Face usando la libreria TRL (Transformer Reinforcement Learning). Questo esempio sfrutta DDP in tutte le 8 GPU H100 nel nodo per ridimensionare le dimensioni globali del batch.

TRL DDP

Ottieni il notebook

Messa a punto distribuita di Llama 3.2 3B con Unsloth

Questo notebook illustra come usare l'API Python Serverless GPU per ottimizzare un modello Llama 3.2 3B con la libreria Unsloth su 8 GPU A10. Unsloth offre ottimizzazioni di training che utilizzano efficacemente la memoria e impiega DDP nel backend tramite Hugging Face Accelerate.

Annullare l'annullamento del DDP

Ottieni il notebook

Addestramento distribuito con Ray Train (computer vision)

Questo notebook illustra l'addestramento distribuito di un modello PyTorch ResNet sul set di dati FashionMNIST utilizzando Ray Train e Ray Data sui cluster GPU serverless di Databricks. Ray Train offre un coordinamento di alta qualità per il training distribuito e utilizza DDP come strategia di parallelismo sottostante. Questo esempio illustra la configurazione dell'archiviazione del catalogo Unity, la configurazione di Ray per l'addestramento GPU multi-nodo, il logging e la registrazione di modelli con MLflow e la valutazione delle prestazioni del modello.

Ray DDP

Ottieni il notebook

Addestramento di un sistema di raccomandazione a doppia torre utilizzando PyTorch Lightning

Questo notebook illustra come eseguire l'addestramento di un modello di raccomandazione a due torri usando PyTorch Lightning su sistemi GPU senza server. PyTorch Lightning offre un'interfaccia di alto livello che gestisce automaticamente la configurazione DDP per il training su più GPU. L'esempio include la preparazione dei dati usando il formato Mosaic Streaming (MDS) e il training distribuito tra GPU A10 o H100.

Vedere la pagina degli esempi di raccomandazioni di Deep Learning per i notebook completi, tra cui:

  • Preparazione dei dati e conversione del formato MDS
  • Training di raccomandazione a due torre con PyTorch Lightning