Prima di addentrarci nei meandri di Nucleus è opportuno definire il data sampling nella sua accezione generica, proprio perché Nucleus fa del campionamento dei dati la propria ragione d’essere.
Il data sampling è una tecnica di rilevazione statistica destinata a ottenere dati da un campione rappresentativo. In parole più semplici, è un metodo che agisce analizzando sottoinsiemi di dati per potere trovare informazioni significative in un set di dati più grande.
Le tecniche di data sampling sono impiegate anche nell’elaborazione del linguaggio naturale per la generazione di testo, parliamo quindi delle AI generative nella loro capacità di generare dei testi.
Cos’è Nucleus e come funziona
Il sampling Nucleus è un metodo usato per la generazione di testo tramite Intelligenza artificiale garantendo l’equilibrio tra casualità e prevedibilità delle parole selezionate per comporre una frase.
Può essere considerato un’evoluzione delle tecniche di sampling più comuni, dedite alla scelta delle parole in base alla loro probabilità di occorrenza. Nel caso di Nucleus, le parole vengono selezionate in un sottoinsieme di termini più probabili al fine di creare testo che sia nel medesimo tempo coerente e diversificato. Il sottoinsieme è considerato, appunto “il nucleo” (Nucleus).
È spesso correlato all’emisfero dei Modelli linguistici basati su trasformatore come, per esempio, il recente GPT-4 di OpenAi.
Architettura dei modelli di intelligenza artificiale con Nucleus
L’architettura dei modelli AI richiede, come detto, un modello linguistico basato su trasformatore che genera del testo un token alla volta laddove, per “token” si intende un insieme di “pezzi di parole”. Per dare una dimensione comprensibile, nel testo in lingua inglese un token corrisponde a circa 4 caratteri.
Riducendo ai minimi termini l’architettura dei modelli AI con Nucleus, si ottiene:
- la generazione di un token: il modello usa una sequenza input di token e prevede il token successivo, basato sulla distribuzione probabilistica su tutto il vocabolario di cui dispone
- sampling Nucleus: al posto di scegliere il token più probabile nell’intero vocabolario (tipico del greedy sampling), il modello prende in analisi soltanto un sottoinsieme del vocabolario nel quale ci sono i token più probabili
- selezione del token successivo: Nucleus campiona (fa il sampling) un token e questo conferisce al testo un elemento di casualità che contribuisce a restituire output meno deterministico (ossia più diversificato)
- aggiornamento: il token selezionato viene aggiunto alla sequenza di parole e il procedimento si ripete
Un’architettura che può essere visualizzata usando alcuni tool, tra i quali Visualkeras, un package Python in grado di restituire una visualizzazione dell’architettura di una rete neurale e anche di Nucleus, se la struttura del modello non è troppo complessa.
Il ruolo di Nucleus nella decodifica delle risposte
Come già scritto, il ruolo del campionamento attuato da Nucleus nella decodifica delle risposte è quello di bilanciare la diversità e la coerenza nel testo generato.
Circoscrivendo l’insieme delle parole elegibili a un sottoinsieme che contiene quelle più probabili, Nucleus fa in modo che il modello non generi parole poco puntuali (o, meglio, molto improbabili) nel contesto. A ciò – che riguarda la coerenza – Nucleus aggiunge la capacità di fare sampling (di campionare) il sottoinsieme al posto di scegliere la parola più probabile, gestendo anche l’aspetto della casualità in nome della diversità del testo restituito.
Diversità e coerenza sono quindi l’asse attorno al quale Nucleus lavora campionando sottoinsiemi di dati.
Vantaggi di utilizzare Nucleus nella generazione di testi
L’uso di Nucleus porta con sé diversi vantaggi. I principali, oltre all’equilibrio tra la coerenza e la diversità del testo, sono:
- maggiore aderenza: la fattualità risulta maggiorata, così come rende possibile mantenere un’elevata qualità dell’output
- strategia di decodifica senza uguali: lo sostiene uno studio condotto da due atenei (Washington e Cape Town) secondo il quale Nucleus non conosce rivali nella generazione di testi lunghi e coerenti
- il sottoinsieme di parole preso in esame per scegliere la parola successiva si adatta in modo dinamico alla distribuzione di probabilità e consente così al modello di essere più aderente al contesto.
Tutto ciò contribuisce a fare di Nucleus una valida tecnica per la generazione di testo mediante AI.
Controllo della generazione delle risposte con il parametro “p” di Nucleus
Il controllo della diversità e della qualità delle risposte generate dal modello AI è demandato al parametro “p” che, di fatto, rappresenta una soglia di probabilità.
A valore di “p” più alto corrispondono risposte più diversificate (il sampling avviene in un insieme più ampio di parole) mentre, a valore di “p” più basso, coincidono riposte più prevedibili (il “nucleo” è più piccolo).
Il parametro “p” nel sampling controlla il compromesso tra diversità e coerenza e, in definitiva, la qualità del testo generato. Rappresenta la soglia di probabilità al di là della quale vengono considerate le parole.
Limitazioni e sfide nell’implementazione di Nucleus
Implementare il sampling Nucleus non è esente da limiti. Il primo è costituito proprio dal parametro “p”, la cui calibrazione può non essere immediata.
A seguire, in ordine di importanza:
- l’eccessiva fiducia nei modelli: uno studio recente ha dimostrato come Nucleus possono assegnare a determinate parole una probabilità più elevata rispetto ad altre, inficiando così sul risultato restituito
- l’adattamento dinamico: è una delle prerogative di Nucleus e, parallelamente, è anche un elemento difficile da controllare e può riverberarsi negativamente sull’output
- contesto linguistico: l’appropriatezza di una parola dipende dal contesto linguistico e dalle espressioni gergali. Riuscire a verificarla può essere complesso
Inoltre, Nucleus è solo una delle tecniche di sampling disponibili e può non essere immediato quando è conveniente farvi ricorso e quando non lo è.
Applicazioni pratiche di Nucleus nell’intelligenza artificiale
Nucleus non viene usato solo nei modelli linguistici basati su trasformatore ma è utilizzabile anche per l’analisi dei dati.
Ha una sua collocazione anche nel comparto delle chatbot e dell’ assistenza virtuale estesa anche alla scrittura di contenuti, al fine di creare messaggi di diversa natura, più contestualizzati e quindi più efficaci.
C’è poi il comparto dell’apprendimento e della sperimentazione. Ricorrere a Nucleus coincide con la possibilità di usare diversi livelli di casualità nella generazione del testo e ciò a vantaggio della comprensione del comportamento dei modelli linguistici.
Sviluppi futuri e potenziali miglioramenti di Nucleus
I miglioramenti sono afferenti alle aree critiche evidenziate nel paragrafo precedente. Gli sviluppi futuri del sampling Nucleus sono persino più interessanti perché entrano in altri domini come, per esempio, la modellazione dei dati, la creazione di contenuti creativi e financo la generazione di codice.
C’è poi l’annosa questione della comprensione (almeno teorica) di un testo che può essere utile – tra le altre cose – a capire con maggiore chiarezza come il parametro “p” influisca sulla generazione di testo.