Ultralytics YOLO27:
Torna al glossario di Ultralytics

Stochastic Gradient Descent (SGD)

Scopri come la discesa stocastica del gradiente (SGD) ottimizza i modelli di machine learning. Scopri come SGD alimenta Ultralytics YOLO26 per un addestramento dell’IA più rapido ed efficiente.

La discesa stocastica del gradiente (SGD) è un potente algoritmo di ottimizzazione ampiamente usato nell'apprendimento automatico per addestrare i modelli in modo efficiente, soprattutto con dataset di grandi dimensioni. In sostanza, SGD è una variante del metodo standard di discesa del gradiente, progettata per accelerare l'apprendimento aggiornando più frequentemente i parametri del modello. Invece di calcolare l'errore sull'intero dataset prima di effettuare un singolo aggiornamento, come avviene nella tradizionale discesa del gradiente a batch, SGD aggiorna i pesi del modello usando un solo esempio di addestramento selezionato casualmente alla volta. Questa natura «stocastica», o casuale, introduce rumore nel percorso di ottimizzazione, che può aiutare il modello a uscire da soluzioni subottimali e a convergere più rapidamente su dataset enormi, per i quali elaborare tutti i dati insieme richiederebbe risorse computazionali proibitive.

Come funziona la discesa stocastica del gradiente#

L'obiettivo principale di qualsiasi processo di addestramento è minimizzare una funzione di perdita, che quantifica la differenza tra le previsioni del modello e i valori target effettivi. SGD raggiunge questo obiettivo tramite un ciclo iterativo. Per prima cosa, l'algoritmo seleziona un punto dati casuale dai dati di addestramento. Esegue quindi un passaggio in avanti per generare una previsione e calcola l'errore. Usando la retropropagazione, l'algoritmo calcola il gradiente, ovvero la pendenza del panorama dell'errore, sulla base di quel singolo esempio. Infine, aggiorna i pesi del modello nella direzione opposta a quella del gradiente per ridurre l'errore.

Il processo viene ripetuto per molte iterazioni, spesso raggruppate in epoche, finché le prestazioni del modello non si stabilizzano. L'entità degli aggiornamenti è controllata da un iperparametro chiamato tasso di apprendimento. Poiché ogni passo si basa su un solo campione, il percorso verso il minimo è spesso irregolare o rumoroso rispetto alla traiettoria uniforme della discesa del gradiente a batch. Tuttavia, questo rumore è spesso vantaggioso nell'apprendimento profondo, poiché può impedire al modello di restare bloccato in un minimo locale e potenzialmente condurre a una soluzione globale migliore.

SGD e altri algoritmi di ottimizzazione#

Per scegliere la strategia di addestramento giusta, è fondamentale comprendere le differenze tra SGD e i relativi algoritmi di ottimizzazione.

  • Discesa del gradiente a batch: questo metodo tradizionale calcola il gradiente usando l'intero dataset per ogni singolo aggiornamento. Offre un percorso stabile e diretto verso il minimo, ma è estremamente lento e richiede molta memoria per le attività di apprendimento automatico (ML) su larga scala.
  • Discesa del gradiente mini-batch: nella pratica, la maggior parte dei framework moderni di apprendimento profondo, incluso PyTorch, implementa un approccio ibrido spesso chiamato SGD, ma tecnicamente definito «SGD mini-batch». Questo metodo aggiorna i parametri usando un piccolo gruppo di campioni (un batch), anziché un solo campione. Bilancia l'efficienza computazionale della SGD pura con la stabilità della discesa del gradiente a batch, diventando lo standard per addestrare modelli come YOLO26.
  • Ottimizzatore Adam: Adam è un algoritmo di ottimizzazione con tasso di apprendimento adattivo che sviluppa la SGD. Regola individualmente il tasso di apprendimento per ciascun parametro sulla base delle stime dei momenti. Sebbene Adam converga spesso più rapidamente, la SGD con momento viene ancora usata di frequente nella visione artificiale (CV) perché in determinati scenari è in grado di trovare soluzioni che generalizzano meglio.

Applicazioni nel mondo reale#

