Che cos'è il transfer learning?

Autori

Jacob Murel Ph.D.

Senior Technical Content Creator

Eda Kavlakoglu

Business Development + Partnerships

IBM Research

Cos'è il transfer learning?

Il transfer learning, o apprendimento per trasferimento, è una tecnica di machine learning in cui le conoscenze acquisite attraverso un'attività o un set di dati vengono utilizzate per migliorare le prestazioni dei modelli su un'altra attività correlata e/o su un set di dati diverso.1 In altre parole, utilizza ciò che è stato appreso in un'impostazione per migliorare la generalizzazione in un'altra.2

Il transfer learning ha molte applicazioni, dalla risoluzione dei problemi di regressione nella data science all'addestramento dei modelli di deep learning. Nel secondo caso, è particolarmente interessante data la grande quantità di dati necessari per creare reti neurali profonde.

I processi di apprendimento tradizionali creano un nuovo modello per ogni nuova attività sulla base dei dati etichettati disponibili. Ciò è dovuto al fatto che gli algoritmi di machine learning tradizionali presuppongono che i dati di addestramento e di test provengano dallo stesso spazio di funzionalità, pertanto, se la distribuzione dei dati cambia o se il modello addestrato viene applicato a un nuovo set di dati, gli utenti devono riaddestrare un modello più recente da zero, anche se vogliono svolgere un'attività simile a quella del primo modello (ad es. classificazione di sentiment analysis per le recensioni dei film rispetto alle recensioni dei brani musicali). Gli algoritmi di transfer learning, invece, prendono come punto di partenza modelli o reti già addestrati, quindi applicano le conoscenze di quel modello, acquisite in un'attività o in dati di origine iniziale (ad es. classificazione delle recensioni dei film) rispetto a un'attività o dati target nuovi, ma correlati (ad es. classificazione delle recensioni dei brani musicali).3

Le ultime tendenze in materia di AI, proposte da esperti

Ricevi insight selezionati sulle notizie più importanti e interessanti sull'AI. Iscriviti alla nostra newsletter settimanale Think. Leggi l'Informativa sulla privacy IBM.

Grazie per aver effettuato l'iscrizione!

L'abbonamento sarà fornito in lingua inglese. Troverai un link per annullare l'iscrizione in tutte le newsletter. Puoi gestire i tuoi abbonamenti o annullarli qui. Per ulteriori informazioni, consulta l'Informativa sulla privacy IBM.

Vantaggi e svantaggi del transfer learning

Vantaggi

  • Costi computazionali.Il transfer learning riduce i costi di calcolo richiesti per costruire modelli per nuovi problemi. Riproponendo modelli o reti pre-addestrati per affrontare un compito diverso, gli utenti possono ridurre il tempo di addestramento del modello, i dati di addestramento, le unità di elaborazione e altre risorse di calcolo. Ad esempio, potrebbe essere necessario un numero inferiore di epoche (i passaggi attraverso un set di dati) per raggiungere il tasso di apprendimento desiderato. In questo modo, il transfer learning può accelerare e semplificare i processi di addestramento dei modelli.

  • - Dimensioni dei set di dati. Il transfer learning aiuta in particolare a risolvere le difficoltà legate all'acquisizione di grandi set di dati. Ad esempio, i modelli linguistici di grandi dimensioni (LLM) necessitano quantità di dati di addestramento per raggiungere livelli di prestazioni ottimali. I set di dati di qualità disponibili al pubblico sono limitati, e produrre dati sufficienti etichettati manualmente può richiedere molto tempo e denaro.

  • - Capacità di generalizzazione. Sebbene il transfer learning aiuti nell'ottimizzazione dei modelli, può aumentarne ulteriormente la capacità di generalizzazione. Poiché il transfer learning comporta la riqualificazione di un modello esistente con un nuovo set di dati, il modello riqualificato sarà composto da conoscenze acquisite da più set di dati. Potenzialmente mostrerà prestazioni migliori su una più ampia varietà di dati rispetto al modello di base iniziale, addestrato su un solo tipo di set di dati. Il transfer learning può quindi inibire l'overfitting.4

Ovviamente, nemmeno il trasferimento di conoscenze da un dominio a un altro può compensare l'impatto negativo causato da dati di qualità scadente. Le tecniche di pre-elaborazione e la progettazione di funzioni, come data augmentation ed estrazione di funzioni, sono necessarie anche quando si utilizza il transfer learning.

Svantaggi

Il transfer learning non presenta svantaggi inerenti; sono invece le potenziali conseguenze della sua applicazione errata ad essere negative. Il transfer learning funziona al meglio quando vengono soddisfatte tre condizioni:

  • entrambe le attività di apprendimento sono simili

  • le distribuzioni dei dati dai set di origine e di destinazione non variano troppo

  • un modello simile può essere applicato a entrambe le attività

Se queste condizioni non vengono soddisfatte, il transfer learning può influire negativamente sulle prestazioni del modello. In letteratura si parla di trasferimento negativo. Le ricerche in corso suggeriscono di effettuare una serie di test per determinare se i set di dati e le attività soddisfano le condizioni elencate qui sopra e quindi non daranno luogo a un trasferimento negativo.5 Il trasferimento a distanza è un metodo sviluppato per correggere il trasferimento negativo derivante da differenze troppo grandi nelle distribuzioni dei dati dai set di origine e di destinazione.6

Si ricorda che non esiste una metrica standard diffusa per determinare la somiglianza tra le attività per il transfer learning. Tuttavia, alcuni studi propongono diversi metodi di valutazione per prevedere le somiglianze tra set di dati e le attività di machine learning, e quindi la fattibilità dell'apprendimento per trasferimento.7

AI Academy

AI all'opera nell'ambito del servizio clienti

Scopri come l'AI generativa può offrire ai clienti un'esperienza più fluida e aumentare la produttività dell'organizzazione in queste tre aree chiave: self-service, agenti umani e operazioni di contact center.

Tipi di transfer learning

Esistono tre pratiche o impostazioni secondarie limitrofe al transfer learning. La loro distinzione l'una dall'altra (e dal transfer learning in senso più ampio) deriva dalle differenze nelle relazioni fra il dominio di origine, il dominio di destinazione e le attività da completare.8

  • - Trasferimento induttivo. Si verifica quando le attività di origine e di destinazione sono diverse, indipendentemente dalle differenze o somiglianze tra i domini di destinazione e di origine (i set di dati). Nei modelli di computer vision, si concretizza quando vengono adottate architetture pre-addestrate per estrarre funzioni su set di dati di grandi dimensioni per ulteriore addestramento su un compito specifico, come il rilevamento degli oggetti. L'apprendimento multitask, che consiste nell'apprendimento simultaneo di due diverse attività sullo stesso set di dati (come la classificazione delle immagini e il rilevamento degli oggetti), può essere considerato una forma di trasferimento induttivo.9

  • Apprendimento non supervisionato. È simile al trasferimento induttivo, in quanto le attività di destinazione e di origine sono diverse. Nel trasferimento induttivo, tuttavia, i dati di origine e/o di destinazione sono spesso etichettati. Come dice il suo nome, il transfer learning non supervisionato non ha una supervisione, il che significa che non sono presenti dati etichettati manualmente.10 Il trasferimento induttivo può invece essere considerato un apprendimento supervisionato. Un'applicazione comune dell'apprendimento non supervisionato è il rilevamento delle frodi. Identificando modelli comuni in un set di dati non etichettati relativi alle transazioni, un modello può ulteriormente imparare a identificare i comportamenti devianti come possibili frodi.

  • - Trasferimento trasduttivo. Si verifica quando le attività di origine e destinazione sono le stesse, ma i set di dati (o domini) sono diversi. Più specificamente, i dati di origine sono in genere etichettati mentre i dati di destinazione non lo sono. L'adattamento del dominio è una forma di apprendimento trasduttivo, in quanto applica le conoscenze acquisite dall'esecuzione di un'attività su una distribuzione di dati verso la stessa attività su un'altra distribuzione.11 Un esempio di transfer learning trasduttivo è l'applicazione di un modello di classificazione del testo addestrato e testato sulle recensioni dei ristoranti per classificare le recensioni dei film.

