Apprendimento da pochi esempi

Schema di una rete neurale artificiale a più livelli con proprietà feedforward.

L'apprendimento da pochi esempi (in inglese few-shot learning, FSL) è una forma di apprendimento supervisionato che, a partire da un numero estremamente ridotto di esempi etichettati, ha come obiettivo quello di imparare modelli atti a risolvere problemi diversi, come classificare istanze rispetto a nuovi concetti, tipicamente generalizzando modelli esistenti.

A differenza dei modelli tradizionali come quelli appresi tramite deep learning, che richiedono centinaia o migliaia di istanze per classe al fine di evitare il fenomeno del sovradattamento, il few-shot learning si ispira alla capacità cognitiva umana di generalizzare rapidamente nuovi concetti sfruttando conoscenza pregressa pur potendo disporre di pochi esempi etichettati rispetto alle nuove classi.

Formulazione del problema

Nel paradigma standard del few-shot learning, il problema viene formulato attraverso l'impostazione detta classificazione -way -shot:

Un tipico problema 5-way 1-shot richiede dunque di classificare un'istanza incognita scegliendo tra 5 classi possibili, avendo a disposizione un solo esempio etichettato per ciascuna classe (generalmente si va da 1 a 5 esempi).

Struttura del Dataset: insiemi di supporto e di query

L'addestramento e la valutazione avvengono suddividendo i dati in due insiemi principali:

  1. Support set (): insieme limitato di dati etichettati forniti per l'adattamento immediato al nuovo compito che contiene esattamente campioni:
  2. Query set (): insieme di istanze non etichettate da classificare sulla base delle informazioni contenute in :

Metodologie

I principali approcci al few-shot learning si dividono in tre famiglie:

Approcci basati su metriche

Tali metodi apprendono uno spazio di rappresentazione (embedding) in cui campioni appartenenti alla stessa classe sono vicini secondo una determinata misura di distanza (ad es. la distanza euclidea o la similarità del coseno).

Approcci basati su ottimizzazione

Questi metodi, noti anche come approcci al Meta-learning ("apprendere ad apprendere"), mirano ad addestrare l'inizializzazione dei parametri della rete affinché poi bastino pochi passi di discesa del gradiente per adattare il modello a un nuovo problema di apprendimento senza incorrere nel sovradattamento.

In-context learning nei modelli linguistici

Nei moderni LLM (come ad es. GPT-3 e LLaMA), il few-shot learning viene realizzato in modo puramente "in-context", ovvero senza aggiornare i pesi del modello via retropropagazione. Il modello riceve all'interno del prompt esempi dimostrativi prima dell'input finale.

Esempio: prompting few-shot nei modelli linguistici

Nel contesto dell'elaborazione del linguaggio naturale, un prompt few-shot per la classificazione del sentiment si struttura nel seguente modo:

Classifica il sentiment delle seguenti recensioni in [Positivo, Negativo].

Testo: "Il cibo era freddo e il servizio lentissimo."
Sentiment: Negativo

Testo: "Un'esperienza fantastica, tornerò sicuramente!"
Sentiment: Positivo

Testo: "L'ambiente è accogliente e il personale è molto gentile."
Sentiment:

In questo scenario (2-shot learning), il modello sfrutta gli esempi forniti nella finestra di contesto per dedurre il formato dell'output e il criterio di classificazione senza che sia necessario alcun raffinamento incrementale del modello.

Ambiti di applicazione

Note

  1. ↑ Wang, Y., Yao, Q., Kwok, J. T., & Ni, L. M., Generalizing from a Few Examples: A Survey on Few-Shot Learning, in ACM Computing Surveys, vol. 53, n. 3, 2020, pp. 1–34, DOI:10.1145/3386252.
  2. ↑ Lake, B. M., Salakhutdinov, R., & Tenenbaum, J. B., Human-level concept learning through probabilistic program induction, in Science, vol. 350, n. 6266, 2015, pp. 1332–1338, DOI:10.1126/science.aab3050.
  3. ↑ Koch, G., Zemel, R., & Salakhutdinov, R., Siamese Neural Networks for One-shot Image Recognition (PDF), in ICML Deep Learning Workshop, 2015.
  4. ↑ Vinyals, O., Blundell, C., Lillicrap, T., Wierstra, D., &ier, D., Matching Networks for One Shot Learning, in Advances in Neural Information Processing Systems (NeurIPS 29), 2016, pp. 3630–3638, DOI:10.5555/3157096.3157504.
  5. ↑ Snell, J., Swersky, K., & Zemel, R., Prototypical Networks for Few-shot Learning, in Advances in Neural Information Processing Systems (NeurIPS 30), 2017, pp. 4077–4087, DOI:10.5555/3294996.3295163.
  6. ↑ Finn, C., Abbeel, P., & Levine, S., Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks, in Proceedings of the 34th International libro on Machine Learning (ICML), vol. 70, 2017, pp. 1126–1135, DOI:10.5555/3305890.3305981.
  7. ↑ Brown, T., et al., Language Models are Few-Shot Learners, in Advances in Neural Information Processing Systems (NeurIPS 33), vol. 33, 2020, pp. 1877–1901, DOI:10.5555/3495724.3495883.

Voci correlate

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica