Reti neurali artificiali e deep learning: Tecniche di Transfer Learning

Dai modelli pre-addestrati e le tecniche di fine-tuning, fino all’adattamento di dominio e alle nuove frontiere del few-shot e zero-shot learning: questa sezione di FAQ esplora i metodi più pratici per sfruttare al meglio i modelli foundation. Una guida chiara che unisce teoria e applicazioni reali, ideale per sviluppatori, ricercatori e professionisti che vogliono comprendere le strategie di adattamento, ridurre tempi e costi di training e applicare soluzioni AI scalabili ed efficienti.

Come utilizzare modelli pre-addestrati e fine-tuning?

I modelli pre-addestrati rappresentano un punto di partenza ottimale poiché hanno già appreso rappresentazioni generali da grandi dataset eterogenei, sia testuali che visivi. Grazie al pre-training su compiti di lingua o visione a larga scala, questi modelli incorporano conoscenze linguistiche e visuali di basso e alto livello che possono essere facilmente riutilizzate per nuove applicazioni.

Il fine-tuning consiste nell’adattare questi modelli a un compito specifico, aggiornando tutti o parte dei pesi originali con un nuovo dataset mirato. Spesso si aggiungono al termine del modello uno o più layer personalizzati (ad esempio un classificatore feed-forward per la classificazione, uno strato di regressione o un decoder seq2seq per generazione di testo), ottimizzandoli con un learning rate più basso rispetto al pre-training per preservare le conoscenze generali acquisite. In scenari con pochi dati target, il fine-tuning completo rischia di sovraddestrare il modello, quindi è comune adottare tecniche di discriminative fine-tuning, variando il learning rate per strato, oppure congelare parzialmente le prime componenti.

Questo approccio riduce i tempi di addestramento e i costi computazionali, poiché non si parte da zero, e migliora le prestazioni soprattutto in presenza di dataset limitati, permettendo di ottenere risultati di alto livello con poche decine di epoche di training sul task specifico.

Reti neurali: Tecniche di transfer learning

Cosa sono feature extractor e freezing layers?

Un feature extractor sfrutta un modello pre-addestrato per estrarre rappresentazioni intermedie dai dati di input, mantenendo invariati i pesi del backbone. Le feature ottenute – come mappe di attivazione o embeddings contestuali – possono essere utilizzate come input per un semplice classificatore o regressore addestrato ex novo. Questo approccio è particolarmente utile quando i dati target sono scarsi o appartengono a un dominio simile a quello del pre-training.

Il freezing dei layers consiste nel bloccare i gradienti all’interno di alcuni strati del modello durante il training, impedendo che vengano aggiornati. In genere si congelano i primi strati, che catturano pattern di basso livello (ad esempio bordi, texture, relazioni sintattiche iniziali), lasciando liberi i livelli più alti, che apprendono rappresentazioni più specifiche per il nuovo compito. Questa strategia preserva le conoscenze di base acquisite durante il pre-training e riduce il rischio di overfitting, consentendo al contempo di concentrare la capacità di apprendimento del modello sulle caratteristiche salienti del dataset target.

Quali metodi di domain adaptation esistono?

La domain adaptation affronta le differenze di distribuzione tra un dominio sorgente, su cui il modello è stato addestrato, e un dominio target, con dati con caratteristiche diverse. Tra le principali tecniche:

Adversarial domain adaptation sfrutta un discriminatore, simile a quelli delle GAN, che apprende a distinguere le feature estratte dal dominio sorgente da quelle del target. L’estrattore di feature viene allenato ad "ingannare" il discriminatore, producendo rappresentazioni che risultino indistinguibili tra i due domini. In questo modo il modello impara feature invariantiche supportano buone prestazioni anche nel dominio target.

Discrepancy-based methods minimizzano esplicitamente una misura di distanza tra le distribuzioni di feature, come la Maximum Mean Discrepancy (MMD) o la distanza di Wasserstein. Questo obiettivo viene aggiunto come termine di regolarizzazione durante l’ottimizzazione, inducendo l’estrattore a generare feature con distribuzioni simili per sorgente e target.

Self-training o pseudo-labeling utilizza il modello pre-addestrato per etichettare i dati non annotati del dominio target, selezionando predizioni ad alta confidenza come pseudo-etichette. Questi esempi vengono quindi inclusi nel training set, permettendo un addestramento iterativo che migliora le performance sul nuovo dominio senza richiedere annotazioni manuali.

