Il meta learning, definito anche "apprendere ad apprendere", è una sottocategoria del machine learning che addestra i modelli di intelligenza artificiale (AI) a comprendere e ad adattarsi autonomamente alle nuove attività. L'obiettivo principale del meta learning è quello di fornire alle macchine le competenze necessarie per apprendere ad apprendere.
A differenza dell'apprendimento supervisionato convenzionale, in cui i modelli vengono addestrati a risolvere un compito specifico utilizzando un set di dati di addestramento definito, il processo di meta learning prevede una serie di attività, ognuna con il proprio set di dati associato. Grazie a questi molteplici eventi di apprendimento, i modelli acquisiscono la capacità di generalizzare tra le attività, il che consente loro di adattarsi rapidamente a nuovi scenari anche con pochi dati.
Gli algoritmi di meta learning sono addestrati sulle previsioni e sui metadati di altri algoritmi di machine learning. Gli algoritmi di meta learning generano quindi previsioni proprie e informazioni che possono essere utilizzate per migliorare le prestazioni e i risultati di altri algoritmi di machine learning.
Il meta learning prevede due fasi chiave: meta training e meta testing. Per entrambe le fasi, un modello di apprendimento di base regola e aggiorna i propri parametri man mano che apprende. Il set di dati utilizzato è suddiviso in un set di supporto per il meta training e un set di test per il meta testing.
Nella fase di meta-addestramento, il modello di apprendimento di base viene fornito con un'ampia gamma di attività. L'obiettivo del modello è scoprire modelli comuni tra queste attività e acquisire un'ampia conoscenza che può essere applicata nella risoluzione di nuove attività.
Durante la fase di meta testing, le prestazioni del modello base vengono valutate assegnandogli compiti che non ha incontrato durante l'addestramento. L'efficacia del modello è misurata in base alla capacità e alla velocità con cui si adatta a questi nuovi compiti utilizzando le conoscenze acquisite e la comprensione generalizzata.
Esistono tre approcci tipici al meta-apprendimento. Ecco come funziona ogni approccio e le loro diverse tipologie:
Il meta learning basato su metriche è incentrato sull'apprendimento di una funzione che calcola una metrica di distanza, ovvero una misura della similarità tra due punti dati. Questo approccio è simile all'algoritmo k-nearest neighbors (KNN), che utilizza la prossimità per effettuare classificazioni o previsioni.
Una rete neurale convoluzionale siamese è composta da reti neurali convoluzionali gemelle identiche che condividono parametri e pesi. Gli aggiornamenti dei parametri vengono rispecchiati nelle due reti. Entrambe le reti sono unite da una funzione di perdita che calcola una metrica di distanza (di solito somiglianza a coppie).1
Il set di dati di addestramento è composto da coppie di campioni corrispondenti e non corrispondenti. Le reti neurali siamesi convoluzionali apprendono quindi a calcolare la similarità tra coppie, massimizzando la distanza euclidea tra coppie non corrispondenti o dissimili e minimizzando la distanza tra coppie corrispondenti o simili.1
Le reti di matching imparano a prevedere la classificazione misurando una metrica di distanza nota come similarità del coseno tra due campioni.2
Una rete di relazioni apprende una metrica di distanza non lineare profonda per confrontare gli elementi. La rete classifica gli elementi calcolando i punteggi di relazione, che rappresentano la similarità tra gli elementi.3
Le reti prototipiche calcolano la media di tutti i campioni di una classe per creare un prototipo per quella classe. La rete apprende quindi uno spazio metrico, in cui le attività di classificazione vengono eseguite calcolando la distanza euclidea al quadrato tra un particolare punto dati e la rappresentazione prototipale di una classe.4
Il meta learning basato su modelli implica l'apprendimento dei parametri di un modello, il che può facilitare l'apprendimento rapido da dati sparsi.
Una memory-augmented neural network (MANN) è dotata di un modulo di memoria esterno per consentire un'archiviazione stabile e una rapida codifica e recupero delle informazioni.5
Nel meta learning, i MANN possono essere addestrati ad apprendere una tecnica generale per i tipi di rappresentazioni da memorizzare nella memoria esterna e un metodo per utilizzare tali rappresentazioni per fare previsioni. I MANN hanno dimostrato di avere buone prestazioni nelle attività di regressione e classificazione.5
MetaNet (abbreviazione di Meta Networks) è un modello di meta learning che può essere applicato nell'apprendimento per imitazione e nell'apprendimento per rinforzo. Come le MANN, anche le Meta Network dispongono di una memoria esterna.6
MetaNet è composto da un base learner e un meta learner che lavorano a livelli spaziali separati. Il meta learner acquisisce conoscenze generali relative a diversi compiti all'interno di un meta spazio. Il base learner prende un compito di input e invia meta informazioni riguardanti l'attuale spazio di compiti al meta learner. Sulla base di queste informazioni, il meta learner esegue una parametrizzazione rapida per aggiornare i pesi all'interno di entrambi gli spazi.6
Il deep learning richiede in genere più aggiornamenti iterativi dei parametri del modello attraverso la retropropagazione e l'algoritmo di ottimizzazione della discesa del gradiente. Nel meta learning basato sull'ottimizzazione, noto anche come meta learning basato sul gradiente, l'algoritmo apprende quali parametri iniziali del modello o iperparametri delle reti neurali profonde possono essere ottimizzati in modo efficiente per le attività pertinenti. In questo caso si parla di solito di meta-ottimizzazione, ovvero l'ottimizzazione dell'algoritmo di ottimizzazione stesso.
Questo metodo di meta learning basato sull'ottimizzazione utilizza una popolare architettura di rete neurale ricorrente chiamata long-short term memory (LSTM) per addestrare un meta-learner ad acquisire sia conoscenze a lungo termine condivise tra le attività, sia conoscenze a breve termine da ciascuna attività. Il meta-learner ottimizza quindi un altro classificatore di reti neurali. Apprende un'inizializzazione dei parametri del learner per una rapida convergenza durante l'addestramento e come aggiornare quei parametri in modo efficiente data una piccola quantità di dati di addestramento, aiutando il learner ad adattarsi rapidamente alle nuove attività.7
Come suggerisce il nome, questo algoritmo di meta learning basato sull'ottimizzazione è indipendente dal modello. Ciò lo rende compatibile con qualsiasi modello addestrato utilizzando la discesa del gradiente e adatto a risolvere vari problemi di apprendimento, come la classificazione, la regression e l'apprendimento per rinforzo.8
L'idea fondamentale alla base di MAML è quella di addestrare i parametri iniziali del modello in modo che alcuni aggiornamenti del gradiente determinino un rapido apprendimento di un nuovo compito. L'obiettivo è determinare parametri del modello che siano sensibili ai cambiamenti in un compito in modo che piccole modifiche a quei parametri portino a grandi miglioramenti nella funzione di perdita del compito. La meta-ottimizzazione tra le attività viene eseguita utilizzando la discesa stocastica del gradiente (SGD).8
A differenza della discesa del gradiente, che calcola le derivate per ottimizzare i parametri di un modello per un compito specifico, MAML calcola le derivate seconde per ottimizzare i parametri iniziali di un modello per un'ottimizzazione specifica del compito. Una versione modificata del model-agnostic meta learning, nota come MAML di primo ordine o FOMAML, omette le derivate seconde per un processo meno costoso dal punto di vista computazionale.8
Reptile è un algoritmo di meta learning basato sul gradiente di primo ordine simile a FOMAML. Campiona ripetutamente un compito, esegue l'addestramento su quel compito attraverso molti passaggi di discesa del gradiente e sposta i pesi del modello verso i nuovi parametri.9
Per dimostrare ulteriormente la versatilità del meta-apprendimento, ecco alcuni modi in cui il meta learning può essere utilizzato nell'ambito stesso del machine learning:
Il machine learning automatizzato (AutoML) consente l'automazione delle attività nella pipeline di machine learning. Le tecniche di meta learning sono adatte per l'AutoML, soprattutto quando si tratta di ottimizzazione degli iperparametri e di selezione del modello.
La messa a punto degli iperparametri per i modelli di machine learning viene solitamente eseguita manualmente. Gli algoritmi di meta learning possono aiutare ad automatizzare questa procedura imparando a ottimizzare gli iperparametri o identificando gli iperparametri ideali per un determinato compito.
Gli algoritmi di meta learning possono anche imparare a scegliere il modello più appropriato, e persino i parametri e l'architettura di quel modello, per risolvere un'attività specifica. Questo aiuta ad automatizzare il processo di selezione del modello.
Il few-shot learning è un framework di machine learning che addestra un modello AI su un numero limitato di esempi. La maggior parte dei metodi di apprendimento a basso costo si basano sul meta learning, in cui i modelli si adattano a nuove attività a causa della scarsità di dati di addestramento.
Un motore di raccomandazione si basa su algoritmi di apprendimento automatico per trovare pattern nei dati sul comportamento degli utenti e consigliare elementi pertinenti in base a tali pattern. I sistemi di meta learning possono apprendere modelli di raccomandazione per generare suggerimenti più accurati e più pertinenti che personalizzano meglio le esperienze degli utenti.
Il meta-learning può aiutare a facilitare l'apprendimento per trasferimento, che adatta un modello preaddestrato per l'apprendimento di nuove attività o classi di dati precedentemente non visualizzate.
Il meta-apprendimento può essere applicato a diverse aree dell'industria tecnologica, alcune delle quali includono:
Il meta learning può essere impiegato nelle attività di computer vision, che includono il riconoscimento facciale, la classificazione delle immagini, la segmentazione delle immagini, il rilevamento degli oggetti e il tracciamento degli oggetti.
Il meta learning può essere utilizzato per le attività di elaborazione del linguaggio naturale, come la modellazione del linguaggio, la classificazione del sentiment, il riconoscimento vocale e la classificazione del testo.10
Il meta learning può aiutare i robot ad apprendere rapidamente nuovi compiti e ad adattarsi ad ambienti dinamici. Può essere applicato in una serie di attività come la presa, la navigazione, la manipolazione e il movimento.11
Il meta-apprendimento ha un grande potenziale. Ecco alcuni vantaggi che offre:
Il meta-learning può essere utilizzato per creare modelli AI più generalizzati che possono imparare a svolgere molte attività correlate. Grazie a questa flessibilità, i sistemi di meta learning possono adattarsi rapidamente a nuovi compiti e domini diversi.
Il meta learning supporta l'apprendimento a partire da pochi campioni, il che potrebbe eliminare la necessità di grandi volumi di set di dati. Ciò può essere particolarmente utile per gli ambiti in cui la raccolta e la preparazione dei dati potrebbero richiedere molto tempo e manodopera.
Grazie alla sua efficienza dei dati e al rapido apprendimento, il meta-learning può portare a un processo di formazione più rapido e a una riduzione dei costi di formazione.
Nonostante le promesse del meta learning, esso presenta anche delle sfide. Eccone alcune:
A volte, la quantità di dati per addestrare i modelli AI è insufficiente, soprattutto per i domini di nicchia. Oppure, se i dati sono disponibili, la qualità potrebbe non essere adeguata per addestrare in modo efficiente gli algoritmi di meta learning.
Non avere sufficiente variabilità tra le attività nel set di supporto per il meta training può portare all'overfitting. Ciò significa che un algoritmo di meta learning potrebbe essere applicabile solo ad attività specifiche senza essere in grado di generalizzare efficacemente su una vasta gamma di attività.
Al contrario, avere troppa variabilità tra le attività del set di supporto per il meta-training può comportare un underfitting. Ciò significa che un algoritmo di meta-apprendimento potrebbe non essere in grado di utilizzare le sue conoscenze per risolvere un altro compito e potrebbe avere difficoltà ad adattarsi a nuovi scenari. Pertanto, un equilibrio nella variabilità delle attività è fondamentale.
Addestra, convalida, adatta e implementa le funzionalità di AI generativa, foundation model e machine learning con IBM watsonx.ai, uno studio aziendale di nuova generazione per builder AI. Crea applicazioni AI in tempi ridotti e con una minima quantità di dati.
Metti l'AI al servizio della tua azienda grazie all'esperienza leader di settore e alla gamma di soluzioni di IBM nel campo dell'AI.
Reinventa i flussi di lavoro e le operazioni critiche aggiungendo l'AI per massimizzare le esperienze, il processo decisionale in tempo reale e il valore di business.
Impara i concetti fondamentali e sviluppa le tue competenze con laboratori pratici, corsi, progetti guidati, prove e molto altro.
Scopri come incorporare in tutta sicurezza l’AI generativa e il machine learning nella tua azienda.
Vuoi ottenere un ritorno migliore sui tuoi investimenti nell’AI? Scopri come lo scaling della GenAI in settori chiave può favorire il cambiamento, aiutando le tue menti migliori a creare e fornire nuove soluzioni innovative.
Scopri come scegliere il foundation model di AI più adatto al tuo caso d’uso.
1 "SigNet: Convolutional Siamese Network for Writer Independent Offline Signature Verification", arXiv, 30 settembre 2017.
2 "Matching Networks for One Shot Learning", arXiv, 29 dicembre 2017.
3 "Learning to Compare: Relation Network for Few-Shot Learning", arXiv, 27 marzo 2018.
4 "Prototypical Networks for Few-shot Learning", arXiv, 19 giugno 2017.
5 "Meta-Learning with Memory-Augmented Neural Networks", Proceedings of the 33rd International Conference on Machine Learning, 19 giugno 2016.
6 "Meta Networks", arXiv, 8 giugno 2017.
7 "Optimization as a Model for Few-Shot Learning", OpenReview, 22 luglio 2022.
8 "Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks", arXiv, 18 luglio 2017.
9 "On First-Order Meta-Learning Algorithms", arXiv, 22 ottobre 2018.
10 "Meta Learning for Natural Language Processing: A Survey", arXiv, 2 luglio 2022.
11 "Rapidly Adaptable Legged Robots via Evolutionary Meta-Learning", arXiv, 30 luglio 2020.
IBM web domains
ibm.com, ibm.org, ibm-zcouncil.com, insights-on-business.com, jazz.net, mobilebusinessinsights.com, promontory.com, proveit.com, ptech.org, s81c.com, securityintelligence.com, skillsbuild.org, softlayer.com, storagecommunity.org, think-exchange.com, thoughtsoncloud.com, alphaevents.webcasts.com, ibm-cloud.github.io, ibmbigdatahub.com, bluemix.net, mybluemix.net, ibm.net, ibmcloud.com, galasa.dev, blueworkslive.com, swiss-quantum.ch, blueworkslive.com, cloudant.com, ibm.ie, ibm.fr, ibm.com.br, ibm.co, ibm.ca, community.watsonanalytics.com, datapower.com, skills.yourlearning.ibm.com, bluewolf.com, carbondesignsystem.com, openliberty.io