Vai al contenuto principale
Intelligenza artificiale
Machine Learning

Che cos'è il transfer learning nell'IA? Una guida introduttiva con esempi

Scopri il transfer learning, il fine-tuning e il loro ruolo fondamentale nel machine learning e nella GenAI.
Javier Canales Luna's photo
Javier Canales Luna
Aggiornato · 7 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Crea il tuo account gratuito

Pratica and corso your progress.

Continua Con Google
Continuando, accetti i nostri Termini di utilizzo, la nostra Informativa sulla privacy e che i tuoi dati siano conservati negli Stati Uniti.

Il transfer learning è una tecnica che permette alle macchine di sfruttare la conoscenza acquisita in un compito precedente per migliorare la generalizzazione su un altro. È un concetto fondamentale alla base dello sviluppo di modelli come ChatGPT e Google Gemini, e aiuta in molti compiti importanti e utili, come riassumere documenti lunghi, redigere saggi complessi, organizzare viaggi o persino scrivere poesie e canzoni. 

In questa guida esploreremo in profondità il transfer learning. Vedremo cos'è, perché è rilevante per il deep learning e i moderni modelli generativi di IA, e le sfide e i limiti di questa tecnica. Ti suggeriremo anche risorse per continuare a imparare. Pronto? Iniziamo.

Che cos'è il transfer learning nell'IA?

Il transfer learning è una tecnica in cui un modello sviluppato per un determinato compito viene riutilizzato come punto di partenza per un modello su un secondo compito. In altre parole, riapplichi i componenti di un modello di machine learning pre-addestrato a nuovi modelli pensati per qualcosa di diverso ma correlato.

Il concetto è simile a come gli esseri umani imparano nuove abilità. Facciamo un esempio: immagina di essere un chitarrista esperto e di decidere di imparare l'ukulele. La tua esperienza precedente con la chitarra accelererà il processo di apprendimento. Questo perché molte delle abilità e delle conoscenze necessarie per suonare la chitarra—come le posizioni delle dita, i pattern di strumming, la comprensione della tastiera, la teoria musicale e il ritmo—sono applicabili anche all'ukulele. 

Nell'IA, il transfer learning ti consente di sfruttare l'addestramento precedente per risolvere nuovi problemi correlati in modo più efficiente, riducendo così tempo e risorse computazionali.

Perché si usa il transfer learning?

Ci sono diverse ragioni convincenti per adottare tecniche di transfer learning nello sviluppo di reti neurali, tra cui:

  • Efficienza di addestramento: il transfer learning riduce i tempi di addestramento evitando di dover allenare i modelli da zero e consente il fine-tuning con dataset più piccoli. 
  • Prestazioni del modello: il transfer learning migliora le prestazioni sfruttando conoscenze pre-addestrate, riducendo l'overfitting e permettendo un addestramento più rapido ed efficiente con dati limitati.
  • Riduzione dei costi operativi: il transfer learning riduce i costi evitando di dover addestrare i modelli da zero, dove sia l'acquisizione dei dati sia l'uso di risorse computazionali possono essere onerosi.
  • Maggiore adattabilità e riutilizzabilità: il transfer learning è una tecnica chiave che consente ai modelli di adattarsi a più scenari e compiti, aumentando così il loro potenziale e la loro utilità.

Come funziona il transfer learning

Esploriamo tre concetti correlati al transfer learning: apprendimento multi-task, estrazione di caratteristiche e fine-tuning. 

Apprendimento multi-task

Nell'apprendimento multi-task, un singolo modello viene addestrato a svolgere più compiti contemporaneamente. Il modello ha un insieme condiviso di strati iniziali che elaborano i dati in modo comune, seguiti da strati separati per ciascun compito specifico. Questo consente al modello di apprendere caratteristiche generali utili a tutti i compiti, e al contempo caratteristiche specifiche più peculiari di ciascun compito.

Questo paradigma è ampiamente usato negli LLM moderni. Dai un'occhiata al nostro corso Introduction to LLMs per scoprire tutti i dettagli.

Estrazione di caratteristiche 

L'estrazione di caratteristiche consiste nell'usare un modello pre-addestrato per estrarre feature o rappresentazioni significative dai dati. Queste feature vengono poi usate come input per un nuovo modello focalizzato su qualcosa di specifico.

