Un modello di apprendimento automatico di successo inizia con dati di addestramento di alta qualità. Ma una delle domande più comuni che i team si pongono all'inizio di un progetto di intelligenza artificiale è: quanti dati di addestramento sono sufficienti?
La risposta onesta è che non esiste un numero fisso adatto a ogni progetto. La quantità di dati necessaria dipende dal compito, dalla complessità del modello, dal numero di classi, dalla qualità dei dati, dall'accuratezza delle etichette e dallo standard prestazionale che si desidera raggiungere.
In pratica, il modo migliore per stimare i requisiti dei dati di training è iniziare con un campione rappresentativo, eseguire il training su sottoinsiemi progressivamente più grandi e misurare quando le prestazioni del modello iniziano a stabilizzarsi. Questo aiuta i team a prendere decisioni informate su costi, tempi, impegno di annotazione e risultati attesi.
In questo blog analizziamo i principali fattori che influiscono sul volume dei dati di formazione, spieghiamo come stimare i requisiti nella pratica e mostriamo cosa fare quando servono più dati senza ritardare la roadmap dell'IA.
Perché i dati di addestramento sono importanti
I dati di addestramento sono il fondamento di ogni sistema di apprendimento automatico. Indipendentemente da quanto sia avanzato l'algoritmo, può apprendere solo i pattern presenti nei dati utilizzati per addestrarlo. Se i dati sono incompleti, distorti, rumorosi o troppo limitati, il modello avrà difficoltà a generalizzare nel mondo reale.
Dati di formazione approfonditi aiutano i team a:
- migliorare la precisione del modello
- ridurre pregiudizi e punti ciechi
- stimare i costi e la fattibilità del progetto in modo più accurato
- ridurre le rilavorazioni durante l'iterazione del modello
- creare pipeline di convalida e test più affidabili
Ecco perché la raccolta, la pulizia, l'etichettatura e la convalida dei dati spesso assorbono la maggior parte degli sforzi nei progetti di intelligenza artificiale. Se i dati sono deboli, anche le previsioni saranno deboli.
Non esiste un numero universale, ma esiste un modo pratico per stimarlo
Molti articoli cercano di rispondere a questa domanda con un singolo numero, ma raramente è utile.
Un modello per una semplice classificazione binaria può funzionare bene con un set di dati relativamente piccolo, mentre un flusso di lavoro di messa a punto di un modello linguistico di grandi dimensioni o un sistema di visione artificiale per casi limite potrebbero richiedere un numero significativamente maggiore di esempi. La domanda migliore non è "qual è il numero magico?", ma:
Qual è la quantità minima di dati di formazione rappresentativi e di alta qualità necessari per raggiungere le prestazioni target per questo caso d'uso?
Un modo pratico per rispondere a questa domanda è utilizzare le curve di apprendimento: addestrare il modello su quantità crescenti di dati e osservare quanto le prestazioni migliorino a ogni passaggio. Quando il miglioramento inizia a stabilizzarsi, si ha un segnale molto più chiaro se la raccolta di più dati valga l'investimento. Questo approccio è comunemente raccomandato nei flussi di lavoro di apprendimento automatico (ML) pratici.
7 fattori che determinano la quantità di dati di allenamento necessari
1. Tipo di modello: ML classico vs Deep Learning
Il tipo di modello ha un impatto significativo sui requisiti dei dati. I modelli di apprendimento automatico classici come la regressione logistica, gli alberi decisionali o il gradient boosting possono spesso funzionare bene su set di dati strutturati più piccoli, soprattutto quando le feature sono ben progettate.
I modelli di deep learning generalmente richiedono più dati perché apprendono automaticamente le caratteristiche e contengono molti più parametri. Per le attività relative a immagini, audio e linguaggio, i modelli deep traggono solitamente notevoli vantaggi da un volume di dati maggiore e da una maggiore diversità.
2. Apprendimento supervisionato vs. non supervisionato
L'apprendimento supervisionato richiede dati etichettati, la cui raccolta è spesso più difficile e costosa. Se il modello richiede l'intervento umano per annotare immagini, trascrivere audio, taggare entità o classificare documenti, il requisito dei dati deve tenere conto sia della quantità che dello sforzo di etichettatura.
L'apprendimento non supervisionato non richiede dati etichettati, ma trae comunque vantaggio da dataset ampi e rappresentativi. Anche senza etichette, il modello necessita di una copertura sufficiente per rilevare pattern e strutture significativi.
3. Complessità del compito e numero di classi
Un semplice compito di classificazione binaria è molto diverso da un problema di imaging medico multiclasse o da un sistema di riconoscimento vocale multilingue.
Con l'aumentare della complessità delle attività, solitamente aumentano anche i requisiti dei dati di addestramento, perché il modello deve apprendere:
- più classi
- distinzioni più sottili tra le categorie
- altri casi limite
- maggiore variabilità contestuale
Ad esempio, distinguere "gatto" da "cane" è molto più semplice che identificare decine di difetti di prodotto visivamente simili in base alle condizioni di illuminazione, alle angolazioni della telecamera e agli sfondi.
4. Qualità dei dati e accuratezza delle etichette
Non sempre avere più dati è meglio se la qualità è scarsa.
Un set di dati più piccolo con etichette accurate, rappresentazione bilanciata e formattazione coerente può avere prestazioni migliori di un set di dati più grande ma rumoroso. Etichette di bassa qualità, record duplicati, definizioni di classe deboli, metadati mancanti e linee guida di annotazione incoerenti riducono le prestazioni del modello.
Prima di raccogliere ulteriori dati, i team dovrebbero chiedersi:
- Le etichette sono coerenti?
- Stiamo coprendo tutti gli scenari utente importanti?
- I dati sono rappresentativi delle condizioni di produzione?
- I set di addestramento, convalida e test sono adeguatamente separati?
Per molti progetti, il miglioramento della qualità dei dati produce guadagni più rapidi rispetto al semplice aumento del volume dei dati.
5. Diversità, copertura ed equilibrio di classe
Un modello dovrebbe imparare dalla variabilità del mondo reale che dovrà affrontare dopo l'implementazione. Ciò significa che il set di dati dovrebbe riflettere diversi scenari, gruppi di utenti, tipi di dispositivi, accenti, ambienti, formati di documenti, condizioni delle immagini e casi limite.
Se una classe o un segmento è sottorappresentato, il modello potrebbe apparire complessivamente accurato, ma fallire miseramente in sottogruppi critici. Ecco perché la diversità e l'equilibrio di classe sono importanti tanto quanto le dimensioni grezze.
In molti casi, la domanda non è "Abbiamo abbastanza dati?", ma "Abbiamo abbastanza dati giusti?".
6. Trasferimento dell'apprendimento e modelli pre-addestrati
Se si parte da un modello pre-addestrato, potrebbero essere necessari molti meno dati specifici per le attività rispetto a quando si esegue l'addestramento da zero.
Ciò è particolarmente vero per:
- classificazione delle immagini mediante backbone visivi
- Attività NLP che utilizzano modelli basati sui trasformatori
- modelli di discorso adattati a un nuovo accento o dominio
- flussi di lavoro di adattamento del dominio
Il transfer learning consente ai team di riutilizzare le conoscenze acquisite su grandi set di dati esistenti, riducendo drasticamente l'onere delle annotazioni. L'articolo originale ne aveva già parlato ampiamente; dovrebbe rimanere, ma con esempi più chiari.
7. Strategia di convalida e prestazioni target
La quantità di dati necessari è determinata anche dalla qualità del modello.
Un prototipo può funzionare con quantità di dati modeste. Un modello di produzione in ambito sanitario, finanziario, assicurativo, automobilistico o in ambienti con requisiti di conformità elevati richiederà una copertura più ampia, etichette più chiare, una migliore convalida e prestazioni più affidabili nei casi limite. Quanto più rigoroso è il tasso di errore accettabile, tanto più robusto deve essere il set di dati.
Come stimare i requisiti dei dati di formazione nella pratica
Invece di tirare a indovinare, usate un processo di stima strutturato.
Fase 1: iniziare con un set di dati pilota rappresentativo
Raccogli un campione più piccolo ma rappresentativo dello spazio problematico. Includi classi, formati, tipologie di utenti e varianti reali importanti.
Passaggio 2: suddividere correttamente i dati
Creare set separati per l'addestramento, la convalida e i test. Assicurarsi che il set di test rifletta le condizioni di produzione e non venga mai utilizzato durante l'addestramento.
Fase 3: Allenamento su campioni progressivamente più grandi
Addestrare il modello utilizzando porzioni crescenti del set di dati, ad esempio 10%, 20%, 40%, 60%, 80% e 100%.
Fase 4: tracciare una curva di apprendimento
Tieni traccia delle metriche delle prestazioni, quali accuratezza, punteggio F1, richiamo, precisione o misure di qualità specifiche per attività man mano che aumentano le dimensioni del set di dati.
Fase 5: Cerca l'altopiano
Se le prestazioni del modello migliorano notevolmente con più dati, probabilmente ne servono di più. Se i miglioramenti si appiattiscono, il collo di bottiglia potrebbe non essere più il volume, ma la qualità delle etichette, la progettazione delle feature, la scelta del modello o uno squilibrio tra classi.
Fase 6: Esaminare le prestazioni a livello di segmento
Verificare le prestazioni del modello non solo nel complesso, ma anche nelle classi più importanti e nei casi limite. Un modello potrebbe raggiungere un plateau complessivo, pur continuando a presentare prestazioni inferiori alle aspettative in segmenti minoritari. Questo metodo fornisce alle parti interessate una stima più realistica della quantità di dati aggiuntivi che vale la pena raccogliere.
Come sapere quando hai abbastanza dati di allenamento
Probabilmente hai dati sufficienti quando:
- le prestazioni del modello migliorano solo marginalmente man mano che vengono aggiunti più dati
- i risultati di convalida sono stabili su più esecuzioni o pieghe
- le classi importanti hanno prestazioni accettabili, non solo la classe maggioritaria
- le prestazioni si mantengono su un set di test pulito e intatto
- gli errori rimanenti sono causati più dal rumore o dall'ambiguità dell'etichetta che dalla mancanza di esempi
Probabilmente avrai bisogno di più dati quando:
- la curva di apprendimento è ancora in salita
- le classi rare hanno prestazioni scadenti
- il modello fallisce nelle comuni variazioni del mondo reale
- i risultati fluttuano notevolmente tra le esecuzioni
- le prestazioni dei test diminuiscono drasticamente rispetto alle prestazioni di convalida
Come ridurre i requisiti dei dati di formazione
A volte la sfida non è la progettazione del modello, ma la scarsità di dati, il budget o il time-to-market. In questi casi, i team possono ridurre la dipendenza da enormi volumi di dati con le giuste strategie.
Aumento dei dati
L'aumento dei dati crea nuovi esempi di training a partire da dati esistenti. Nella visione artificiale, questo può includere il ritaglio, la rotazione, il capovolgimento o la regolazione della luminosità. Nell'elaborazione del linguaggio naturale e nella comunicazione vocale, l'aumento deve essere più accurato, ma le trasformazioni controllate possono comunque essere d'aiuto.
Utilizzata correttamente, l'aumento migliora la robustezza e aiuta i modelli a generalizzare meglio. Utilizzata in modo improprio, può introdurre rumore o esempi irrealistici.
Trasferimento di apprendimento
Il transfer learning consente di adattare un modello esistente a un nuovo compito anziché doverlo addestrare da zero. Questo è spesso uno dei metodi più efficaci per ridurre i requisiti dei dati di addestramento.
Modelli pre-addestrati
Modelli pre-addestrati, come i modelli NLP simili a BERT o le strutture portanti della visione consolidate, possono fornire solidi punti di partenza. Anziché imparare tutto da zero, il modello parte da utili conoscenze pregresse.
Apprendimento attivo
Se l'etichettatura è costosa, l'apprendimento attivo può aiutare a dare priorità agli esempi più informativi. Questo migliora l'efficienza dell'annotazione e può ridurre il numero di etichette necessarie per raggiungere prestazioni utili.
Dati sintetici
I dati sintetici possono essere utili quando i dati del mondo reale sono scarsi, sensibili o difficili da raccogliere, soprattutto in settori come la sanità, la finanza, i sistemi autonomi e la simulazione di casi limite. Ma dovrebbero integrare, non sostituire ciecamente, i dati reali e rappresentativi.
Esempi concreti di progetti di apprendimento automatico con set di dati minimi
Sebbene possa sembrare impossibile che alcuni ambiziosi progetti di apprendimento automatico possano essere eseguiti con materie prime minime, alcuni casi sono sorprendentemente veri. Preparatevi a rimanere stupiti.
| Rapporto Kaggle | Settore Sanitario | Oncologia clinica |
| Un sondaggio di Kaggle rivela che oltre il 70% dei progetti di apprendimento automatico sono stati completati con meno di 10,000 campioni. | Con solo 500 immagini, un team del MIT ha addestrato un modello per rilevare la neuropatia diabetica nelle immagini mediche ottenute tramite scansioni oculari. | Continuando con l'esempio dell'assistenza sanitaria, un team della Stanford University è riuscito a sviluppare un modello per rilevare il cancro della pelle con solo 1000 immagini. |
Fare ipotesi colte