Transfer learning e messa a punto

Il transfer learning e la messa a punto sono due cose diverse. Entrambi riutilizzano modelli di machine learning preesistenti invece di addestrare nuovi modelli, ma le somiglianze si fermano qui. La messa a punto è il processo di ulteriore addestramento di un modello su un set di dati specifico per un'attività, volto a migliorare le prestazioni sulla specifica attività iniziale per la quale il modello è stato creato. Ad esempio, è possibile creare un modello di rilevamento di oggetti generico utilizzando enormi set di immagini come COCO o ImageNet, per poi addestrare ulteriormente il modello risultante su un set di dati più piccolo ed etichettato, specifico per il rilevamento delle auto. In questo modo, un utente mette a punto un modello di rilevamento degli oggetti per il rilevamento delle auto. Il transfer learning, invece, si ha quando gli utenti adattano un modello a un nuovo problema correlato anziché allo stesso problema.

Casi d'uso del transfer learning

Le applicazioni del transfer learning in contesti di machine learning e intelligenza artificiale del mondo reale sono numerose. Gli sviluppatori e i data scientist possono utilizzare l'apprendimento per trasferimento per facilitare una miriade di attività e combinarlo con altri approcci di apprendimento, come l'apprendimento per rinforzo.

Elaborazione del linguaggio naturale

Un problema saliente che riguarda il transfer learning nella PNL è la mancata corrispondenza delle funzionalità. Le funzionalità in diversi domini possono avere significati diversi e quindi connotazioni (ad es. la parola inglese light, che significa sia "leggero" che "chiaro". Questa disparità nelle rappresentazioni delle caratteristiche influisce sulle attività di classificazione del sentiment, sui modelli linguistici e altro ancora. Sembra che i modelli basati sul deep learning correggeranno questa situazione, in particolare per gli incorporamenti di parole, poiché sono in grado di acquisire in modo adeguato le relazioni semantiche e gli orientamenti per le attività di adattamento del dominio.12

Computer vision

A causa delle difficoltà nell'acquisizione di dati etichettati manualmente per diverse attività di computer vision, numerose ricerche stanno esaminando le applicazioni di transfer learning con reti neurali convoluzionali (CNN). Un esempio importante è ResNet, un'architettura di modelli pre-addestrata che mostra prestazioni migliorate nelle attività di classificazione delle immagini e di rilevamento degli oggetti.13 Una recente ricerca ha analizzato il celebre dataset ImageNet per il transfer learning sostenendo che, contrariamente a quanto si creda per la computer vision, siano necessari solo piccoli sottoinsiemi di questo set di dati per addestrare i modelli in modo affidabile e generalizzabile.14 Molti tutorial di transfer learning per l'utilizzo della computer vision utilizzano ResNet o ImageNet (o entrambe) con la libreria Keras di TensorFlow.

Soluzioni correlate
IBM watsonx.ai

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.

Scopri watsonx.ai
Soluzioni di intelligenza artificiale

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.

Esplora le soluzioni AI
Consulenza e servizi sull'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.

Esplora i servizi AI
Fai il passo successivo

Ottieni l'accesso completo a funzionalità che coprono l'intero ciclo di vita dello sviluppo dell'AI. Crea soluzioni AI all'avanguardia con interfacce intuitive, workflow e accesso alle API e agli SDK standard di settore.

Esplora watsonx.ai Prenota una demo live