Ultralytics YOLO27:
Torna al glossario di Ultralytics

Callback

Scopri come le callback ottimizzano l'addestramento di Ultralytics YOLO26. Impara a implementare l'arresto anticipato, il checkpointing e la registrazione personalizzata per migliorare i tuoi workflow di AI.

Nel campo dell'ingegneria del software e dell'intelligenza artificiale (AI), un callback è un frammento di codice eseguibile passato come argomento ad altro codice, che dovrebbe quindi eseguire (richiamare) l'argomento in un determinato momento. Nel contesto specifico dei framework di apprendimento profondo (DL), i callback sono strumenti essenziali che consentono agli sviluppatori di personalizzare il comportamento del ciclo di addestramento del modello senza modificare direttamente il codice di addestramento principale. Fungono da trigger automatici che eseguono azioni specifiche in varie fasi del processo di addestramento, come all'inizio o alla fine di un'epoca, di un batch di addestramento o dell'intera sessione di addestramento.

Il ruolo dei callback nel machine learning#

L'addestramento di una rete neurale complessa può richiedere ore o persino giorni. Senza callback, il processo di addestramento è essenzialmente una "scatola nera" che continua a funzionare fino al completamento, richiedendo spesso una supervisione manuale. I callback introducono osservabilità e controllo, consentendo al sistema di autoregolarsi in base a metriche delle prestazioni in tempo reale.

Quando si utilizzano librerie di alto livello come PyTorch o TensorFlow, i callback offrono un modo per inserire logica nell'algoritmo di ottimizzazione. Ad esempio, se un modello sta apprendendo bene, un callback potrebbe salvare lo stato corrente; se smette di apprendere, un callback potrebbe interrompere il processo per risparmiare risorse. Questo rende il flusso di lavoro di machine learning (ML) più efficiente e robusto.

Applicazioni comuni ed esempi del mondo reale#

I callback sono versatili e possono essere utilizzati per un'ampia gamma di attività durante il monitoraggio del modello e l'ottimizzazione.

  • Arresto anticipato: uno degli utilizzi più comuni è l'arresto anticipato. Questo callback monitora una metrica specifica, come la perdita sui dati di validazione. Se la perdita non diminuisce per un numero prestabilito di epoche, il callback interrompe l'addestramento. Questo previene l'overfitting, assicurando che il modello generalizzi bene a nuovi dati invece di memorizzare i dati di addestramento.
  • Checkpoint del modello: nelle sessioni di addestramento prolungate, i guasti hardware possono avere conseguenze disastrose. Un callback per i checkpoint salva i pesi del modello a intervalli regolari (ad esempio, a ogni epoca) oppure solo quando il modello ottiene un nuovo punteggio "migliore" su metriche come accuratezza o precisione media media (mAP). In questo modo hai sempre una versione salvata del modello con le migliori prestazioni.
  • Pianificazione del learning rate: il learning rate controlla quanto cambia il modello in risposta all'errore stimato ogni volta che vengono aggiornati i pesi del modello. Un callback può regolare dinamicamente questo valore, riducendolo quando l'apprendimento raggiunge un plateau per aiutare il modello a convergere verso una soluzione ottimale; questa tecnica è spesso chiamata decadimento del learning rate.
  • Logging e visualizzazione: i callback vengono spesso utilizzati per integrare strumenti di tracciamento degli esperimenti. Trasmettono le metriche a dashboard come TensorBoard o MLflow, consentendo ai data scientist di visualizzare le funzioni di perdita e i grafici delle prestazioni in tempo reale.

Implementazione dei callback con Ultralytics YOLO#

La libreria Ultralytics supporta un solido sistema di callback, che consente agli utenti di collegarsi agli eventi durante l'addestramento di modelli come YOLO26. Questo è particolarmente utile per chi gestisce flussi di lavoro sulla Ultralytics Platform e necessita di logging personalizzato o di una logica di controllo.

Di seguito è riportato un esempio conciso di come definire e registrare un callback personalizzato che stampa un messaggio alla fine di ogni epoca di addestramento utilizzando la Python API:

from ultralytics import YOLO


# Define a custom callback function
def on_train_epoch_end(trainer):
    """Callback function to execute at the end of each training epoch."""
    print(f"Epoch {trainer.epoch + 1} complete. Current Fitness: {trainer.fitness}")


# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")

# Register the custom callback to the model
model.add_callback("on_train_epoch_end", on_train_epoch_end)

# Train the model with the callback active
model.train(data="coco8.yaml", epochs=3)

Callback e hook#

Sebbene siano correlati, è utile distinguere i callback dagli hook. Nei framework come PyTorch, gli hook sono generalmente funzioni di livello inferiore collegate a specifiche operazioni sui tensori o a layer di reti neurali per ispezionare o modificare gradienti e output durante il passaggio in avanti o all'indietro. Al contrario, i callback sono in genere astrazioni di livello superiore associate agli eventi del ciclo di addestramento (inizio, fine, elaborazione dei batch), anziché al grafo computazionale matematico stesso.

Approfondimenti e risorse#

Per chi desidera approfondire come ottimizzare i flussi di lavoro di addestramento, esplorare il tuning degli iperparametri è un passo successivo naturale. Inoltre, comprendere le attività di visione artificiale (CV) sottostanti, come il rilevamento degli oggetti e la segmentazione delle istanze, fornirà il contesto necessario per capire perché sia indispensabile un controllo preciso dell'addestramento tramite callback. Per la gestione di questi processi a livello enterprise, la Ultralytics Platform offre soluzioni integrate che automatizzano molti di questi comportamenti basati sui callback.

Explore solutions

Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai 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 vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai 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 vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai 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 vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo percorso verso il futuro del machine learning