Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

Nucleus Sampling

Il campionamento top-p (nucleus) estrae ogni token dal più piccolo insieme che copre la probabilità p, adattando il pool alla sicurezza del modello, a differenza di top-k.

Il campionamento del nucleo, detto anche campionamento top-p, è un metodo di decodifica che sceglie ogni token successivo dal più piccolo insieme di candidati la cui probabilità complessiva raggiunge una soglia p, quindi esegue il campionamento da quell’insieme. Ari Holtzman e i colleghi dell’Università di Washington e dell’Allen Institute for AI lo introdussero nel 2019 in The Curious Case of Neural Text Degeneration. Lavorando con GPT-2 Large, mostrarono che la decodifica greedy e la beam search fanno cadere i modelli linguistici in cicli banali e ripetitivi, mentre il campionamento dalla distribuzione completa produce testi incoerenti; mostrarono inoltre che tagliare la coda inaffidabile della distribuzione generava testi la cui perplessità e varietà erano le più vicine alla scrittura umana. Oggi top-p è un’impostazione standard nelle API di generazione del testo per quasi tutti i modelli linguistici di grandi dimensioni.

Come si sceglie il nucleus#

A ogni passaggio, il modello linguistico assegna un punteggio a ogni token del suo vocabolario e softmax trasforma quei punteggi in probabilità. Il campionamento del nucleo ordina quindi i token dal più al meno probabile, somma le loro probabilità in quell’ordine finché il totale progressivo raggiunge p, scarta tutto ciò che non rientra nell’insieme, rinormalizza i token rimanenti affinché la somma sia uno e ne estrae uno.

Considera quattro candidati con probabilità 0,50, 0,25, 0,15 e 0,10 e imposta p a 0,8. I primi due totalizzano 0,75, meno della soglia, quindi si aggiunge il terzo e il nucleus raggiunge 0,90. Il quarto token viene eliminato e i tre rimanenti vengono selezionati con probabilità di circa 0,56, 0,28 e 0,17 dopo la rinormalizzazione.

La caratteristica distintiva è che il nucleus si ridimensiona a ogni passaggio. Dopo "La capitale della Francia è", un token concentra quasi tutta la probabilità e il nucleus si restringe a una sola parola. All'inizio di una storia, la probabilità si distribuisce tra centinaia di parole plausibili e il nucleus si allarga per includerle. Un numero fisso di candidati non può adattarsi in questo modo.

La stessa procedura in PyTorch, per un passaggio di decodifica su un vocabolario di sei token:

import torch

# Probabilità dei token successivi per un vocabolario di 6 token
probs = torch.tensor([0.10, 0.40, 0.04, 0.25, 0.06, 0.15])
top_p = 0.75

# Ordina, poi conserva i token finché il totale cumulativo raggiunge top_p
sorted_probs, order = probs.sort(descending=True)
cumulative = sorted_probs.cumsum(dim=0)
keep = cumulative - sorted_probs < top_p  # il token che supera top_p viene mantenuto

# Rinormalizza il nucleus ed estrai l'ID del token successivo
nucleus = sorted_probs * keep
next_token = order[torch.multinomial(nucleus / nucleus.sum(), num_samples=1)]
print(order[keep].tolist(), next_token.item())

L'output elenca il nucleus, composto dai token con ID 1, 3 e 5, che insieme rappresentano lo 0,80 della probabilità, seguito dall'ID estratto. In questo passaggio non è possibile scegliere i token 0, 2 e 4; eseguendo di nuovo lo script, la selezione avviene tra i tre rimanenti, in proporzione alle rispettive probabilità.

Confronto tra top-p, decodifica greedy, top-k e temperatura#

  • Decodifica greedy: seleziona sempre il token singolo più probabile. È deterministica e funziona per brevi risposte fattuali, ma le sequenze lunghe tendono a ripetersi.
  • Campionamento top-k: conserva un numero fisso di candidati. Con k impostato a 50, anche in un passaggio sicuro il campionamento avviene tra 50 token, inclusi quelli senza senso; in un passaggio incerto, invece, può escludere opzioni ragionevoli. Top-p sostituisce il numero fisso con una quota fissa di probabilità.
  • Temperatura: divide i punteggi del modello prima di applicare softmax. I valori inferiori a 1 rendono la distribuzione più concentrata sulle scelte principali, mentre quelli superiori a 1 la appiattiscono. Poiché top-p viene applicato dopo la temperatura, aumentare la temperatura allarga anche il nucleus.
  • Il campionamento min-p mantiene ogni token la cui probabilità è almeno una frazione prestabilita della probabilità del token più probabile, perciò anche la soglia segue il livello di confidenza del modello. Hugging Face Transformers, vLLM e llama.cpp lo offrono insieme a top-p.

Poiché temperatura e top-p controllano entrambe la casualità, il consiglio standard è di modificare l’una o l’altro, anziché entrambi contemporaneamente. Molti motori di inferenza consentono anche di usare insieme top-k e top-p, con top-k che funge da limite massimo rigido al numero di candidati.

Scegliere un valore top-p#

Un valore top-p pari a 1.0 disattiva il filtro e i valori predefiniti più comuni sono compresi tra 0.9 e 1.0. Top-p rimodella soltanto le probabilità proprie del modello, quindi l’accuratezza fattuale dipende dal radicamento del prompt, per esempio tramite la generazione aumentata dal recupero, che riduce le allucinazioni fornendo al modello i fatti necessari. Valori più alti aggiungono varietà per il brainstorming, i dialoghi dei chatbot e la scrittura creativa. Valori più bassi, come 0.5, rendono i risultati più prevedibili e ripetitivi, il che è adatto all’estrazione dei dati, ai prompt di classificazione e al codice; la decodifica vincolata si spinge oltre, mascherando ogni token che violerebbe un formato obbligatorio.

La stessa impostazione regola la generazione linguistica nelle pipeline di visione. Quando un rilevamento di Ultralytics YOLO26 attiva una descrizione della scena generata da un modello visione-linguaggio, l’interfaccia LLM di Ultralytics passa direttamente all’API del fornitore gli argomenti della richiesta, come top_p, così un valore basso, ad esempio 0.5, mantiene simili le descrizioni di fotogrammi simili.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning