Glossario

Dati di convalida

Ottimizza i modelli di apprendimento automatico con i dati di convalida per evitare l'overfitting, mettere a punto gli iperparametri e garantire prestazioni solide e reali.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

I dati di convalida sono una componente cruciale nel ciclo di sviluppo del Machine Learning (ML). Si tratta di un sottoinsieme separato del dataset originale, distinto dai dati di addestramento utilizzati per adattare il modello e dai dati di test utilizzati per la valutazione finale. Lo scopo principale dei dati di validazione è quello di fornire una valutazione imparziale dell'adattamento di un modello sul set di dati di addestramento, mentre si regolano gli iperparametri del modello e si prendono decisioni sull'architettura del modello. Questo processo aiuta a selezionare la migliore configurazione del modello prima di valutarne le prestazioni finali su dati non visti.

Il ruolo dei dati di convalida

Durante il processo di formazione del modello, un modello ML apprende modelli dai dati di formazione. Tuttavia, valutare il modello solo sulla base di questi dati può essere fuorviante, in quanto il modello potrebbe semplicemente memorizzare gli esempi di addestramento, un fenomeno noto come overfitting. I dati di convalida fungono da punto di controllo. Valutando le prestazioni del modello su questo set separato periodicamente durante l'addestramento, gli sviluppatori possono:

  1. Regola gli iperparametri: Regola le impostazioni come il tasso di apprendimento, la dimensione del batch o la complessità del modello in base alle metriche delle prestazioni(accuratezza, mAP, ecc.) calcolate sul set di validazione. Questo viene spesso fatto utilizzando le tecniche descritte nelle guide alla regolazione degli iperparametri.
  2. Seleziona i modelli: Confronta diverse architetture o versioni di modelli (ad esempio, confronta Ultralytics YOLOv8 vs. YOLOv10) in base alle loro prestazioni di validazione.
  3. Prevenire l'overfitting: Monitora le metriche di convalida per rilevare quando il modello inizia a peggiorare le prestazioni sul set di convalida anche se le prestazioni di addestramento migliorano, indicando un overfitting. Tecniche come l'arresto anticipato si basano sulle prestazioni di validazione.

Dati di convalida vs. dati di formazione e di test

Comprendere la distinzione tra dataset di formazione, convalida e test è fondamentale per lo sviluppo di modelli robusti:

  • Dati di addestramento: La porzione più grande del dataset, utilizzata direttamente dall'algoritmo di apprendimento per imparare i modelli e regolare i pesi del modello. Il modello "vede" questi dati frequentemente durante i cicli di formazione(epochs).
  • Dati di convalida: Una porzione più piccola utilizzata indirettamente durante l'addestramento. Il modello non impara direttamente da questi dati, ma le prestazioni su questo set guidano le decisioni sugli iperparametri e sulla struttura del modello. Fornisce un feedback su quanto il modello possa generalizzarsi a nuovi dati durante la fase di sviluppo.
  • Dati di prova: Una porzione di dati completamente separata che il modello non ha mai visto durante la formazione o la validazione. Vengono utilizzati una sola volta dopo aver completato l'addestramento e la messa a punto per fornire una stima finale e imparziale della capacità di generalizzazione del modello su dati reali non visti.

Un'adeguata separazione, spesso gestita con strumenti come Ultralytics HUB per la gestione e il versionamento dei set di dati, garantisce che le informazioni del set di test non "trapelino" nel processo di formazione o di selezione dei modelli, il che porterebbe a stime delle prestazioni troppo ottimistiche.

Regolazione degli iperparametri e selezione del modello

I dati di convalida sono indispensabili per la regolazione degli iperparametri. Gli iperparametri sono impostazioni di configurazione esterne al modello stesso, impostate prima dell'inizio del processo di apprendimento. Ad esempio, il tasso di apprendimento, il numero di strati di una rete neurale o il tipo di algoritmo di ottimizzazione utilizzato. Gli sviluppatori addestrano più versioni del modello con diverse combinazioni di iperparametri, valutano ciascuna di esse sul set di validazione e selezionano la combinazione che produce le migliori prestazioni. Questa ricerca sistematica può essere automatizzata utilizzando metodi come la Grid Search o l'ottimizzazione bayesiana, spesso facilitata da piattaforme integrate con gli strumenti MLOps.

Esempi del mondo reale

  1. Rilevamento di oggettiin computer vision: Quando si addestra un Ultralytics YOLO per il rilevamento di oggetti nelle immagini (ad esempio, utilizzando il set di dati VisDrone), una parte delle immagini etichettate viene messa da parte come dati di validazione. Durante l'addestramento, la mAP (precisione media) del modello viene calcolata su questo set di validazione dopo ogni epoch. Questa mAP di validazione aiuta a decidere quando interrompere l'addestramento (arresto anticipato) o quale serie di tecniche di incremento dei dati funziona meglio, prima di una verifica finale delle prestazioni sul set di test. Le strategie di valutazione dei modelli efficaci si basano molto su questa suddivisione.
  2. Elaborazione del linguaggio naturale Classificazione del testo: Nello sviluppo di un modello per classificare le recensioni dei clienti come positive o negative(sentiment analysis), viene utilizzato un set di validazione per scegliere l'architettura ottimale (ad esempio, LSTM o Transformer) o per regolare iperparametri come il tasso di abbandono. Il modello che ottiene il punteggio F1 o l'accuratezza più alta sul set di validazione viene selezionato per il test finale. Risorse come Hugging Face spesso forniscono set di dati pre-divisi per questo scopo.

Validazione incrociata

Quando la quantità di dati disponibili è limitata, si ricorre spesso a una tecnica chiamata Cross-Validation (in particolare K-Fold Cross-Validation). In questo caso, i dati di formazione vengono suddivisi in "K" sottoinsiemi (fold). Il modello viene addestrato K volte, utilizzando ogni volta K-1 fold per l'addestramento e il fold rimanente come set di validazione. Le prestazioni vengono poi calcolate come media di tutte le K esecuzioni. Questo metodo fornisce una stima più robusta delle prestazioni del modello e consente di utilizzare meglio i dati limitati, come spiegato nella guidaUltralytics K-Fold Cross-Validation.

In sintesi, i dati di convalida sono la chiave di volta per costruire modelli di intelligenza artificiale (AI) affidabili e performanti. Consentono di regolare efficacemente gli iperparametri, di selezionare i modelli e di prevenire l'overfitting, assicurando che i modelli si generalizzino ben oltre i dati su cui sono stati addestrati.

Leggi tutto