Non esiste un numero magico per quanto riguarda la quantità minima di dati richiesti, ma ci sono alcune regole pratiche che puoi usare per arrivare a un numero razionale.
La regola del 10
Come regola del pollice, per sviluppare un modello di intelligenza artificiale efficiente, il numero di set di dati di addestramento richiesti dovrebbe essere dieci volte superiore a ciascun parametro del modello, chiamato anche gradi di libertà. Le regole "10" volte mirano a limitare la variabilità e aumentare la diversità dei dati. Pertanto, questa regola pratica può aiutarti a iniziare il tuo progetto dandoti un'idea di base sulla quantità richiesta di set di dati.
Deep Learning
I metodi di deep learning aiutano a sviluppare modelli di alta qualità se vengono forniti più dati al sistema. È generalmente accettato che avere 5000 immagini etichettate per categoria dovrebbe essere sufficiente per creare un algoritmo di deep learning che possa funzionare alla pari con gli esseri umani. Per sviluppare modelli eccezionalmente complessi, sono necessari almeno 10 milioni di articoli etichettati.
Visione computerizzata
Se si utilizza il deep learning per la classificazione delle immagini, è opinione comune che un set di dati di 1000 immagini etichettate per ciascuna classe sia un numero equo.
Curve di apprendimento
Le curve di apprendimento vengono utilizzate per dimostrare le prestazioni dell'algoritmo di apprendimento automatico rispetto alla quantità di dati. Avendo l'abilità del modello sull'asse Y e il set di dati di addestramento sull'asse X, è possibile capire come la dimensione dei dati influisca sull'esito del progetto.
Il costo di avere troppi pochi dati
Quando i team si allenano su set di dati limitati, ristretti o distorti, il modello potrebbe sembrare promettente in fase di sviluppo, ma fallire in fase di produzione.
Una quantità di dati insufficiente può portare a:
- overfitting
- generalizzazione debole
- previsioni instabili
- scarsi risultati nelle classi minoritarie
- rischio di distorsione più elevato
- più tempo di iterazione in seguito
In altre parole, i limiti dei dati di addestramento spesso diventano i limiti del prodotto.
Cosa fare se hai bisogno di più set di dati

