Il Few-Shot Learning (FSL) è un sottocampo del Machine Learning (ML) incentrato sulla progettazione di modelli in grado di generalizzare a partire da un numero molto ridotto di esempi di addestramento per classe, spesso solo una manciata. Questo contrasta nettamente con i tradizionali approcci di Deep Learning (DL) che in genere richiedono grandi quantità di dati di addestramento etichettati. L'idea di base si ispira all'apprendimento umano, dove spesso siamo in grado di riconoscere nuovi concetti dopo aver visto solo una o due istanze. L'FSL è particolarmente importante nei settori in cui la raccolta dei dati è costosa, lunga o intrinsecamente limitata, rendendo l'Intelligenza Artificiale (AI) più adattabile ed efficiente dal punto di vista dei dati.
Come funziona l'apprendimento a pochi colpi
Le tecniche di apprendimento a pochi colpi mirano a sfruttare le conoscenze pregresse per apprendere rapidamente nuovi concetti da dati limitati. Le strategie più comuni includono:
- Meta-apprendimento: Spesso descritto come "imparare a imparare", il meta-apprendimento prevede l'addestramento di un modello su una serie di compiti di apprendimento durante una fase di meta-formazione. In questo modo il modello apprende un algoritmo di apprendimento efficiente o parametri iniziali in grado di adattarsi rapidamente a un nuovo compito con pochi esempi. A questo scopo sono stati sviluppati diversi algoritmi di meta-apprendimento.
- Apprendimento per trasferimento: L'FSL spesso utilizza l'apprendimento per trasferimento partendo da un modello pre-addestrato su un grande set di dati (come ImageNet o COCO). Questo modello pre-addestrato, che comprende già le caratteristiche generali del grande set di dati, viene poi messo a punto utilizzando il piccolo numero di esempi disponibili per il compito specifico. Questo approccio sfrutta la conoscenza generale incorporata nei pesi del modello.
- Aumento dei dati: Generare variazioni dei pochi campioni di formazione disponibili utilizzando tecniche di incremento dei dati può aiutare a espandere il set di dati limitato, anche se la sua efficacia può variare in regimi di dati estremamente ridotti. Potrebbero essere necessarie strategie di incremento avanzate.
Questi metodi consentono alle reti neurali (NN) di ottenere prestazioni ragionevoli anche con dati minimi specifici del compito.
Apprendimento con pochi colpi e concetti correlati
È importante distinguere la FSL da altri paradigmi di apprendimento simili:
- Apprendimento Zero-Shot (ZSL): Lo ZSL mira a classificare istanze di classi che non sono mai state viste durante l'addestramento. Questo obiettivo viene solitamente raggiunto utilizzando informazioni ausiliarie, come descrizioni testuali o attributi delle classi non viste, per colmare il divario tra i dati visti e quelli non visti. La FSL, invece, richiede almeno alcuni esempi etichettati per ogni nuova classe. Una panoramica su ZSL, FSL e apprendimento per trasferimento può fornire un ulteriore contesto.
- Apprendimento One-Shot (OSL): L'OSL è una variante estrema dell'FSL in cui il modello deve imparare a riconoscere una nuova classe da un solo esempio etichettato. Condivide gli stessi obiettivi dell'FSL ma opera con vincoli di dati ancora più stringenti.
- Apprendimento per trasferimento: Sebbene la FSL utilizzi spesso l'apprendimento per trasferimento come tecnica, i termini non sono intercambiabili. L'apprendimento per trasferimento è un concetto più ampio che prevede lo sfruttamento delle conoscenze di un compito di partenza per migliorare le prestazioni di un compito di arrivo. L'FSL affronta in modo specifico la sfida dell'apprendimento efficace quando il compito di destinazione ha dati etichettati estremamente limitati.
Applicazioni dell'apprendimento a pochi colpi
L'FSL consente applicazioni di IA in scenari in cui non è possibile ottenere grandi serie di dati:
- Diagnosi delle malattie rare: nell'analisi delle immagini mediche, ottenere numerosi esempi di malattie rare per addestrare i modelli diagnostici è una sfida. L'FSL consente ai modelli di imparare a identificare tali condizioni (ad esempio, tipi specifici di tumori nelle scansioni) da un piccolo insieme di immagini del paziente, accelerando potenzialmente la diagnosi e la ricerca. Si tratta di un'area chiave per l'IA nel settore sanitario, con ricerche pubblicate su riviste come Radiology: Artificial Intelligence.
- Rilevamento oggetti personalizzato: Considera di aver bisogno di un modello di Object Detection per identificare un prodotto di nuova concezione su una linea di produzione o una specie rara in un filmato di conservazione della fauna selvatica. Acquisire migliaia di immagini etichettate potrebbe non essere fattibile. FSL permette di addestrare modelli personalizzati, ad esempio adattando un modello di Ultralytics YOLO utilizzando piattaforme come Ultralytics HUB, con solo una manciata di esempi per ogni nuova classe di oggetti. Questo accelera l'implementazione di attività specializzate di Computer Vision (CV).
- Traduzione linguistica con poche risorse: L'addestramento di modelli di traduzione per lingue con testi digitali limitati richiede tecniche di FSL nell'ambito dell'elaborazione del linguaggio naturale (NLP).
- Robotica: Consentire ai robot(robotica) di imparare rapidamente a riconoscere e interagire con nuovi oggetti in ambienti sconosciuti sulla base di un'esposizione minima è un'altra applicazione, esplorata nelle ricerche presentate a conferenze come ICRA.
Sfide e direzioni future
Nonostante le sue promesse, l'FSL deve affrontare delle sfide, tra cui la sensibilità del modello ai pochi esempi forniti e la garanzia di una generalizzazione robusta al di là di tali esempi. Superare l 'overfitting con dati così limitati è un ostacolo significativo. La ricerca in corso si concentra sullo sviluppo di algoritmi di meta-apprendimento più robusti, su un migliore sfruttamento dell'apprendimento non supervisionato o dell'apprendimento auto-supervisionato per il pre-training e sulla creazione di quadri teorici per comprendere la generalizzazione in regimi di dati ridotti. Organizzazioni come Google AI e Meta AI contribuiscono attivamente al progresso delle tecniche di FSL, con l'obiettivo di rendere i sistemi di intelligenza artificiale più flessibili e meno affamati di dati.