mozzicone Che cos'è il meta-apprendimento? - Unite.AI
Seguici sui social
Corso di perfezionamento sull'intelligenza artificiale:

AI 101

Che cos'è il meta-apprendimento?

mm
aggiornato on

Che cos'è il meta-apprendimento?

Una delle aree di ricerca in più rapida crescita nel campo dell'apprendimento automatico è l'area di meta-apprendimento. Il meta-apprendimento, nel contesto dell'apprendimento automatico, è l'uso di algoritmi di apprendimento automatico per assistere nell'addestramento e nell'ottimizzazione di altri modelli di apprendimento automatico. Poiché il meta-apprendimento sta diventando sempre più popolare e si stanno sviluppando più tecniche di meta-apprendimento, è utile avere una comprensione di cosa sia il meta-apprendimento e avere un'idea dei vari modi in cui può essere applicato. Esaminiamo le idee alla base del meta-apprendimento, tipi di meta-apprendimento, così come alcuni dei modi in cui è possibile utilizzare il meta-apprendimento.

Il termine meta-apprendimento è stato coniato da Donald Maudsley per descrivere un processo mediante il quale le persone iniziano a plasmare ciò che apprendono, diventando "sempre più in controllo delle abitudini di percezione, indagine, apprendimento e crescita che hanno interiorizzato". Successivamente, scienziati cognitivi e psicologi descriveranno il meta-apprendimento come "imparare a imparare".

Per la versione di apprendimento automatico del meta-apprendimento, l'idea generale di "imparare a imparare" viene applicata ai sistemi di intelligenza artificiale. Nel senso dell'intelligenza artificiale, il meta-apprendimento è la capacità di una macchina artificialmente intelligente di apprendere come svolgere vari compiti complessi, prendendo i principi che ha utilizzato per apprendere un compito e applicandoli ad altri compiti. I sistemi di intelligenza artificiale in genere devono essere addestrati per svolgere un'attività attraverso la padronanza di molte piccole attività secondarie. Questa formazione può richiedere molto tempo e gli agenti di intelligenza artificiale non trasferiscono facilmente le conoscenze apprese durante un'attività a un'altra. La creazione di modelli e tecniche di meta-apprendimento può aiutare l'IA a imparare a generalizzare i metodi di apprendimento e ad acquisire nuove competenze più rapidamente.

Tipi di meta-apprendimento

Meta-apprendimento ottimizzatore

Il meta-apprendimento viene spesso impiegato per ottimizzare le prestazioni di una rete neurale già esistente. I metodi di meta-apprendimento dell'ottimizzatore in genere funzionano modificando gli iperparametri di una rete neurale diversa per migliorare le prestazioni della rete neurale di base. Il risultato è che la rete target dovrebbe migliorare nell'esecuzione del compito su cui viene addestrata. Un esempio di ottimizzatore del meta-apprendimento è l'uso di una rete per migliorare discesa gradiente risultati.

Meta-apprendimento a pochi colpi

Un approccio di meta-apprendimento a pochi colpi è quello in cui viene progettata una rete neurale profonda in grado di generalizzare dai set di dati di addestramento a set di dati invisibili. Un'istanza di classificazione di pochi colpi è simile a una normale attività di classificazione, ma invece i campioni di dati sono interi set di dati. Il modello viene addestrato su molte diverse attività di apprendimento/set di dati e quindi è ottimizzato per le massime prestazioni sulla moltitudine di attività di formazione e dati invisibili. In questo approccio, un singolo campione di addestramento viene suddiviso in più classi. Ciò significa che ogni campione/set di dati di addestramento potrebbe potenzialmente essere composto da due classi, per un totale di 4 scatti. In questo caso, il compito di addestramento totale potrebbe essere descritto come un compito di classificazione di 4 classi a 2 colpi.

Nell'apprendimento in pochi scatti, l'idea è che i singoli campioni di addestramento siano minimalisti e che la rete possa imparare a identificare gli oggetti dopo aver visto solo poche immagini. È molto simile a come un bambino impara a distinguere gli oggetti dopo aver visto solo un paio di immagini. Questo approccio è stato utilizzato per creare tecniche come modelli generativi one-shot e reti neurali con memoria aumentata.

Metrica Meta-Apprendimento

Il meta-apprendimento basato sulla metrica è l'utilizzo delle reti neurali per determinare se una metrica viene utilizzata in modo efficace e se la rete o le reti raggiungono la metrica target. Il meta-apprendimento metrico è simile all'apprendimento a pochi colpi in quanto vengono utilizzati solo pochi esempi per addestrare la rete e farle apprendere lo spazio metrico. La stessa metrica viene utilizzata in tutti i diversi domini e se le reti divergono dalla metrica vengono considerate in errore.

Meta-apprendimento del modello ricorrente

Il meta-apprendimento del modello ricorrente è l'applicazione di tecniche di meta-apprendimento alle reti neurali ricorrenti e alle reti simili di memoria a lungo termine. Questa tecnica opera addestrando il modello RNN/LSTM ad apprendere in sequenza un set di dati e quindi utilizzando questo modello addestrato come base per un altro studente. Il meta-studente assume a bordo lo specifico algoritmo di ottimizzazione utilizzato per addestrare il modello iniziale. La parametrizzazione ereditata del meta-leaner gli consente di inizializzarsi e convergere rapidamente, ma è comunque in grado di aggiornarsi per nuovi scenari.

Come funziona il meta-apprendimento?

Il modo esatto in cui viene condotto il meta-apprendimento varia a seconda del modello e della natura del compito da svolgere. Tuttavia, in generale, un compito di meta-apprendimento comporta la copia dei parametri della prima rete nei parametri della seconda rete/l'ottimizzatore.

Ci sono due processi di formazione nel meta-apprendimento. Il modello di meta-apprendimento viene tipicamente addestrato dopo che sono state eseguite diverse fasi di addestramento sul modello di base. Dopo i passaggi avanti, indietro e di ottimizzazione che addestrano il modello di base, viene eseguito il passaggio di addestramento in avanti per il modello di ottimizzazione. Ad esempio, dopo tre o quattro fasi di addestramento sul modello base, viene calcolata una meta-perdita. Dopo aver calcolato la meta-perdita, vengono calcolati i gradienti per ciascun meta-parametro. Dopo che ciò si verifica, i metaparametri nell'ottimizzatore vengono aggiornati.

Una possibilità per calcolare la meta-perdita è terminare il passaggio di addestramento in avanti del modello iniziale e quindi combinare le perdite che sono già state calcolate. Il meta-ottimizzatore potrebbe anche essere un altro meta-studente, sebbene a un certo punto debba essere utilizzato un ottimizzatore discreto come ADAM o SGD.

Molti modelli di deep learning possono avere centinaia di migliaia o addirittura milioni di parametri. La creazione di un meta-studente con un set di parametri completamente nuovo sarebbe computazionalmente costoso e, per questo motivo, viene generalmente utilizzata una tattica chiamata condivisione delle coordinate. La condivisione delle coordinate comporta l'ingegnerizzazione del meta-discente/ottimizzatore in modo che apprenda un singolo parametro dal modello di base e quindi cloni semplicemente quel parametro al posto di tutti gli altri parametri. Il risultato è che i parametri che possiede l'ottimizzatore non dipendono dai parametri del modello.

Blogger e programmatore con specialità in machine Learning ed Deep Learning temi. Daniel spera di aiutare gli altri a usare il potere dell'intelligenza artificiale per il bene sociale.