Apprendimento autosupervisionato: cos'è e come funziona
Pubblicato: 2024-07-18L’apprendimento auto-supervisionato, una tecnica all’avanguardia nel campo dell’intelligenza artificiale, consente alle macchine di scoprire modelli e strutture intrinseche all’interno dei dati, imitando la capacità umana di apprendere dal contesto e dall’esperienza piuttosto che da istruzioni esplicite.
Sommario
- Cos’è l’apprendimento autosupervisionato?
- Auto-supervisionato rispetto ad altri tipi di machine learning
- Come funziona l'apprendimento autosupervisionato
- Tipi di apprendimento autosupervisionato
- Applicazioni dell'apprendimento autosupervisionato
- Vantaggi dell’apprendimento autosupervisionato
- Svantaggi dell’apprendimento autosupervisionato
Cos’è l’apprendimento autosupervisionato?
L'apprendimento autosupervisionato è un tipo di machine learning (ML) che addestra i modelli a creare le proprie etichette, ovvero input e output esplicitamente abbinati, utilizzando dati grezzi e senza etichetta. A differenza dell’apprendimento supervisionato, che richiede una quantità significativa di dati etichettati, l’apprendimento autosupervisionato genera pseudo-etichette (etichette artificiali) dai dati stessi. Questa tecnica conferisce al modello l'orientamento agli obiettivi e la misurabilità di un approccio di apprendimento supervisionato, oltre alla capacità dell'apprendimento non supervisionato di trarre conclusioni utili da enormi quantità di dati non etichettati.
L'apprendimento automatico è un sottoinsieme dell'intelligenza artificiale (AI) che utilizza dati e metodi statistici per costruire modelli che imitano il ragionamento umano anziché fare affidamento su istruzioni codificate. L'apprendimento autosuperato sfrutta le grandi quantità di dati non etichettati disponibili, rendendolo un approccio potente per migliorare le prestazioni del modello con un intervento manuale minimo. In effetti, i principali modelli di testo e immagini generativi di AI di oggi vengono in gran parte addestrati utilizzando l’apprendimento autosuperato.
Auto-supervisionato rispetto ad altri tipi di machine learning
L’apprendimento autosupervisionato combina elementi sia dell’apprendimento supervisionato che di quello non supervisionato, ma è distinto dall’apprendimento semi-supervisionato:
- Apprendimento supervisionato: utilizza dati etichettati per addestrare modelli per attività specifiche come classificazione e regressione. Le etichette forniscono una guida esplicita, consentendo al modello di fare previsioni accurate. Le applicazioni comuni includono il rilevamento dello spam, la classificazione delle immagini e le previsioni meteorologiche.
- Apprendimento non supervisionato: funziona con dati senza etichetta per trovare modelli e raggruppamenti. Identifica cluster e associazioni e riduce la complessità dei dati per un'elaborazione più semplice. Gli esempi includono la segmentazione della clientela, i sistemi di raccomandazione e il rilevamento delle anomalie.
- Apprendimento semi-supervisionato:utilizza una modesta quantità di dati etichettati per fornire una guida iniziale e quindi sfrutta una o più raccolte più grandi di dati senza etichetta per perfezionare e migliorare il modello. Questo approccio è particolarmente utile quando si hanno alcuni dati etichettati, ma sarebbe troppo difficile o costoso generarne abbastanza per un apprendimento completamente supervisionato.
- Apprendimento auto-supervisionato:utilizza i dati grezzi per generare le proprie etichette, consentendo al modello di apprendere dai dati senza alcun dato etichettato iniziale. Questo approccio è particolarmente utile quando i dati etichettati non sono affatto disponibili o rappresentano solo una piccola parte dei dati disponibili, come nel caso dell’elaborazione del linguaggio naturale (NLP) o del riconoscimento delle immagini.
Come funziona l'apprendimento autosupervisionato
Autocontrollo significa che i dati stessi forniscono le risposte corrette. Il processo di apprendimento autosupervisionato prevede diverse fasi, combinando aspetti dei metodi supervisionati e non supervisionati:
Raccolta dati:raccogli una grande quantità di dati grezzi e senza etichetta. Questi dati costituiscono la base per la creazione di pseudo-etichette e l'addestramento del modello. Molti set di dati sono disponibili gratuitamente.
- Preelaborazione:preparare i dati per garantirne la qualità. Questo passaggio include la rimozione dei duplicati, la gestione dei valori mancanti e la normalizzazione degli intervalli di dati.
- Creazione di attività:crea enigmi da risolvere per il modello, noti come attività di pretesto. Questi vengono creati rimuovendo o mescolando parti dei dati, ad esempio rimuovendo parole, eliminando pixel di immagine o mescolando fotogrammi video. Qualunque cosa esistesse prima di questa corruzione intenzionale è nota come pseudo-etichetta: una “risposta giusta” creata dai dati stessi piuttosto che dall’etichettatura umana.
- Formazione:addestrare il modello sui compiti pretesto utilizzando le pseudo-etichette generate. Ciò significa che il modello tenta di generare la risposta corretta, confronta la sua risposta con la pseudo-etichetta, si adatta e riprova a generare la risposta corretta. Questa fase aiuta il modello a comprendere le relazioni all'interno dei dati e infine crea una comprensione complessa della relazione tra input e output.
- Ottimizzazione:cambia il modello per apprendere da un set di dati più piccolo ed etichettato per migliorarne le prestazioni su attività specifiche. Questo passaggio garantisce che il modello sfrutti le rappresentazioni apprese durante la fase di formazione iniziale. La messa a punto non è strettamente necessaria, ma in genere porta a risultati migliori.
- Valutazione:valutare le prestazioni del modello sui dati che non ha ancora visto. Utilizzando metriche standard rilevanti per l'attività, come il punteggio F1, questa valutazione garantisce che il modello si generalizzi bene ai nuovi dati.
- Distribuzione e monitoraggio:distribuisci il modello addestrato in applicazioni reali e monitora continuamente le sue prestazioni. Aggiornare il modello con nuovi dati secondo necessità per mantenerne l'accuratezza e la pertinenza.
Tipi di apprendimento autosupervisionato
L’apprendimento autosupervisionato comprende varie tipologie, ciascuna con molteplici tecniche e approcci. Qui ne esploreremo diversi tipi, evidenziandone i metodi di allenamento unici e fornendo uno o due esempi rappresentativi per ciascuno.
Per le immagini
- Apprendimento auto-predittivo:l'apprendimento auto-predittivo prevede tecniche come la codifica automatica, in cui un modello impara a comprimere le informazioni in una forma più semplice e quindi a ricreare i dati originali da essa. Nell'elaborazione delle immagini, ciò spesso significa corrompere selettivamente parti di un'immagine (ad esempio, mascherando le sezioni) e addestrare il modello a ricostruire l'originale. Ciò aiuta il modello a riconoscere meglio gli oggetti in diverse posizioni, dimensioni e anche quando parzialmente nascosti.
- Apprendimento contrastivo:nell'apprendimento contrastivo, il modello impara a distinguere tra immagini simili e diverse confrontandole in coppie o gruppi. Ad esempio, il metodo SimCLR utilizza miglioramenti delle immagini (come ritaglio, distorsione e capovolgimento) per creare coppie di addestramento. Le coppie positive vengono create applicando modifiche diverse alla stessa immagine, mentre le coppie negative provengono da immagini diverse. Il modello apprende quindi quali caratteristiche sono comuni in coppie simili e diverse in coppie dissimili.
- Metodi basati sul clustering:i metodi basati sul clustering raggruppano insieme punti dati simili e utilizzano questi cluster come pseudo-etichette per l'addestramento. Ad esempio, DeepCluster raggruppa le immagini in base a funzionalità simili e utilizza questi cluster per addestrare il modello. Il processo alterna il clustering e il training finché il modello non funziona correttamente. SwAV (Swapping Assignments Between Views) migliora questo aspetto utilizzando più versioni della stessa immagine per aiutare il modello ad apprendere caratteristiche essenziali che rimangono costanti, come bordi, trame e posizioni degli oggetti.
Per il testo
- Apprendimento auto-predittivo:questo è il meccanismo di formazione principale dei modelli linguistici di grandi dimensioni (LLM), che comprendono il testo come una serie di token. Questi rappresentano tipicamente una parola ma a volte una parte di una parola o un gruppo di parole.
- Modelli linguistici mascherati (MLM):vengono mostrate frasi con alcuni token mancanti e hanno il compito di prevedere le parole mancanti. Imparando a riempire questi spazi vuoti, i MLM sviluppano una rappresentazione approfondita della struttura e del contesto del linguaggio e possono considerare il contesto di un intero input quando fanno previsioni. Risultati utili, come l'analisi del sentiment o il riconoscimento delle entità denominate, vengono sviluppati attraverso la messa a punto. Un ottimo esempio è BERT, che Google utilizza per comprendere l’intento delle query di ricerca.
- Modelli del linguaggio causale (CLM):modelli generativi come ChatGPT, Claude e Gemini imparano a ricreare il testo che hanno visto prevedendo una parola alla volta, in base ai token precedenti. Una volta addestrati, trattano il testo di input come contesto per le loro previsioni e continuano a fare previsioni con ogni nuovo token che generano. Questa previsione sequenziale è il motivo per cui il loro output sembra digitarsi da solo anziché apparire tutto in una volta.
- Apprendimento contrastivo:questo approccio confronta coppie di campioni di testo, sottolineando le differenze e le somiglianze tra loro. SimCSE crea due versioni leggermente diverse della stessa frase applicando il dropout, che ignora casualmente parti della rappresentazione della frase negli strati nascosti durante l'addestramento (vedi ulteriori informazioni sugli strati nascosti nel nostro post sul deep learning). Il modello impara a riconoscere queste versioni come simili. Questa tecnica migliora la capacità del modello di comprendere e confrontare le frasi, rendendolo utile per applicazioni come la ricerca di frasi simili o il recupero di informazioni rilevanti per le query di ricerca.
- Previsione della frase successiva (NSP):come suggerisce il nome, la NSP implica prevedere se una determinata frase è la frase successiva di un'altra in un documento, aiutando i modelli a comprendere le relazioni tra le frasi e il flusso logico del testo. È comunemente usato insieme a un MLM per migliorare la comprensione di corpi di testo più grandi. Ad esempio, in BERT NSP, il modello prevede se due frasi compaiono consecutivamente nel testo originale.
Applicazioni dell'apprendimento autosupervisionato
L’apprendimento autosupervisionato ha una vasta gamma di applicazioni in vari settori:
- Elaborazione del linguaggio naturale:modelli come BERT e GPT-3 utilizzano l'apprendimento autosupervisionato per comprendere e generare il linguaggio umano in applicazioni come chatbot, traduzione e riepilogo di testo.
- Visione artificiale:l'apprendimento autocontrollato migliora l'analisi di immagini e video generando pseudo-etichette da dati visivi grezzi. Gli usi includono il rilevamento di oggetti (come su una videocamera per campanello), il riconoscimento facciale e la creazione automatica di clip da video più lunghi.
- Riconoscimento vocale:i modelli auto-supervisionati migliorano i sistemi di riconoscimento vocale imparando da grandi quantità di dati audio senza etichetta. Questo approccio riduce la necessità di trascrizione manuale e migliora la precisione tra diversi accenti e dialetti.
- Sanità:l'apprendimento autosuperato aiuta a migliorare l'analisi delle immagini mediche, la scoperta di farmaci e il monitoraggio dei pazienti sfruttando set di dati di grandi dimensioni con esempi etichettati minimi. Migliora l’accuratezza del rilevamento delle malattie e delle raccomandazioni terapeutiche senza richiedere un’etichettatura umana estesa e costosa da parte di esperti.
- Robotica:i robot utilizzano l’apprendimento autosuperato per comprendere il loro ambiente e migliorare i processi decisionali. Gli usi includono la navigazione autonoma, la manipolazione di oggetti e l'interazione uomo-robot.
Vantaggi dell’apprendimento autosupervisionato
- Conveniente:riduce la necessità di dati etichettati estesi, diminuendo i costi di annotazione e lo sforzo umano.
- Scalabilità:può gestire set di dati di grandi dimensioni, rendendolo adatto per applicazioni del mondo reale in cui i dati etichettati sono limitati ma i dati non etichettati sono abbondanti.
- Generalizzazione:se addestrato su un numero sufficiente di dati grezzi, il modello può apprendere abbastanza per eseguire nuove attività anche se non è stato addestrato su dati direttamente rilevanti. Ad esempio, un modello di PNL basato su una lingua potrebbe essere utilizzato per aumentare l’apprendimento di quello basato su un’altra lingua.
- Flessibilità:adattabile a un'ampia varietà di attività e domini, con molti sottotipi disponibili per soddisfare esigenze particolari.
Svantaggi dell’apprendimento autosupervisionato
- Complessità:creare compiti di pretesto efficaci e generare pseudo-etichette richiede un'attenta progettazione e sperimentazione.
- Sensibilità al rumore:le pseudo-etichette generate dai dati grezzi potrebbero essere irrilevanti per l'obiettivo, incidendo potenzialmente sulle prestazioni fornendo al modello troppi input non necessari da elaborare.
- Risorse computazionali:l’addestramento di modelli autosupervisionati, soprattutto con set di dati di grandi dimensioni, richiede tempo e potenza di calcolo significativi.