Active prompting: l’active learning applicato al prompt engineering

da | Lug 18, 2023

La tecnica dell’active prompting è stata proposta di recente per incrementare l’efficacia di determinati prompt, nei casi in cui ai LLMs si richiede di portare a termine compiti molto specifici.

L’active prompting è una nuova tecnica che può contribuire a rendere più precisi gli output dei LLMs (large language models), quando l’esigenza riguarda la generazione di risposte molto puntuali e specifiche. Sappiamo che, nell’impiego dei LLMs, la formulazione di prompt che risultino adeguati rispetto alla specificità dei compiti di volta in volta assegnati è senza dubbio uno dei principali fattori critici di successo.

In un precedente post abbiamo presentato un approccio, denominato chain-of-thought (CoT), che migliora le prestazioni dei LLMs in misura significativa e che può quindi essere utile quando si tratta di lavorare con sequenze di domande e risposte articolate, per risolvere problemi complessi. Il CoT prevede l’impiego di prompt basati su esempi. Tuttavia, le attuali tecniche di CoT sfruttano una collezione predeterminata di istanze annotate, le quali potrebbero non essere – almeno in talune situazioni – gli esempi più adatti all’esecuzione dei diversi compiti.

Ecco perché può essere utile integrare tale approccio con quello dell’active prompting. Quest’ultimo prevede l’utilizzo di esempi di prompt specifici per compito, annotati con ragionamenti di CoT, in modo da adattare gli LLMs ai diversi contesti. Per ottenere questo risultato, si affronta la sfida fondamentale di determinare le domande più importanti e utili da annotare, partendo da un pool di domande specifiche per il compito.

Un approccio ispirato all’active learning

Come funziona l’active prompting, in pratica? La tecnica si ispira alle idee dell’apprendimento attivo (active learning) basato sull’incertezza. Ricordiamo che l’active learning è un modello particolare di machine learning supervisionato, utile nei casi in cui l’annotazione manuale dei dati nella fase di pre-elaborazione risulta troppo costosa. Per risolvere il problema si definisce un criterio di priorità, in modo da etichettare prima di tutto i dati che hanno l’impatto più alto sul modello. Nell’active learning l’algoritmo può interrogare in modo iterativo un utente o un’altra fonte di informazioni per etichettare nuovi punti dati, fino a ottenere gli output desiderati. All’interno di questo schema il modello matematico espresso dall’algoritmo si definisce talvolta apprendista, mentre la fonte è detta maestro od oracolo).

Un processo in quattro passaggi

L’active prompting segue la stessa filosofia. Per determinare i migliori prompt per un compito specifico, esso prevede l’esecuzione di passaggi, secondo lo schema di seguito esposto.

  • Primo passaggio: dato un set di dati in ingresso, il modello è incaricato di rispondere alle domande un certo numero di volte. Si generano dunque k possibili risposte.
  • Secondo passaggio: sulla base delle risposte generate nella fase precedente, si definisce una misura di incertezza. Questa è calcolata in relazione al disaccordo e all’entropia di tutte le risposte prevedibili. Detto in altri termini, quanto maggiori sono il disaccordo e la distanza fra le possibili risposte, tanto più alto è il livello di incertezza.
  • Terzo passaggio: le domande più incerte sono selezionate per l’annotazione da parte degli esseri umani.
  • Quarto passaggio: nuovi campioni annotati sono aggiunti per dedurre ogni domanda, utilizzando lil metodo standard della CoT.

I risultati dimostrano la superiorità del metodo proposto, che raggiunge lo stato dell’arte in otto compiti di ragionamento complessi. Ulteriori analisi che coinvolgono diverse metriche di incertezza, le dimensioni del pool, l’apprendimento a zero colpi (nel quale il modello riesce a riconoscere alcune classi, anche se non è stato addestrato per questo) e la relazione tra accuratezza e incertezza forniscono prove convincenti dell’efficacia dell’active prompting.

Per approfondire:

Shizhe Diao et al., Active Prompting with Chain-of-Thought for Large Language Models, 23 maggio 2023 (ultima revision): https://arxiv.org/abs/2302.12246.

Claudio Gentile et. Al., Fast Rates in Pool-Based Batch Active Learning, 13 giugno 2022 (ultima revisione): https://arxiv.org/abs/2202.05448.

Ana Solaguren-Beascoa, Active Learning in Machine Learning, in “Towards Data Science”, 3 aprile 2022: https://towardsdatascience.com/active-learning-in-machine-learning-525e61be16e5.

Paolo Costa
Paolo Costa
Socio fondatore e Direttore Marketing di Spindox. Insegno Comunicazione Digitale e Multimediale all’Università di Pavia. Da 15 anni mi occupo di cultura digitale e tecnologia. Ho fondato l’associazione culturale Twitteratura, che promuove l’uso di Twitter come strumento di lettura attraverso la riscrittura.

Potrebbe piacerti anche

Cybersecurity, arriva la NIS 2: cosa cambia per le infrastrutture critiche e come Spindox aiuta i suoi clienti

Cybersecurity, arriva la NIS 2: cosa cambia per le infrastrutture critiche e come Spindox aiuta i suoi clienti

Dal 17 ottobre 2024 la NIS 2 è pienamente vigente. La direttiva introduce nuove regole per la sicurezza informatica delle infrastrutture critiche e dei servizi essenziali in Europa. Le aziende nei settori energetico, sanitario, delle telecomunicazioni e altri sono chiamate ad adeguarsi a standard più elevati. Chi è impattato, i rischi di non conformità e il ruolo di Spindox nell’aiutare i clienti a migliorare la propria sicurezza.