Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Training distribuito

Scopri come la formazione distribuita scala i carichi di lavoro dell'IA su più GPU. Impara ad accelerare la formazione Ultralytics con DDP per ottenere risultati più rapidi e accurati.

L'addestramento distribuito è un metodo di apprendimento automatico in cui il carico di lavoro necessario per addestrare un modello viene suddiviso tra più processori o macchine. Questo approccio è essenziale per gestire set di dati su larga scala e architetture di reti neurali complesse che altrimenti richiederebbero un tempo eccessivo per essere addestrate su un singolo dispositivo. Sfruttando la potenza di calcolo combinata di più unità di elaborazione grafica (GPU) o unità Tensor (TPU), l'addestramento distribuito accelera significativamente il ciclo di sviluppo, consentendo a ricercatori e ingegneri di iterare più rapidamente e ottenere una maggiore precisione nei loro modelli.

Come funziona la formazione distribuita

L'idea alla base dell'addestramento distribuito è la parallelizzazione. Invece di elaborare i dati in modo sequenziale su un unico chip, il compito viene suddiviso in blocchi più piccoli che vengono elaborati simultaneamente. Esistono due strategie principali per ottenere questo risultato:

Applicazioni nel mondo reale

La formazione distribuita ha trasformato i settori rendendo possibile risolvere problemi che prima erano computazionalmente irrealizzabili.

  • Guida autonoma: lo sviluppo di veicoli autonomi sicuri richiede l'analisi di petabyte di dati video e sensoriali. Gli ingegneri automobilistici utilizzano grandi cluster distribuiti per addestrare modelli di visione per la segmentazione semantica in tempo reale e il rilevamento delle corsie . Questa scala massiccia garantisce che l' intelligenza artificiale nei sistemi automobilistici possa reagire in modo affidabile alle diverse condizioni stradali.
  • Imaging medico: nel settore sanitario, l'analisi di scansioni 3D ad alta risoluzione come le risonanze magnetiche richiede una notevole quantità di memoria e potenza di elaborazione. L'addestramento distribuito consente ai ricercatori di creare strumenti diagnostici ad alte prestazioni per il rilevamento dei tumori e altre attività critiche. Utilizzando framework come NVIDIA , gli ospedali possono addestrare modelli su diversi set di dati senza incorrere in colli di bottiglia della memoria, migliorando i risultati dell'IA nel settore sanitario.

Utilizzo della formazione distribuita con Ultralytics

Il ultralytics La libreria semplifica l'implementazione dell'addestramento Distributed Data Parallel (DDP). È possibile scalare l'addestramento delle più avanzate YOLO26 modelli su più GPU semplicemente specificando gli indici dei dispositivi negli argomenti di addestramento.

from ultralytics import YOLO

# Load a pre-trained YOLO26 model
model = YOLO("yolo26n.pt")

# Train the model using two GPUs (device 0 and 1)
# The library automatically handles the DDP communication backend
results = model.train(data="coco8.yaml", epochs=100, device=[0, 1])

Concetti correlati e confronti

È utile distinguere l'addestramento distribuito da termini simili nell'ecosistema dell'apprendimento automatico per comprenderne i ruoli specifici:

  • Vs. Apprendimento federato: sebbene entrambi coinvolgano più dispositivi, i loro obiettivi sono diversi. L'addestramento distribuito di solito centralizza i dati in un cluster ad alte prestazioni per massimizzare la velocità. Al contrario, l' apprendimento federato mantiene i dati decentralizzati sui dispositivi degli utenti (come gli smartphone) per dare priorità alla privacy dei dati, aggiornando il modello globale senza che i dati grezzi lascino mai la fonte.
  • Vs. High-Performance Computing (HPC): l'HPC è un campo molto vasto che include il supercalcolo per simulazioni scientifiche come le previsioni meteorologiche. L'addestramento distribuito è un'applicazione specifica dell'HPC applicata agli algoritmi di ottimizzazione nel deep learning. Spesso si basa su librerie di comunicazione specializzate come NVIDIA per ridurre al minimo la latenza tra le GPU.

Scalabilità con le piattaforme cloud

La gestione dell'infrastruttura per la formazione distribuita può essere complessa. Le piattaforme moderne semplificano questo processo offrendo ambienti gestiti. Ad esempio, la Ultralytics consente agli utenti di gestire set di dati e avviare cicli di formazione che possono essere implementati in ambienti cloud o cluster locali. Questa integrazione semplifica il flusso di lavoro dall' annotazione dei dati all'implementazione finale del modello, garantendo che il passaggio a più GPU sia il più fluido possibile. Allo stesso modo, i fornitori di servizi cloud come Google Vertex AI e Amazon SageMaker forniscono un'infrastruttura robusta per l'esecuzione di attività di formazione distribuite su scala aziendale.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora