Yolo Vision Shenzhen
Shenzhen
Iscriviti ora

Migliora la robustezza dei modelli di IA con l'aumento dei dati

Scopri come l'aggiunta di variazioni realistiche ai dati di addestramento attraverso l'aumento dei dati contribuisca a migliorare la robustezza dei modelli di IA e le prestazioni nel mondo reale.

Il testing è una parte fondamentale dello sviluppo di qualsiasi soluzione tecnologica. Mostra ai team come funziona realmente un sistema prima che venga messo in funzione e consente loro di risolvere i problemi in anticipo. Questo vale in molti campi, compresa l'intelligenza artificiale, dove i modelli devono essere in grado di gestire condizioni imprevedibili del mondo reale una volta implementati.

Ad esempio, la visione artificiale è una branca dell'IA che insegna alle macchine a comprendere immagini e video. I modelli di visione artificiale come Ultralytics supportano attività quali il rilevamento di oggetti, la segmentazione di istanze e la classificazione di immagini.

Possono essere utilizzate in molti settori per applicazioni quali il monitoraggio dei pazienti, l'analisi del traffico, il checkout automatizzato e il controllo qualità nella produzione. Tuttavia, anche con modelli avanzati e dati di addestramento di alta qualità, le soluzioni di intelligenza artificiale visiva possono ancora incontrare difficoltà quando si trovano ad affrontare variazioni del mondo reale quali cambiamenti di illuminazione, movimento o oggetti parzialmente ostruiti.

Questo accade perché i modelli apprendono dagli esempi che vengono loro forniti durante l'addestramento. Se non hanno mai visto condizioni come riflessi, sfocature dovute al movimento o visibilità parziale, è meno probabile che riconoscano correttamente gli oggetti in tali scenari.

Un modo per migliorare la robustezza del modello è attraverso l'aumento dei dati. Invece di raccogliere grandi quantità di nuovi dati, gli ingegneri possono apportare piccole e significative modifiche alle immagini esistenti, come regolare l'illuminazione, ritagliare o mescolare le immagini. Questo aiuta il modello ad imparare a riconoscere gli stessi oggetti in una gamma più ampia di situazioni.

In questo articolo vedremo come l'aumento dei dati migliori la robustezza dei modelli e l'affidabilità dei sistemi di intelligenza artificiale visiva quando vengono implementati al di fuori di contesti controllati. Cominciamo!

Come verificare la robustezza di un modello

Prima di addentrarci nell'argomento dell'aumento dei dati, vediamo come capire se un modello di visione artificiale è davvero pronto per essere utilizzato nel mondo reale. 

Un modello robusto continua a funzionare bene anche quando le condizioni cambiano, invece di funzionare solo su immagini pulite e perfettamente etichettate. Ecco alcuni fattori pratici da considerare quando si valuta la robustezza di un modello di IA:

  • Cambiamenti di illuminazione: i modelli possono comportarsi in modo diverso se esposti a luce intensa, luce scarsa, riflessi o ombre, che possono influire sull'affidabilità del rilevamento degli oggetti.
  • Occlusione parziale: nelle scene quotidiane, gli oggetti sono spesso oscurati da altri elementi o sono visibili solo in parte. Un modello più robusto è in grado di riconoscerli anche in assenza di informazioni visive.
  • Scene affollate: gli ambienti con molti oggetti sovrapposti possono rendere più difficile il rilevamento. I modelli che funzionano bene in questi casi sono in genere più affidabili in contesti complessi.

Buoni risultati su immagini pulite e perfettamente catturate non sempre si traducono in prestazioni eccellenti nel mondo reale. Test regolari in condizioni diverse aiutano a dimostrare l'efficacia di un modello una volta implementato.

Che cos'è l'aumento dei dati?

Il modo in cui un oggetto appare in una foto può cambiare a seconda dell'illuminazione, dell'angolazione, della distanza o dello sfondo. Quando si addestra un modello di visione artificiale, il set di dati da cui apprende deve includere questo tipo di variazioni, in modo che possa funzionare bene in ambienti imprevedibili.

L'aumento dei dati espande un set di dati di addestramento creando ulteriori esempi dalle immagini già disponibili. Ciò avviene applicando modifiche intenzionali quali la rotazione o il ribaltamento di un'immagine, la regolazione della luminosità o il ritaglio di una parte di essa. 

Ad esempio, immagina di avere solo una foto di un gatto. Ruotando l'immagine o modificandone la luminosità, puoi creare diverse nuove versioni da quella singola immagine. Ogni versione appare leggermente diversa, ma si tratta comunque della foto dello stesso gatto. Queste variazioni aiutano a insegnare al modello che un oggetto può apparire diverso pur rimanendo lo stesso.

Fig. 1. Uno sguardo all'aumento di un'immagine di un gatto (Fonte)

In che modo l'aumento dei dati migliora le prestazioni del modello

Durante l'addestramento del modello, l'aumento dei dati può essere integrato direttamente nella pipeline di addestramento. Invece di creare e archiviare manualmente nuove copie delle immagini, è possibile applicare trasformazioni casuali man mano che ogni immagine viene caricata. 

Ciò significa che il modello vede ogni volta una versione leggermente diversa dell'immagine, che appaia più luminosa, capovolta o parzialmente nascosta. Tecniche come la cancellazione casuale possono persino rimuovere piccole aree dell'immagine per simulare situazioni reali in cui un oggetto è bloccato o solo parzialmente visibile.

Fig. 2. Esempi di aumento basato sulla cancellazione casuale (Fonte)

Vedere molte versioni diverse della stessa immagine consente al modello di apprendere quali caratteristiche sono importanti, anziché basarsi su un unico esempio perfetto. Questa varietà rafforza la robustezza del modello di IA, consentendogli di funzionare in modo più affidabile in condizioni reali.

Tecniche comuni di aumento dei dati

Ecco alcune tecniche di aumento dei dati utilizzate per introdurre variazioni nelle immagini di addestramento:

  • Trasformazioni geometriche: queste tecniche modificano l'aspetto spaziale di un oggetto all'interno di un'immagine. Ruotando, capovolgendo, ridimensionando, ritagliando o spostando un'immagine, il modello è in grado di comprendere come un oggetto può essere visualizzato da diverse angolazioni o distanze.
  • Regolazioni di colore e illuminazione: l'illuminazione nel mondo reale è raramente uniforme. Le immagini possono risultare troppo luminose, troppo scure o leggermente sfalsate nei colori, a seconda dell'ambiente o della fotocamera utilizzata. La regolazione di luminosità, contrasto, tonalità e saturazione consente ai modelli di gestire questi cambiamenti visivi e di funzionare bene in scene diverse.
  • Variazioni della qualità dell'immagine: sfocature o rumore visivo possono rendere le immagini poco nitide. L'aggiunta di sfocature o rumore durante l'addestramento aiuta il modello ad apprendere come gestire sfocature dovute al movimento, immagini in condizioni di scarsa illuminazione o risultati di qualità inferiore della fotocamera, rendendolo meno sensibile alle immagini imperfette.
  • Aumentazioni basate sull'occlusione: negli ambienti reali, gli oggetti sono spesso parzialmente oscurati da altri oggetti. Questo fenomeno è noto come occlusione dell'immagine. Nascondere o mascherare piccole aree di un'immagine durante l'addestramento aiuta il modello ad apprendere a detect anche quando solo una parte di essi è visibile.
  • Aumentazioni multi-immagine: queste tecniche combinano parti di più immagini in un unico esempio di addestramento, il che può aumentare il numero di oggetti visibili e migliorare la capacità del modello di gestire scene complesse o affollate.
Fig. 3. Esempio di aumento multi-immagine (Fonte)

Aumento dei dati semplificato con ilPython Ultralytics

La gestione dei set di dati, la creazione di variazioni delle immagini e la scrittura del codice di trasformazione possono aggiungere ulteriori passaggi alla creazione di un'applicazione di visione artificiale. Il Python Ultralytics contribuisce a semplificare questo processo fornendo un'unica interfaccia per l'addestramento, l'esecuzione e l'implementazioneYOLO Ultralytics YOLO come YOLO26. Nell'ambito di questo sforzo volto a semplificare i flussi di lavoro di addestramento, il pacchetto include un'integrazione di dati ottimizzata per YOLO , Ultralytics.

Supporta inoltre utili integrazioni che eliminano la necessità di strumenti separati o codice personalizzato. Nello specifico, per l'aumento dei dati, il pacchetto si integra con Albumentations, una libreria di aumento delle immagini ampiamente utilizzata. Questa integrazione consente di applicare automaticamente gli aumenti durante l'addestramento, senza bisogno di script aggiuntivi o codice personalizzato.

Gestione delle annotazioni e dei set di dati aumentati

Un altro fattore che influisce sulla robustezza del modello è la qualità delle annotazioni. Etichette chiare e accurate, create e gestite con strumenti di annotazione come Roboflow, aiutano il modello a capire dove si trovano gli oggetti e che aspetto hanno.