SGD e le sue varianti sono il motore di molte delle tecnologie di IA trasformative oggi in uso.

  1. Veicoli autonomi: nello sviluppo dei veicoli autonomi, i modelli devono elaborare flussi enormi di dati visivi per identificare pedoni, segnali stradali e ostacoli. L'addestramento di queste sofisticate reti di rilevamento degli oggetti richiede un'ottimizzazione efficiente per gestire milioni di immagini stradali. SGD consente agli ingegneri di perfezionare iterativamente l'accuratezza del modello, assicurando che i sistemi critici per la sicurezza nell'IA per il settore automobilistico possano prendere decisioni affidabili in tempo reale.

  2. Diagnostica medica: il campo dell'analisi di immagini mediche si affida notevolmente all'apprendimento profondo per rilevare anomalie come tumori nelle risonanze magnetiche o nelle radiografie. Poiché i dataset medici possono essere enormi e ad alta risoluzione, SGD consente di addestrare complesse reti neurali convoluzionali (CNN) senza sovraccaricare la memoria. Ciò facilita la creazione di strumenti diagnostici ad alta precisione che assistono i medici nell'IA in sanità.

Esempio di codice Python#

Mentre le librerie di alto livello come ultralytics gestiscono internamente l'ottimizzazione durante il comando train(), puoi vedere come inizializzare e usare un ottimizzatore SGD in un flusso di lavoro PyTorch di livello più basso. Questo frammento mostra come definire un semplice ottimizzatore SGD per un tensore.

import torch
import torch.nn as nn
import torch.optim as optim

# Definisci un semplice modello lineare
model = nn.Linear(10, 1)

# Inizializza l'ottimizzatore di discesa stocastica del gradiente (SGD)
# 'lr' è il tasso di apprendimento e 'momentum' aiuta ad accelerare i gradienti nella direzione corretta
optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.9)

# Crea un input e un target fittizi
data = torch.randn(1, 10)
target = torch.randn(1, 1)

# Passaggio in avanti
output = model(data)
loss = nn.MSELoss()(output, target)

# Passaggio all'indietro e fase di ottimizzazione
optimizer.zero_grad()  # Azzera i gradienti precedenti
loss.backward()  # Calcola i gradienti
optimizer.step()  # Aggiorna i parametri del modello
print("Model parameters updated using SGD.")

Sfide e soluzioni#

Nonostante la sua popolarità, SGD comporta alcune sfide. Il problema principale è il rumore nei passaggi del gradiente, che può far oscillare notevolmente la loss invece di convergere in modo regolare. Per mitigare il problema, gli esperti usano spesso il momentum, una tecnica che aiuta ad accelerare SGD nella direzione pertinente e ad attenuare le oscillazioni, come una palla pesante che rotola giù da una collina. Inoltre, trovare il learning rate corretto è fondamentale: se è troppo alto, il modello potrebbe superare il minimo (gradiente esplosivo); se è troppo basso, l'addestramento sarà estremamente lento. Strumenti come la Ultralytics Platform aiutano ad automatizzare questo processo gestendo l'ottimizzazione degli iperparametri e offrendo visualizzazioni delle metriche di addestramento. Progressi come l'ottimizzatore Adam automatizzano di fatto la regolazione del learning rate, affrontando alcune delle difficoltà intrinseche di SGD.

Explore solutions

Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini da droni e riprese aeree in informazioni utili in tempo reale per l'agricoltura, l'acquacoltura, il monitoraggio ambientale, la conservazione e l'analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la vision AI nel monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e settori geospaziali con soluzioni di computer vision.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini da droni e riprese aeree in informazioni utili in tempo reale per l'agricoltura, l'acquacoltura, il monitoraggio ambientale, la conservazione e l'analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la vision AI nel monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e settori geospaziali con soluzioni di computer vision.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini da droni e riprese aeree in informazioni utili in tempo reale per l'agricoltura, l'acquacoltura, il monitoraggio ambientale, la conservazione e l'analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la vision AI nel monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e settori geospaziali con soluzioni di computer vision.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning