Temperatura (Apprendimento Automatico): differenze tra le versioni
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 1: | Riga 1: | ||
Nome: [[Nome::Temperatura]] | |||
Nome inglese: [NomeInglese::Temperature]] | |||
La temperatura è un parametro nell'ambito dell'apprendimento automatico, specialmente nei modelli sequenziali come le [[Recurrent Neural Network (RNN)|RNN]] e i [[transformer]]. Questo parametro è un numero strettamente maggiore di zero e normalmente inferiore a 2 o 3, con impatti diretti sulla selezione del token successivo durante il processo di generazione del testo. | La temperatura è un parametro nell'ambito dell'apprendimento automatico, specialmente nei modelli sequenziali come le [[Recurrent Neural Network (RNN)|RNN]] e i [[transformer]]. Questo parametro è un numero strettamente maggiore di zero e normalmente inferiore a 2 o 3, con impatti diretti sulla selezione del token successivo durante il processo di generazione del testo. | ||
Riga 8: | Riga 15: | ||
[[Category:concetto]] | [[Category:concetto]] | ||
__SHOWFACTBOX__ |
Versione delle 13:00, 11 apr 2024
Nome: Temperatura
Nome inglese: [NomeInglese::Temperature]]
La temperatura è un parametro nell'ambito dell'apprendimento automatico, specialmente nei modelli sequenziali come le RNN e i transformer. Questo parametro è un numero strettamente maggiore di zero e normalmente inferiore a 2 o 3, con impatti diretti sulla selezione del token successivo durante il processo di generazione del testo.
La temperatura è utilizzata per modulare la distribuzione di probabilità dei token generati dai modelli. Invece di optare per una decodifica Greedy, che seleziona sempre il token con la massima probabilità calcolata tramite log-likelihood, l'introduzione della temperatura agisce sul risultato della decodifica a campionamento: questo approccio estrae un token casuale basandosi sulla distribuzione di probabilità (modificata dalla temperatura) dei possibili token successivi.
Durante il processo di generazione, la temperatura agisce sui logit, i quali sono i valori emessi dall'ultimo layer totalmente connesso del modello prima dell'applicazione della funzione softmax per ottenere le probabilità. La modifica consiste nel dividere i logit per il valore della temperatura prima di calcolare la distribuzione di probabilità finale. Un valore di temperatura più alto genera una distribuzione più uniforme, aumentando così la varietà e la casualità nella scelta dei token. Al contrario, una temperatura più bassa rende la distribuzione più "affilata", favorendo la scelta dei token con probabilità più alta e riducendo la varietà, e dando più spesso il token che "ci si aspetta di più" avere nella generazione autoregressiva.
In pratica, l'uso della temperatura permette agli sviluppatori e ai ricercatori di bilanciare tra diversità e precisione nelle generazioni testuali dei modelli. Una temperatura vicina a 1 tende a mantenere un buon equilibrio, mentre valori superiori o inferiori possono essere sperimentati per ottenere risultati più creativi o più conservativi, rispettivamente.