Durante l'addestramento, vengono applicati in modo dinamico aumenti dei dati quali capovolgimenti, ritagli e rotazioni, e le annotazioni vengono automaticamente regolate per adattarsi a tali modifiche. Quando le etichette sono precise, questo processo funziona senza intoppi e fornisce al modello molti esempi realistici della stessa scena.

Se le annotazioni sono inaccurate o incoerenti, tali errori possono finire per ripetersi nelle immagini aumentate, rendendo meno efficace l'addestramento. Iniziare con annotazioni accurate impedisce la diffusione di questi errori e contribuisce a una maggiore robustezza del modello.

Miglioramento delle applicazioni di visione artificiale con l'aumento dei dati

Passiamo ora ad alcuni esempi di come l'aumento dei dati contribuisca alla robustezza dei modelli di IA nelle applicazioni reali.

Miglioramento della precisione del rilevamento degli oggetti in ambienti reali

Le immagini sintetiche vengono spesso utilizzate per addestrare i sistemi di rilevamento degli oggetti quando i dati reali sono limitati, sensibili o difficili da raccogliere. Consentono ai team di generare rapidamente esempi di prodotti, ambienti e angolazioni della telecamera senza dover catturare ogni scenario nella vita reale. 

Tuttavia, i set di dati sintetici possono talvolta apparire troppo puliti rispetto alle riprese reali, dove l'illuminazione cambia, gli oggetti si sovrappongono e le scene includono elementi di disturbo sullo sfondo. L'aumento dei dati aiuta a colmare questa lacuna introducendo variazioni realistiche, come diverse condizioni di illuminazione, rumore o posizionamento degli oggetti, in modo che il modello impari a gestire i tipi di condizioni che incontrerà una volta implementato.

Ad esempio, in uno studio recente, un YOLO11 è stato addestrato interamente su immagini sintetiche e l'aumento dei dati è stato aggiunto per introdurre ulteriori variazioni. Ciò ha contribuito all'apprendimento del modello nel riconoscere gli oggetti in modo più ampio. Ha funzionato bene quando è stato testato su immagini reali, anche se durante l'addestramento non aveva mai visto dati del mondo reale.

Rendere più affidabili le soluzioni di imaging medico

I set di dati di imaging medico sono spesso limitati e le scansioni stesse possono variare in base al tipo di apparecchiatura, alle impostazioni di imaging o all'ambiente clinico. Le differenze nell'anatomia dei pazienti, negli angoli, nell'illuminazione o nel rumore visivo possono rendere difficile per i modelli di visione artificiale apprendere modelli che si generalizzino bene tra pazienti e ospedali.

L'aumento dei dati aiuta ad affrontare questo problema creando più varianti della stessa scansione durante l'addestramento, ad esempio aggiungendo rumore, spostando leggermente l'immagine o applicando piccole distorsioni. Queste modifiche rendono i dati di addestramento più rappresentativi delle condizioni cliniche reali.

Ad esempio, in uno studio di imaging pediatrico, i ricercatori hanno utilizzato YOLO11 la segmentazione anatomica e lo hanno addestrato su dati medici aumentati. Hanno introdotto variazioni come rumore aggiunto, lievi spostamenti di posizione e piccole distorsioni per rendere le immagini più realistiche.

Fig. 4. Immagini mediche pediatriche originali e potenziate (Fonte)

Imparando da queste variazioni, il modello si è concentrato sulle caratteristiche anatomiche significative piuttosto che sulle differenze a livello superficiale. Ciò ha reso i risultati della segmentazione più stabili tra le diverse scansioni e i diversi casi dei pazienti.

Punti chiave

La raccolta di dati diversificati è difficile, ma l'aumento dei dati consente ai modelli di apprendere da una gamma più ampia di condizioni visive. Ciò si traduce in una maggiore robustezza del modello quando si tratta di occlusioni, cambiamenti di illuminazione e scene affollate. Nel complesso, ciò li aiuta a funzionare in modo più affidabile al di fuori degli ambienti di formazione controllati. 

Unitevi alla nostra comunità ed esplorate le ultime novità in materia di Vision AI sul nostro repository GitHub. Visitate le nostre pagine dedicate alle soluzioni per scoprire come applicazioni come l'IA nel settore manifatturiero e la visione computerizzata nel settore sanitario stanno portando avanti il progresso, e controllate le nostre opzioni di licenza per alimentare la vostra prossima soluzione di IA.

Costruiamo insieme il futuro
dell'AI!

Inizia il tuo viaggio con il futuro del machine learning

Inizia gratis