Il transfer learning basato su feature sfrutta le capacità uniche delle reti neurali di estrarre caratteristiche dai dati. Con l'estrazione di caratteristiche, il modello "capisce", per così dire, quale parte dell'input è importante per, ad esempio, classificare un'immagine. In termini pratici, significa che, quando un modello viene applicato a un nuovo compito, si utilizzano solo gli strati iniziali e intermedi pre-addestrati che contengono la conoscenza più generalizzabile.

Fine-tuning

Il fine-tuning va oltre l'estrazione di caratteristiche ed è comunemente usato quando i due compiti non sono strettamente correlati. Consiste nel prendere un modello pre-addestrato e addestrarlo ulteriormente su un dataset specifico del dominio.

La maggior parte degli LLM oggi ha ottime prestazioni generali ma spesso fallisce in problemi specifici orientati al compito. Il fine-tuning adatta il modello per ottenere risultati migliori su compiti specifici, rendendolo più efficace e versatile nelle applicazioni reali. Se vuoi sapere di più sul fine-tuning, consulta la nostra Guida introduttiva al fine-tuning degli LLM.

Immagine dell'autore. Visualizzazione del processo di fine-tuning.Visualizzazione del processo di fine-tuning. [DataCamp]

Applicazioni del transfer learning

Il transfer learning è una tecnica comune per affrontare molteplici compiti di data science, inclusi quelli di computer vision e elaborazione del linguaggio naturale.

Computer vision

La computer vision è uno dei campi in cui il transfer learning si è rivelato particolarmente fruttuoso. Le reti neurali sviluppate in questo ambito richiedono enormi quantità di dati per affrontare compiti come il rilevamento di oggetti e la classificazione di immagini.

Nella computer vision, gli strati iniziali delle reti neurali rilevano i bordi nelle immagini, mentre quelli intermedi identificano forme e sagome. Gli strati finali sono adattati a compiti specifici. Il transfer learning ci permette di creare nuovi modelli riaddestrando solo gli strati finali, mantenendo invariati pesi e bias degli strati iniziali e intermedi. Grazie al transfer learning, è possibile creare nuovi modelli che riaddestrano soltanto gli ultimi strati della rete, conservando pesi e bias dei primi e intermedi.

Oggi esistono numerose reti neurali pre-addestrate e pubbliche in ambito computer vision, ad esempio: 

  • Visual Geometry Group: VGG è un modello pre-addestrato per la classificazione di immagini, ampiamente usato come punto di partenza per molti compiti di image classification. 
  • You Only Look Once: YOLO è un modello pre-addestrato all'avanguardia per il rilevamento di oggetti, eccellente per velocità e capacità di rilevare un'ampia gamma di oggetti. 

Elaborazione del linguaggio naturale

L'NLP è un ramo dell'IA che si concentra sull'interazione tra computer e umani attraverso il linguaggio naturale. L'obiettivo è programmare i computer per elaborare e analizzare grandi quantità di dati in linguaggio naturale, in forma testuale o audio.

Il transfer learning svolge un ruolo cruciale nello sviluppo dei modelli di NLP. Consente di utilizzare modelli linguistici pre-addestrati, impiegati per la comprensione generale del linguaggio o la traduzione, per poi eseguirne il fine-tuning su problemi di NLP specifici, come l'analisi del sentiment o la traduzione automatica. Le applicazioni dell'NLP sono praticamente infinite e includono assistenti vocali e riconoscimento vocale.

Il transfer learning è alla base di alcuni dei modelli NLP più popolari, tra cui:

  • Bidirectional Encoder Representations from Transformers: BERT, creato dai ricercatori di Google nel 2018, è uno dei primi LLM basati sull'architettura transformer. È un modello pubblico e pre-addestrato che eccelle in molti problemi di NLP, tra cui language modeling, text classification e machine translation. 
  • Generative Pre-Trained Transformer: GPT, sviluppato da OpenAI, comprende una serie di potenti LLM in prima linea nella rivoluzione GenAI. Modelli GPT come GPT-3.5 e GPT-4 sono i modelli di base dietro il celeberrimo ChatGPT. OpenAI ha anche lanciato di recente GPT-4o, la versione più potente finora.

Best practice e sfide

Alla base, il transfer learning è essenzialmente un approccio progettuale per aumentare l'efficienza. Invece di addestrare modelli da zero—il che richiede enormi risorse, denaro e tempo nel caso dei modelli generativi di IA più avanzati—il transfer learning permette ai modelli di imparare più rapidamente ed efficacemente in nuovi compiti sfruttando la conoscenza acquisita in passato.