Spesso queste tecniche vengono combinate in pipeline ibride: ad esempio si può prima applicare un adattamento adversariale e poi arricchire il training set con pseudo-labels per affinare ulteriormente le prestazioni.

Quando usare few-shot e zero-shot learning con modelli foundation?

I modelli foundation come GPT, CLIP e Flamingo sono stati pre-addestrati su enormi dataset multimodali e possiedono un’ampia capacità di generalizzazione. Queste qualità li rendono ideali per scenari in cui i dati target sono scarsi o costosi da ottenere.

Il few-shot learning si applica quando si dispone di pochi esempi etichettati per il compito target. Il modello riceve in input uno o più esempi formattati come prompt (esempi di domanda-risposta, coppie testo-etichetta, immagini con didascalie) e genera la risposta corretta per nuovi casi. In alternativa, si può optare per un leggero fine-tuning dei pesi, mantenendo inalterate le parti più profonde del modello e aggiornando solo gli strati finali o parametri specifici.

Il zero-shot learning si utilizza quando non si hanno affatto dati annotati per il task. Qui il modello si affida esclusivamente alle capacità acquisite durante il pre-training e alla comprensione del linguaggio naturale: il compito viene descritto all’interno del prompt con istruzioni testuali dettagliate o con esempi generali, e il modello estende la sua conoscenza pregressa per svolgere il task. Questo approccio è particolarmente potente per classificazione zero-shot con CLIP, per generazione zero-shot di testo con GPT o per comprensione zero-shot di contenuti visivi e testuali combinati con Flamingo.

Entrambi gli approcci riducono drasticamente la necessità di grandi dataset specifici e accelerano la prototipazione di nuovi task, rendendo possibile l’adozione di AI avanzate anche in contesti industriali e di ricerca con risorse limitate.

Faq

Qual è il vantaggio principale dei modelli pre-addestrati?

Permettono di riutilizzare conoscenze acquisite su dataset enormi, riducendo tempi e costi di addestramento e migliorando le prestazioni anche con pochi dati specifici.

Quando conviene usare il fine-tuning completo?

Quando si dispone di un dataset sufficientemente ampio e diverso dal dominio del pre-training, così da adattare tutti i pesi del modello al nuovo compito.

Che differenza c’è tra feature extractor e fine-tuning?

Il feature extractor congela il backbone e usa le rappresentazioni per un nuovo classificatore, mentre il fine-tuning aggiorna (in parte o completamente) i pesi del modello pre-addestrato.

Perché congelare alcuni layer durante l’addestramento?

Congelare i layer iniziali preserva feature generiche già apprese e riduce l’overfitting, lasciando che i layer superiori si adattino al compito specifico.

Qual è la differenza tra adversarial e discrepancy-based domain adaptation?

L’approccio adversarial usa un discriminatore per rendere indistinguibili le feature tra sorgente e target, mentre il discrepancy-based riduce direttamente una distanza statistica tra le distribuzioni.

Cos’è il self-training nella domain adaptation?

È una tecnica che utilizza pseudo-label generate dal modello stesso sui dati target non annotati, includendole progressivamente nel training per migliorare la generalizzazione.

In quali scenari il few-shot learning è più utile?

Quando si hanno pochi esempi etichettati disponibili, ad esempio in domini rari o costosi da annotare, come la medicina o l’analisi legale.

Quando è preferibile il zero-shot learning?

Quando non si hanno esempi etichettati e il modello deve generalizzare direttamente da istruzioni testuali o descrizioni del compito, sfruttando la conoscenza appresa nel pre-training.

Quali modelli foundation sono particolarmente adatti al zero-shot?

CLIP per la classificazione immagine-testo, GPT per la generazione di testo condizionata da prompt e Flamingo per scenari multimodali con input misti immagine-testo.

Qual è il beneficio principale di few-shot e zero-shot per le aziende?

Permettono di sviluppare rapidamente prototipi e applicazioni AI senza costosi dataset annotati, accelerando il time-to-market e riducendo i costi di sviluppo.


Author
Nicolò Caiti
I have made MarTech my profession. I specialize in artificial intelligence applied to digital marketing. In this blog, I analyze how AI is transforming the industry: improving web performance, optimizing digital strategies, and speeding up everyone’s work. With years of experience in marketing automation and managing advanced customer journeys, I share practical insights, case studies, and best practices to help everyone make the most of AI’s potential in their work. I hope you find the answers you’re looking for!