Quando si individua una lacuna nei dati, la soluzione non è sempre "raccogliere tutto". L'approccio più intelligente è quello di espandere strategicamente il set di dati.
1. Utilizzare con attenzione i set di dati aperti
I dataset aperti possono essere utili per la prototipazione o il benchmarking, ma non sono sempre adatti all'uso in produzione. I team dovrebbero verificarne la provenienza, il consenso, la qualità, la pertinenza e la copertura prima di affidarsi a essi.
2. Raccogli dati personalizzati per il tuo caso d'uso
Se l'ambiente di destinazione è altamente specifico, la raccolta di dati personalizzata è spesso l'opzione migliore. Questo è particolarmente vero per flussi di lavoro che richiedono un dominio specifico, come l'intelligenza artificiale in ambito sanitario, l'intelligenza artificiale conversazionale, i casi limite di visione artificiale e i sistemi multilingue.
3. Migliorare i dati esistenti tramite annotazione
Molti team dispongono già di dati grezzi, ma privi di struttura. Annotazioni, rietichettature, pulizia della tassonomia e revisione della qualità possono generare valore più rapidamente rispetto alla raccolta di nuovi set di dati.
4. Riequilibrare le classi sottorappresentate
Se le prestazioni sono scarse in categorie specifiche, è opportuno concentrare la raccolta e l'etichettatura su quelle lacune ad alto impatto anziché espandere uniformemente l'intero set di dati.
5. Aggiungere dati sintetici o aumentati ove appropriato
Quando i dati reali sono limitati o sensibili, i dati sintetici e aumentati possono contribuire a migliorare la copertura, ma è necessario convalidarli attentamente rispetto alle distribuzioni del mondo reale.
6. Collaborare con un partner di dati specializzato
Per i team che sviluppano intelligenza artificiale di produzione su larga scala, collaborare con un fornitore in grado di raccogliere, concedere in licenza, annotare, convalidare e gestire dati di formazione di alta qualità può ridurre significativamente i rischi del progetto e accelerare l'implementazione.
Considerazioni finali
Non esiste un numero magico per i dati di addestramento nel machine learning. La quantità corretta dipende dal caso d'uso, dal tipo di modello, dalla qualità dei dati, dalla diversità delle classi, dalla strategia di convalida e dalle prestazioni target.
Il modo più efficace per stimare le esigenze di dati di formazione è iniziare con un campione rappresentativo, misurare le prestazioni utilizzando curve di apprendimento ed espandere il set di dati in modo strategico in base ai punti in cui il modello non riesce ancora a funzionare.
Per alcuni progetti, un set di dati modesto ma di alta qualità può essere sufficiente. Per altri, soprattutto in contesti ad alto rischio o altamente variabili, il successo dipende da set di dati ampi, attentamente selezionati e ben annotati.
Ciò che conta di più non è semplicemente avere più dati, ma avere la dati giusti.
Hai in mente un grande progetto ma stai aspettando set di dati su misura per addestrare i tuoi modelli o stai lottando per ottenere il risultato giusto dal tuo progetto? Offriamo set di dati di formazione estesi per una varietà di esigenze di progetto. Sfrutta il potenziale di Saip parlando con uno dei ns data scientist oggi e capire come abbiamo fornito set di dati di qualità ad alte prestazioni per i clienti in passato.
Domande Frequenti
Quanti dati di addestramento sono sufficienti per l'apprendimento automatico?
Non esiste un numero fisso. La quantità corretta dipende dal compito, dalla complessità del modello, dalla qualità dell'etichetta, dal bilanciamento delle classi e dall'accuratezza del target. Il modo più affidabile per stimarla è addestrare su sottoinsiemi crescenti e misurare i miglioramenti delle prestazioni.
Come faccio a sapere se ho bisogno di più dati di allenamento?
Probabilmente avrai bisogno di più dati di addestramento se le prestazioni del modello continuano a migliorare con l'aumento delle dimensioni dei dati, se le prestazioni di classi rare sono scarse o se i risultati sono instabili tra le esecuzioni.
L'apprendimento tramite trasferimento può ridurre i requisiti dei dati di formazione?
Sì. L'apprendimento tramite trasferimento consente ai modelli di riutilizzare le conoscenze provenienti da sistemi precedentemente addestrati, il che può ridurre significativamente la quantità di dati etichettati specifici per attività necessari.
Per l'apprendimento automatico è sempre meglio avere più dati?
Non necessariamente. Un numero maggiore di dati di bassa qualità o mal etichettati può compromettere le prestazioni. In molti casi, migliorare la qualità, l'equilibrio e la rappresentatività dei dati è più importante del semplice aumento del volume.
Di quanti dati ho bisogno per il deep learning?
I modelli di deep learning richiedono in genere più dati rispetto ai modelli di machine learning classici, soprattutto per attività di elaborazione di immagini, parlato e linguaggio. Tuttavia, i modelli pre-addestrati e il transfer learning possono ridurre questo requisito.