Il transfer learning dà il meglio quando sono disponibili pochi dati per addestrare un modello su un secondo compito. Usando la conoscenza di un modello pre-addestrato, può aiutare a prevenire l'overfitting e aumentare l'accuratezza complessiva. Tuttavia, non è infallibile e presenta limiti e potenziali insidie da affrontare con attenzione. Alcune delle sfide più comuni nel transfer learning sono:

  • Disallineamento di dominio: il transfer learning funziona meglio quando compito sorgente e compito target sono correlati. Se il nuovo compito è molto diverso, la conoscenza generalizzabile trasferita potrebbe non essere sufficiente per svolgerlo con precisione.
  • Scarsità di dati: è sempre necessaria una certa quantità di dati di addestramento. Se i dati sono estremamente limitati o di scarsa qualità, il modello rischia l'underfitting.
  • Overfitting: il transfer learning non è immune all'overfitting. Se il modello viene sottoposto a fine-tuning eccessivo su un compito, può apprendere caratteristiche troppo specifiche che non generalizzano bene a nuovi dati.
  • Complessità: talvolta il compito target è così complesso che il processo di fine-tuning può risultare impegnativo, costoso e dispendioso in termini di tempo. 

Conclusioni e risorse aggiuntive

Il transfer learning è un approccio progettuale cruciale per aumentare efficienza e potenziale delle reti neurali. Si può dire che l'attuale rivoluzione dell'IA non sarebbe stata possibile senza le numerose tecniche di transfer learning disponibili.

Se vuoi approfondire gli aspetti specifici del transfer learning, DataCamp è qui per aiutarti. Scopri i nostri materiali dedicati a LLM e reti neurali per iniziare oggi stesso.  


Javier Canales Luna's photo
Author
Javier Canales Luna
LinkedIn

Sono una data analyst freelance e collaboro con aziende e organizzazioni di tutto il mondo in progetti di data science. Sono anche un'insegnante di data science con oltre 2 anni di esperienza. Scrivo regolarmente articoli su temi legati alla data science in inglese e spagnolo, alcuni dei quali sono stati pubblicati su siti affermati come DataCamp, Towards Data Science e Analytics Vidhya. Come data scientist con un background in scienze politiche e diritto, il mio obiettivo è lavorare all'intersezione tra politiche pubbliche, diritto e tecnologia, sfruttando la forza delle idee per promuovere soluzioni e narrazioni innovative che ci aiutino ad affrontare le sfide urgenti, in primis la crisi climatica. Mi considero autodidatta, una persona in continuo apprendimento e una convinta sostenitrice dell'approccio multidisciplinare. Non è mai troppo tardi per imparare cose nuove.

Domande frequenti

Che cos'è il transfer learning?

Il transfer learning è una tecnica ampiamente utilizzata nel deep learning in cui un modello addestrato su un compito viene usato come punto di partenza per un modello su un secondo compito. Il transfer learning dà il meglio soprattutto quando il secondo compito è simile al primo, o quando ci sono pochi dati disponibili per il secondo compito.

Quali sono i vantaggi del transfer learning?

Il transfer learning è un'ottima tecnica di ottimizzazione, che può aumentare l'efficienza dell'addestramento e le prestazioni del modello, e ridurre i costi operativi.

Che cos'è il fine-tuning?

Il fine-tuning è un'implementazione del transfer learning e viene normalmente usato quando i due compiti non sono strettamente correlati. Il fine-tuning consiste nel prendere un modello pre-addestrato e addestrarlo ulteriormente su un dataset specifico del dominio.

Quali sono le applicazioni del transfer learning?

Il transfer learning è un metodo all'avanguardia per progettare reti neurali in domini come la computer vision e l'elaborazione del linguaggio naturale.

Argomenti
Intelligenza artificiale
Machine Learning

Impara con DataCamp

Corso

Introduzione al Deep Learning con PyTorch

4 ore
92.8K
Impara a creare la tua prima rete neurale, a regolare gli iperparametri e ad affrontare problemi di classificazione e regressione in PyTorch.
Vedi i dettagliInizia Il Corso

Crea il tuo account gratuito

Pratica and corso your progress.

Continua Con Google
Continuando, accetti i nostri Termini di utilizzo, la nostra Informativa sulla privacy e che i tuoi dati siano conservati negli Stati Uniti.
Mostra altro
Correlato

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

Mostra altro